| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/04/2009 09:08:40
|
flaviomreis
Debugger
Membro desde: 04/07/2006 09:20:35
Mensagens: 56
Offline
|
Bom dia galera!
Gostaria que o tomcat fizesse integração com o Active Directory e permitisse acesso à minha aplicação somente a usuários de um determinado Grupo do AD. Para tanto, tenho a seguinte configuração que não tenho a mínima idéia se funciona, pois não consegui criar log das tentativas de acesso, em meu server.xml:
Já tentei várias outras configurações sem sucesso também, o problema é que sempre é solicitado o usuário e senha, ou seja, não consigo de forma alguma autenticar em minha aplicação, onde no web.xml tem:
Alguém tem alguma idéia de como fazer isto?
Obrigado.
|
Flávio Menezes dos Reis
Bacharel em Sistemas de Informação
Terra de Areia - RS |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2009 07:26:53
|
angelobuild
HelloWorld
![[Avatar]](/images/avatar/de825d79a481a6f2062ec93a913b8307.png)
Membro desde: 11/04/2007 12:11:09
Mensagens: 11
Localização: Brasília-DF
Offline
|
Flavio eu estou tentando fazer a configuração no meu server xml, mas não tá dando certo, já que o seu pede para tudo eu gostaria que o meu pelo menos pedisse a autenticação e não tá funcionando poderia me auxiliar.
tallk: angelobuild@gmail.com
Desde já agradesço pela atenção.
Att,
Ângelo Santos.
|
Ângelo Santos.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2009 07:53:18
|
flaviomreis
Debugger
Membro desde: 04/07/2006 09:20:35
Mensagens: 56
Offline
|
angelobuild wrote:Flavio eu estou tentando fazer a configuração no meu server xml, mas não tá dando certo, já que o seu pede para tudo eu gostaria que o meu pelo menos pedisse a autenticação e não tá funcionando poderia me auxiliar.
tallk: angelobuild@gmail.com
Desde já agradesço pela atenção.
Att,
Ângelo Santos.
Cola aqui o teu server.xml e o teu web.xml
Att,
|
Flávio Menezes dos Reis
Bacharel em Sistemas de Informação
Terra de Areia - RS |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2009 15:58:57
|
angelobuild
HelloWorld
![[Avatar]](/images/avatar/de825d79a481a6f2062ec93a913b8307.png)
Membro desde: 11/04/2007 12:11:09
Mensagens: 11
Localização: Brasília-DF
Offline
|
Eu consegui, mas tá dando o seguinte erro:
SEVERE: Exception performing authentication
javax.naming.PartialResultException: Unprocessed Continuation Reference(s); remaining name 'dc=sistema,dc=org,dc=br'
at com.sun.jndi.ldap.LdapCtx.processReturnCode(Unknown Source)
at com.sun.jndi.ldap.LdapCtx.processReturnCode(Unknown Source)
at com.sun.jndi.ldap.LdapCtx.searchAux(Unknown Source)
at com.sun.jndi.ldap.LdapCtx.c_search(Unknown Source)
at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(Unknown Source)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(Unknown Source)
at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(Unknown Source)
at javax.naming.directory.InitialDirContext.search(Unknown Source)
at org.apache.catalina.realm.JNDIRealm.getUserBySearch(JNDIRealm.java:1067)
at org.apache.catalina.realm.JNDIRealm.getUser(JNDIRealm.java:975)
at org.apache.catalina.realm.JNDIRealm.authenticate(JNDIRealm.java:924)
at org.apache.catalina.realm.JNDIRealm.authenticate(JNDIRealm.java:810)
at org.apache.catalina.authenticator.BasicAuthenticator.authenticate(BasicAuthenticator.java:181)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:491)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:10
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:52
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
segue a configuração do JNDIRealm
<Realm alternateURL="ldap://ensi-dc01.sistema.org.br:389"
className="org.apache.catalina.realm.JNDIRealm"
connectionName="meuUser" connectionPassword="minhaSenha"
contextFactory="com.sun.jndi.ldap.LdapCtxFactory"
connectionURL="ldap://ensi-dc01.sistema.org.br:389"
userBase="dc=sistema,dc=org,dc=br"
userSubtree="true"
userSearch="(&(objectClass=user)(userPrincipalName={0}))"
userRoleName="memberOf"
roleBase="ou=minhaOU,dc=sistema,dc=org,dc=br"
roleSubtree="true"
roleName="cn"
roleSearch="(&(objectClass=group)(uniqueMember={0}))"
authentication="simple"
validate="true"/>
This message was edited 1 time. Last update was at 17/04/2009 16:01:08
|
Ângelo Santos.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/04/2009 16:50:00
|
angelobuild
HelloWorld
![[Avatar]](/images/avatar/de825d79a481a6f2062ec93a913b8307.png)
Membro desde: 11/04/2007 12:11:09
Mensagens: 11
Localização: Brasília-DF
Offline
|
JNDIRealm
<Realm alternateURL="ldap://ensi-dc01.sistema.org.br:3268"
className="org.apache.catalina.realm.JNDIRealm"
connectionName="meuUsuario" connectionPassword="minhaSenha"
contextFactory="com.sun.jndi.ldap.LdapCtxFactory"
connectionURL="ldap://ensi-dc01.sistema.org.br:3268"
userBase="ou=minhaOU,dc=sistema,dc=org,dc=br"
userSubtree="true"
userSearch="(&(objectClass=user)(userPrincipalName={0}))"
userRoleName="memberOf"
roleBase="ou=minhaOU,dc=sistema,dc=org,dc=br"
roleSubtree="true"
roleName="cn"
roleSearch="(&(objectClass=group)(uniqueMember={0}))"
authentication="simple"
validate="true"/>
web.xml
<security-constraint>
<web-resource-collection>
<web-resource-name>HTMLManger and Manager command</web-resource-name>
<url-pattern>/index.jsp</url-pattern>
</web-resource-collection>
<auth-constraint>
<!-- NOTE: This role is not present in the default users file -->
<role-name>tomcat</role-name>
</auth-constraint>
</security-constraint>
<!-- Define the Login Configuration for this Application -->
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Tomcat Manager Application</realm-name>
</login-config>
>
<!-- Define the Login Configuration for this Application -->
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Tomcat Manager Application</realm-name>
</login-config>
|
Ângelo Santos.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/03/2010 14:42:48
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Boa tarde galera!
Qual o status desta configuração pra vocês? Conseguiram fazer a autenticação?
Estou precisando deste requisito em um sistema, e gostaria de exemplos. Se pudessem ajudar eu agradeceria.
Preciso fazer com que o Tomcat façaa autenticação em um AD e em seguida fazer requisições a um Servidor EJB em outra máquina, passando os dados do Subject.
Qualquer ajuda ébem vinda.
Att,
Luiz Gustavo
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/03/2010 03:29:49
|
angelobuild
HelloWorld
![[Avatar]](/images/avatar/de825d79a481a6f2062ec93a913b8307.png)
Membro desde: 11/04/2007 12:11:09
Mensagens: 11
Localização: Brasília-DF
Offline
|
Fala Luiz Gustavo, consegui implementar a nível de aplicação, não tentei novamente a nível de tomcat (Web-Container), mas podemos tentar fazer juntos ae, acho que agora vai dar certo na epoca eu não possuia muitos conhecimentos sobre o assunto.
Descreve mais sobre o ambiente que você quer implementar isso, a implementação via Web-Container é sua única opção de solução ou você poderia outras opções, como por exemplo a nível de aplicação?
This message was edited 1 time. Last update was at 20/03/2010 03:30:46
|
Ângelo Santos.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/03/2010 08:25:17
|
Luiz_Gustavo
Virtual Machine Man
![[Avatar]](/images/avatar/012d9fe15b2493f21902cd55603382ec.png)
Membro desde: 30/04/2005 12:55:11
Mensagens: 518
Localização: Assis
Offline
|
Opa, tudo bem Ângelo?
Então, o ambiente é o seguinte:
Aplicação EJB no GlassFish em um servidor.
Aplicação JSF no Tomcat em outro servidor.
Active Directory já existente, com as credenciais dos usuários.
Preciso autenticar os usuários primeiramente no Tomcat, para já implementar a segurança declarativa para as páginas e menus que os usuários poderão acessar.
Em seguida preciso manter o mesmo nível de segurança nas requisições EJB. Idealmente preciso ter o Subject do usuário logado na aplicação EJB, para fazer a segurança dos componentes.
Além disso, a aplicação é multicliente, e a mesma aplicação EJB precisa acessar datasources diferentes, a depender do usuário que está acessando.
Tudo está me levando a utilizar JAAS para fazer esta autenticação, implementando um LoginModule específico para autenticar no AD. Na verdade estou tentando implementar um tutorial que encontrei, que usa o CAS (http://www.ibm.com/developerworks/web/library/wa-singlesign/).
Vou continuar dando uma olhada para ver se isso vai antender à minha necessidade.
Se quiser fazer um trabalho conjunto, para trocarmos informações, seria muito bom.
Abraço!
This message was edited 1 time. Last update was at 20/03/2010 08:26:41
|
Analista e Desenvolvedor de Sistemas
http://luizgustavoss.blogspot.com/
http://luizgustavoss.wordpress.com/
http://www.linkedin.com/in/luizgustavoss
Procurando uma especialização em Java, SOA e Android? Conheça a TNT Educacional
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/06/2011 07:38:20
|
crmoreira
HelloWorld
Membro desde: 27/06/2011 19:22:05
Mensagens: 10
Offline
|
Pessoal,
Preciso resolver o mesmo problema, alguma solução já foi implementada?
Abs,
Carlos
|
|
|
 |
|
|