# JSP Tomcat Login



## lexz (29. Jul 2008)

Hey,
also, wo fang ich an?

Ich arbeite mit der NetBeans IDE 6.1 Entwicklungsumgebung und mit dem Server Tomcat 6.0.16.

Ich habe eine Index Seite, wo man zum Login aufgefordert wird. Die index.jsp ist eine Form action die den Benutzernamen und Passwort an auth.jsp weiterleitet. 
Beim auth.jsp wird ein Java Programm Login.java aufgerufen.
In der Login.java wird eine Datenbankverbindung hergestellt, dort wird der Username und das Passwort überprüft, bei Richtigkeit wird die Gruppe nachgeschaut. Also ob der Username zu den Admins, Managern oder Usern gehört.
Dieser Wert wird an auth.jsp zurückgegeben, daraufhin wird der User auf einer der Gruppen-Indexe weitergeleitet..

Soweit so gut

kleine Grafische Veranschauung:

```
/ROOT
|
+ /WEB-INF
|  |
|  + /classes
|  |   |
|  |   + /de
|  |       |
|  |       +Login.java
|  |
|  + web.xml
|
+ /Admin
|  |
|  + index.jsp
|
+index.jsp 
+auth.jsp
+l_error.jsp
```

Jetzt kommt mein Problem:

Man kann aber direkt über den Link -> localhostort/progname/admin/index.jsp darauf zugreifen..
Jetzt hatte ich den Login vorher mit der j_security_check realisiert, also weiß ich das man die Ordner für nur bestimmte Rollen freigeben kann.

Aber ich schaffe es nicht, das richtig einzustellen.. 
Hoffe ihr könnt mir da weiterhelfen!

lg

alex

Ps Empfehlt ihr Cookies zu verwenden? Oder wie würdet ihr das machen? Nein, die Gefahr besteht nicht das die Nutzer Cookies ausschalten.


----------



## homer65 (29. Jul 2008)

Ich benutze das Session Object um abzuspeichern, ob jemand angemeldet ist oder nicht. In JSP kann so was in der folgenden Art codieren:

```
Object obj = session.getAttribute("name");
session.setAttribute("name",obj);
```


----------



## lexz (29. Jul 2008)

Hey,
schon mal vielen Dank.

Ja, Lese mich bzgl Sessions auch gerade ein. Hier meine Quelle z.Z session

Kennt ihr vielleicht andere, "bessere"?


Viel wichtiger ist mir zur Zeit aber noch die Ordnerrestriktion bei den jeweiligen Gruppenordnern .

lg

alex


----------



## ms (29. Jul 2008)

lexz hat gesagt.:
			
		

> ```
> /ROOT
> |
> + /WEB-INF
> ...


Du meinst Login.class oder doch Login.java? Das wäre mal einer der Gründe, warum es nicht gehen kann.



			
				lexz hat gesagt.:
			
		

> Man kann aber direkt über den Link -> localhostort/progname/admin/index.jsp darauf zugreifen..
> Jetzt hatte ich den Login vorher mit der j_security_check realisiert, also weiß ich das man die Ordner für nur bestimmte Rollen freigeben kann.


Wenn du j_security_check verwendest dann brauchst du kein Login.java, da du ja das konfigurierte Loginmodul verwendest.
Schau dir mal http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html an.

ms


----------



## lexz (29. Jul 2008)

Das Login funktioniert ohne weiteres.
Nein die java befindet sich eigentlich nicht da. Da ich mit NetBeans IDE arbeite befindet Sie sich in den Source Packages unter com.firma.login..
Hatte es zur vereinfachung da so stehen lassen...

Nein ich verwende kein j_security_check!

Wollte damit nur gesagt haben, das ich weiß das es eine möglichkeit dazu gibt. Das diese sich in der web.xml befindet.
Aber mit meinem Grundwissen von j_security_check, hier nicht weiterkomme...

Bräuchte jmd der erzählt wie ich die web.xml anpassen muss, so das die Dateien unter /Admin auch nur für die Gruppenrolle Admin zur Verfügung steht.. Da ich den Wert der Gruppe von Login.java zurückgegeben bekomme.

Mir fällt da nur selber machen ein: 
Sprich Gruppenwert übergeben, abfragen ob Gruppenwert für den Zugriff auf /Admin ausreicht und zugang erlauben oder verbieten..

Da ich mir aber sicher bin das man das viel einfacher machen kann, wollte ich zuerst mal nachgefragt haben und nicht das Rad nochmals neu erfinden.

lg

alex


----------



## lexz (29. Jul 2008)

Hey,
ja genau wie in dem Link, hatte ich das auch in Erinnerung. 
Heißt das aber jetzt das ich einfach die JDBCRealm meinen Bedürfnissen nach anpassen muss?

lg

alex


----------



## ms (31. Jul 2008)

lexz hat gesagt.:
			
		

> Heißt das aber jetzt das ich einfach die JDBCRealm meinen Bedürfnissen nach anpassen muss?


Ja

ms


----------

