Apache Tomcat 1.7 Wie übergebe ich zusätzliche Parameter an JAAS?

9

Laut Apache Tomcat 1.7-Dokumentation:

  

Schreiben Sie Ihre eigenen LoginModule-, Benutzer- und Rollenklassen basierend auf JAAS (siehe das JAAS Authentication Tutorial und das JAAS Login Module Entwicklerhandbuch), die vom JAAS Login Context (javax.security.auth.login.LoginContext) verwaltet werden Ihr LoginModule, beachten Sie, dass der eingebaute CallbackHandler von JAASRealm nur den NameCallback und PasswordCallback zur Zeit erkennt.

Es unterstützt nur NameCallback und PasswordCallback. Ich möchte zusätzliche Parameter an das JAAS-Login-Modul übergeben, konnte aber aufgrund dieser Einschränkung nicht.

Wie gebe ich zusätzliche Parameter an das JAAS Login Modul?

    
yapkm01 09.08.2015, 12:58
quelle

3 Antworten

1

Schreiben Sie Ihren eigenen CallbackHandler. Weitere Informationen finden Sie unter Ссылка

Beispielsweise könnte ein MyCallbackHandler ein zusätzliches TextOutputCallback

unterstützen %Vor%     
Alin Pandichi 09.08.2015 13:04
quelle
1

Der übliche Weg, dies zu erreichen, besteht darin, Ihre Gruppen contractor und customer auf Rollen zuzuordnen.

  • Laden Sie eine Kopie der Servlet 3.0-Spezifikation herunter (Tomcat 7.0 ist eine Implementierung davon) und lesen Sie Im Kapitel Sicherheit erfahren Sie, wie viele Optionen der Servlet-Container für authentifizierende Benutzer basierend auf Benutzername und Passwort und Autorisierung basierend auf ihrer Rolle bietet .
  • Befolgen Sie die Anweisungen in der Tomcat-Dokumentation zum Konfigurieren eines JNDIRealm . Dies bietet eine Möglichkeit, Tomcat so zu konfigurieren, dass ein LDAP-Server für Authentifizierung (Benutzername / Passwort) und Autorisierung (Rollenprüfung) verwendet wird.

Die Verwendung des spezifikationsbasierten Ansatzes hat den zusätzlichen Vorteil, dass Ihre Lösung portierbar ist, sollten Sie sich in Zukunft für eine vollständige Java EE-Lösung (wie JBossAS / WildFly, Glassfish, WebSphere usw.) entscheiden.

Außerdem können Sie, wenn Sie zu Tomcat 8 migrieren können, auf die zusätzlichen Authentifizierungsfunktionen zugreifen, die in der Servlet 3.1-Spezifikation hinzugefügt wurden.

    
Steve C 17.08.2015 13:44
quelle
-4

Einfachster Weg: Alle Parameter zu einer Zeichenkette verbinden und später aufteilen

    
sibnick 09.08.2015 15:05
quelle

Tags und Links