Pregunta

Aquí está el problema,

La JAAS reino se conecta a la base de datos de multa, el nombre de usuario y la contraseña coinciden, la sesión está autenticado.Sin EMBARGO, ninguno de los papeles parecen estar recibiendo en el Principal.Tomcat isInUserRole devuelve false para cada papel, y tomcat de seguridad no los ve.

Aquí es el reino de configuración en el Server.xml

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

Aquí está el inicio de sesión.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";
};

Y en catalina.propiedades me refiero a la configuración como esta

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

Al iniciar la aplicación me hace llegar el siguiente mensaje en la salida de Depuración, no sé por qué como todas las clases debe ser accesible por el servidor

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

Cualquier ayuda se agradece.Ya he leído el post después del post y tutorial tras tutorial, y los que tienen este problema, no tiene solución publicado.

Por cierto, estoy usando Tomcat 5.5, no es mi elección, código de la herencia, ya sabes cómo es!Yo también uso el OWASP módulo de inicio de sesión (OWASPJaasLoginModule.jar).Este archivo jar se encuentra en el servidor del directorio/lib.

¿Fue útil?

Solución

De acuerdo ... lo resolví yo mismo ... otra vez, muy estúpidos! Si esto era mi código estaría enojado conmigo mismo, pero no lo es, y después de 4 días de joder con esta aplicación, estoy cerca de harto. El problema era que la clase no es

org.ovasp.java.jaas.RolePrincipal

su

org.owasp.java.jaas.RolePrincipal

ESTÚPIDO !!!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top