2008-10-21 17 views
0

Comment fonctionne l'authentification de connexion sécurisée SQL Server JDBC? (comment la connexion sécurisée authentifie-t-elle l'utilisateur AD connecté de manière transparente et élégante et comment puis-je implémenter une solution d'authentification similaire pour mes applications client-serveur en Java sans connexion à une base de données ou utilisation de la solution SQL Server existante? .)Comment l'authentification de connexion sécurisée SQL Server JDBC fonctionne-t-elle?

Hypothèses * Travailler dans un domaine Windows 2003 * vous avez accès à l'API Windows via JNI/JNA

Répondre

1

Cela dépend du client. Par exemple, si vous avez un navigateur Web, il peut utiliser l'authentification NTLM pour transmettre l'authentification de domaine de votre client actuel au serveur. Dans ce cas, le navigateur comme IE ou FF prend en charge cela, et votre serveur Web a besoin de la prise en charge de NTLM. Par exemple ici pour Tomcat: http://jcifs.samba.org/src/docs/ntlmhttpauth.html

Il y a aussi la Protcol SPNEGO en combinaison avec Kerberos, comme expliqué ici: http://java.sun.com/javase/6/docs/technotes/guides/security/jgss/lab/index.html

Si vous avez votre propre client, cela dépend du cadre du client si elle est capable d'utiliser contexte de sécurité de l'utilisateur local et est capable de le transmettre. La page ci-dessus décrit cela au moins pour un scénario kerberos.

Salutations Bernd

PS: Je ne sais pas si vous pouvez passer le contexte d'authentification mis en place avec la jcifs/solution ntmlm à un composant de back-end comme SQL Server. Cela devrait fonctionner avec les tickets Kerberos (si configurés). JTDS et le pilote JDBC Microsoft offrent tous les deux une authentification Windows native.

+0

Ce commentaire PS est ce que la question était. Je veux passer le contexte d'authentification établi avec jcifs à un composant backend comme SQL Server. Des suggestions? – hawkeye

0

avez-vous regardé this question? La situation semble être similaire à la vôtre (connexion à une base de données SQL Server à l'aide de l'authentification Windows).