# JAAS auf Tomcat - Überblick?



## Oskar (4. Okt 2005)

Hallo

zwar hab ich mich mittlerweile recht gut in JAAS eingelesen und viel gegoogelt was dies betrifft, doch fehlt mir irgendwie noch der große Überblick wo ich was machen muss.

Ich möchte folgendes realisieren: 
Login des Benutzers für definierte Seiten mittels FORM Anmeldung und der Autentifizierung gegen eine MySQL Datenbank.

Was ich verstehe:
1.) Konfiguration des Realms in der server.xml für meinen Context. Die hab ich auch erstellt und er meldet sich erfolgreich auf der MySQL an.

```
<Context path="/Run" reloadable="true" docBase="D:\tomcat5_5\webapps\RunFestival">	
		
		<Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
     			 driverName="com.mysql.jdbc.Driver"
   			 connectionURL="jdbc:mysql://localhost:3306/runfestival"
			 connectionName="tomcat_pw"
  			 connectionPassword="tomcat_pw"
      		 userTable="user_pw" 
			 userNameCol="username" 
			 userCredCol="password"
   			 userRoleTable="user_in_role" 
			 roleNameCol="role"/>
	 </Context>
```

2.) Definition eines security-constraints und der Login FORM in der web.xml für bestimmte teile der Web-applikation

```
<login-config>
   		<auth-method>FORM</auth-method>
   		<form-login-config>
   			<form-login-page>/intern/login.jsp</form-login-page>
   			<form-error-page>/intern/login_err.jsp</form-error-page>
   		</form-login-config>  		
   	</login-config>
   	<security-constraint>
   		<web-resource-collection>
   			<web-resource-name>secret</web-resource-name>
   			<url-pattern>/secret/*</url-pattern>
   		</web-resource-collection>
   	</security-constraint>
```

Soweit so gut doch jetzt meine Fragezeichen: Wie bekomme ich das jetzt zusammen? Soll heißen:

An welcher Stelle muss ich jetzt LoginContext ctx.login() aufrufen um die Tomcat Standard JAAS zu verwenden die ich configuriert habe? In einem Servlet, das von der Login-Page gerufen wird?
Wie sieht so eine Initialisierung des LoginContext aus?

Kurz und gut: gibt es ein Tutorial das das ganze beispielhaft darstellt, damit ich mir das mal ansehen kann?

Danke und Gruß
Oskar


----------



## Gumble (5. Okt 2005)

in einem Filter?
-> http://publicobject.com/2005/04/logging-in-to-web-app-using-jaas-on.html


----------



## Oskar (21. Okt 2005)

gut dann versuche ich das mal mit detaiierten Fragen bis ich den Schmu zusammen habe:

Frage 1:
in meiner Implementierung zum Login muss ich ein 

```
LoginContext ctx = LoginContext("configName") //es geht um configName
```

machen. Und nun die Frage: Woher nehme ich den Namen 'configName' der für meine Realm Konfiguration in der server.xml gilt?

Ich liege doch richtig, dass dieses Mapping nötig ist damit die Laufzeit weiss für welche Implementierung von LoginContext instantiiert werden muss, oder nicht?


----------

