Question

Voici la question,

Le royaume JAAS se connecte à l'amende de base de données, le nom d'utilisateur et mot de passe correspondance, la session est authentifié. Cependant, aucun des rôles semblent entrer dans le principal. retourne isInUserRole de Tomcat faux pour chaque rôle, et la sécurité tomcat ne les voit pas non plus.

Voici la configuration du domaine dans le Server.xml

<Realm  className="org.apache.catalina.realm.JAASRealm"
        appName="TomcatTimedLogin"
        userClassName="com.tagish.auth.TypedPrincipal"
        roleClassNames="org.ovasp.java.jaas.RolePrincipal" />

Voici le login.config

TomcatTimedLogin
{
    org.owasp.java.jaas.TomcatTimedLogin required
    useDS=true
    dsJNDI="jdbc/resourceName"
        dbDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver" 
        dbURL="jdbc:sqlserver://server\\DBSERVER;databaseName=DBName"
        dbUser="username"
        dbPassword="password"
        debug=true 
        loginTable="loginTable" 
        clippingLevel="3" 
        interval="10"
        loginQuery="SELECT UserID,Password FROM Users WHERE LogonUserName=? AND RetirementDate is null"
        rolesQuery="SELECT Role.RoleDescription FROM User_Role,Role WHERE User_Role.UserID=? AND User_Role.RoleID=Role.RoleID";
};

Et catalina.properties je me réfère à la configuration comme ceci

java.security.auth.login.config=file:///C:/config/login.config

Quand commencer l'application que je reçois le message suivant dans la sortie de débogage, ne sais pas pourquoi que toutes les classes doivent être accessibles par le serveur

SEVERE: Class org.ovasp.java.jaas.RolePrincipal not found! Class not added.

Toute aide serait appréciée. Je l'ai déjà lu poste après poste et tutoriel après tutoriel, et ceux qui ont ce problème, ne pas solution affichée.

BTW, j'utilise Tomcat 5.5, pas mon choix, le code de l'héritage, vous savez comment il est! J'utilise également le module de connexion OWASP (OWASPJaasLoginModule.jar). Ce fichier jar se trouve dans le répertoire du serveur / lib.

Était-ce utile?

La solution

D'accord ... Je résolu moi-même ... encore une fois, très STUPIDE! Si tel était mon code, je serais en colère contre moi-même, mais ce n'est pas, et après 4 jours de vissage autour de cette application, je suis proche de marre. Le problème était que la classe n'est pas

org.ovasp.java.jaas.RolePrincipal

son

org.owasp.java.jaas.RolePrincipal

STUPIDE !!!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top