Pergunta

Aqui está o problema,

O JAAS realm conecta à multa de banco de dados, o nome do usuário e senha jogo, a sessão é autenticado. No entanto, nenhum dos papéis parecem estar ficando para o Principal. isInUserRole do Tomcat retorna false para cada papel, e tomcat segurança não vê-los também.

Aqui está a configuração reino no server.xml

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

Aqui está a 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";
};

E em catalina.properties Refiro-me à configuração como esta

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

Ao iniciar o aplicativo eu recebo a seguinte mensagem na saída de depuração, não tenho certeza por que como todas as classes devem ser acessíveis pelo servidor

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

Qualquer ajuda seria apreciada. Já li cargo depois de post e tutorial após tutorial, e aqueles que têm esse problema, não tem solução postada.

Btw, eu estou usando Tomcat 5.5, não a minha escolha, código legado, você sabe como é! Também utilizando o módulo de login OWASP (OWASPJaasLoginModule.jar). Este arquivo jar está localizado no diretório do servidor / lib.

Foi útil?

Solução

Tudo bem ... Eu resolvi me ... novamente, muito ESTÚPIDO! Se este foi o meu código que eu iria ficar com raiva de mim mesmo, mas não é, e após 4 dias de trepando com este aplicativo, eu estou perto de farto. O problema era que a classe não é

org.ovasp.java.jaas.RolePrincipal

sua

org.owasp.java.jaas.RolePrincipal

ESTÚPIDO !!!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top