Pregunta

Puedes ver en las siguientes publicaciones

http://forums.sun.com/thread.jspa?threadID=603815

http: / /forums.devshed.com/ldap-programming-76/active-directory-services-using-java-api-89586.html un ejemplo de acceso a LDAP usando la clase InitialLdapContext en Java. Esto requiere que se ingrese un inicio de sesión y una contraseña . (Aunque la cuenta de servicio o el usuario que ejecuta el proceso de Java ya ha iniciado sesión para poder ejecutar). / p>

Como la cuenta de usuario o servicio ya ha iniciado sesión, ya pueden ejecutar comandos de directorio activo como los siguientes sin un nombre de usuario o contraseña:

dsquery user -samid "login" |dsget user -samid -email -display

Entonces, ¿por qué Java necesita el inicio de sesión y una contraseña , si esta consulta ya está disponible para Windows? Kosuke insinúa que no es obligatorio en esta publicación de blog en conclusión:

https: // comunidad .oracle.com / blogs / kohsuke / 2008/06/12 / more-active-directory-Integration-java

Mi pregunta es: ¿cómo podemos llamar al directorio activo en Java sin:

  • utilizando un inicio de sesión o contraseña (que se ejecuta con una cuenta que ya ha iniciado sesión)
  • ejecutando un comando en la línea de comando?
¿Fue útil?

Solución

Esto probablemente ocurre porque

  • Está utilizando bibliotecas / contextos LDAP para comunicarse con Active Directory, y estas bibliotecas deben admitir otros tipos de LDAP (¿AD incluso cuenta como LDAP?)
  • Los proveedores de estas implementaciones son los que lo requieren. La comunicación LDAP se realiza a través de proveedores que suministran la implementación, no se realiza mediante el tiempo de ejecución real de Java.
  • La contraseña del usuario actual no es (espero) realmente proporcionada por Windows a Java.

Cuando Windows lo autentica contra AD mientras ejecuta aplicaciones que lo requieren, presenta otro conjunto de credenciales además de su contraseña real. Estas credenciales no están disponibles en Java, o al menos ninguno de los proveedores de comunicadores LDAP ha proporcionado una forma de recuperarlas.

En su otra publicación de blog en el tema Kohsuke se expande un poco más sobre por qué las cosas son como están en Java cuando se trata de Active Directory.

Otros consejos

También puede consultar el siguiente enlace para encontrar instrucciones detalladas para hacer que la autenticación integrada de Windows funcione en la plataforma Java.

  

http://webmoli.com/ 2009/08/29 / single-sign-on-in-java-platform /

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