Pergunta

trabalho Authentication Connection Como o servidor JDBC SQL confiável? (Ou seja, como é que a conexão confiável autenticar o usuário conectado AD de uma forma tão transparente e elegante e como posso implementar uma solução de autenticação semelhante para minhas aplicações cliente-servidor em Java sem uma conexão de banco de dados ou qualquer uso da solução SQL Server existente .)

Pressupostos * Trabalhando dentro de um domínio Windows 2003 * Você tem acesso à API do Windows via JNI / JNA

Foi útil?

Solução

Depende do cliente. Por exemplo, se você tem um navegador da Web, ele pode usar a autenticação NTLM para passar a autenticação de domínio do seu cliente atual para o servidor. Neste caso, o navegador como o IE ou FF suporta isso, e você servidor web precisa do suporte para NTLM. Por exemplo aqui para Tomcat: http://jcifs.samba.org/src/docs/ ntlmhttpauth.html

Há também a protcol SPNEGO em combinação com Kerberos, como explicado aqui: http://java.sun.com/javase/6/docs/technotes/guides/security/jgss/lab/index.html

Se você tem seu próprio cliente, que depende de enquadramento do cliente se ele é capaz de usar o contexto de segurança do usuário local e é capaz de transmiti-lo. A página acima descreve este, pelo menos para um cenário Kerberos.

Greetings Bernd

PS: Eu não tenho certeza se você pode passar o contexto de autenticação estabelecida com o JCIFS / solução ntmlm a um componente de backend como o SQL Server. Ele deve funcionar com bilhetes Kerberos (se configurado).

Outras dicas

jTDS e Microsoft Driver JDBC ambos oferecem autenticação nativa do Windows.

Você já olhou para esta questão ? A situação parece ser semelhante ao seu (conectando a um banco de dados SQL Server usando a autenticação do Windows).

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