2015-02-11 13 views
5

Apache ActiveMQ erstellt eine sichere Verbindung mit Benutzername und Passwort.Verwenden Sie Benutzername und Passwort für ActiveMQ JMS-Verbindung

InitialContext initCtx = new InitialContext(); 
javax.jms.ConnectionFactory qcf = (javax.jms.ConnectionFactory) initCtx.lookup(factoryName); 
Connection connection = qcf.createConnection(userName, password); 

Wo kann ich diese Anmeldeinformationen finden. Sind Benutzername und Passwort in einer ActiveMQ-Konfigurationsdatei konfiguriert?

Antwort

-1

Haben Sie versucht, ohne Angabe von Benutzername & Passwort zu verbinden, sollten Sie in der Lage sein, dies zu tun.

ConnectionFactory connectionFactoryProd = new ActiveMQConnectionFactory("failover://tcp://yourServerWhereActiveMqIs:61616"); 
Connection connectionProd = connectionFactoryProd.createConnection(); 
connectionProd.start(); 
+0

Ja, ich habe es versucht. Es verbindet, aber ich möchte den Benutzernamen und das Passwort dafür festlegen. –

+0

Derzeit nimmt es jeden Benutzernamen und Passwort und verbindet. Aber ich möchte, dass es sich richtig verhält, wenn falsche Anmeldeinformationen gegeben werden, dann sollte es keine Verbindung herstellen. –

+0

Sorry, aber das beantwortet die Frage eindeutig nicht, oder? – hschne

5

Um Ihre Frage zu beantworten: In der Tat sind sie, und der Name der Datei, in der die Anmeldeinformationen definiert ist activemq.xml. Es kann im conf Verzeichnis Ihrer ActiveMQ Installation gefunden werden, z. C:\Program Files (x86)\apache-activemq-5.10.0\conf.

nun auf this site gibt es ziemlich detaillierte Anweisungen, wie ActiveMQ konfigurieren einfache Authentifizierung oder JAAS zu verwenden, aber ich werde Ihnen einen schnellen Überblick geben und ein paar Tipps:

  • alle folgenden Zeug in den Abschnitt plugins der oben genannten XML-Datei eingefügt werden.

  • Verwenden Sie SimpleAuthentication, um Benutzer einfach zu Gruppen hinzuzufügen, z. welche Gruppen haben Zugriff zu der Warteschlange und Themen

    <simpleAuthenticationPlugin anonymousAccessAllowed="true"> 
         <users> 
          <authenticationUser username="system" password="system" groups="users,admins"/> 
          <authenticationUser username="admin" password="admin" groups="users,admins"/> 
          <authenticationUser username="user" password="user" groups="users"/> 
          <authenticationUser username="guest" password="guest" groups="guests"/> 
         </users> 
        </simpleAuthenticationPlugin> 
    
  • Verwenden AuthorizationPlugin zu konfigurieren.

  • Wenn Sie planen, SimpleAuthentication zu verwenden, stellen Sie sicher, dass Sie in Ihren aktiven Plugins keine <jaasAuthenticationPlugin configuration="activemq-domain" /> haben. Nur für den Fall, dass Sie planen, dieses eine Sample von der Seite, die ich zuvor erwähnt habe, zu kopieren.

  • Sie möchten möglicherweise den anonymen Zugriff aktivieren. Fügen Sie dazu Ihrem SimpleAuthenticatoinPlugin-Knoten das entsprechende Attribut hinzu. Danach können Sie eine Verbindung zu Warteschlangen herstellen, ohne beim Erstellen einer Verbindung Benutzername und Kennwort anzugeben.

Verwandte Themen