En este último artículo de la serie veremos como “Activar el SSO en Alfresco CIFS con Active Directory (NTLM)“:
Recuerda activar los logs de DEBUG para CIFS y tener una visión más amplia de lo que pasa en el sistema, para ello debemos descomentar las líneas correspondientes en el archivo log4j.properties que hay en el directorio classes del alfresco.war desplegado (webapps/alfresco/WEB-INF/classes):
# CIFS server debugging
log4j.logger.org.alfresco.smb.protocol=error
log4j.logger.org.alfresco.smb.protocol.auth=debug
log4j.logger.org.alfresco.acegi=debug
Ficheros que intervienen para configurar SSO en Alfresco CIFS:
- file-servers.xml en <configRoot>
- file-servers-custom.xml en <extension>
Copia toda la sección <config evaluator=”string-compare” condition=”CIFS Server”> del fichero file-servers.xml a file-servers-custom.xml dentro de la sección “alfresco-config“.
Y también la sección <config evaluator=”string-compare” condition=”Filesystem Security”> del fichero file-servers.xml a file-servers-custom.xml dentro de la sección “alfresco-config“.
Editamos file-servers-custom.xml:
Añada replace=”true” en <config evaluator=”string-compare” condition=”CIFS Server” replace=”true”>
Para mi servidor Alfresco que lo he llamado “alfresco” con dominio “test.tld” pondría esta configuración:
<serverEnable enabled=”true”/>
<host name=”alfresco” domain=”test.tld“/>
<comment>Alfresco CIFS Server</comment>
En <host name=”alfresco” domain=”test.tld”/> elimina la A, este atributo hace que se publique el CIFS con el nombre de la máquina + A en caso de tener otro CIFS en esa máquina, en nuestro caso sólo tenemos uno y la quitamos.
Modificamos <authenticator type=”passthru”/> y descomentamos y/o modificamos la sección siguiente:
<authenticator type=”passthru“>
<Server>TEST.TLD\10.215.253.165, 10.215.253.165</Server> <!– dominio e IP del controlador del dominio –>
<protocolOrder>TCPIP,NetBIOS</protocolOrder>
<offlineCheckInterval>60</offlineCheckInterval>
</authenticator>
Una vez hecho esto ya podremos arrancar Alfresco y acceder, en mi caso, por CIFS a \\alfresco\Alfresco desde un cliente Windows XP del dominio y accederemos directamente sin solicitar usuario y contraseña.
En los logs deberemos ver algo así (usuario toni que está en Active Directory y ha iniciado la sesión) :
00:07:09,486 DEBUG [smb.protocol.auth] Mapped client /10.215.253.168 to domain null
00:07:09,589 DEBUG [smb.protocol.auth] Passthru sessId=15, auth ctx=[NTLM,Challenge=1d9c38e2728fb40a]
00:07:09,594 DEBUG [smb.protocol.auth] Null CIFS logon allowed, sess = T9
00:07:09,607 DEBUG [smb.protocol.auth] Using Write transaction
00:07:09,613 User:toni DEBUG [smb.protocol.auth] Setting current user using person toni (username toni)
00:07:09,613 User:toni DEBUG [smb.protocol.auth] Passthru authenticate user=toni, FULL
00:07:09,619 User:toni DEBUG [smb.protocol.auth] Closed auth session, sessId=15
00:07:09,647 DEBUG [smb.protocol.auth] Null CIFS logon allowed, sess = T9
Por último, para que funcione todo accediendo por FQDN, por ejemplo, hostname.domain.tld hay que configurar los navegadores según el siguiente manual: http://www.nateirwin.net/2007/01/19/enabling-ntlm-authentication-in-firefox-and-internet-explorer/, es decir, en IE configurar la URL como sitio de confianza.
Esta funcionalidad si que me parece realmente interesante ya que posibilita la capa de seguridad logica de SSO delante del propio gestor documental Alfresco por defecto con la propia sesion de la red windows sin la necesidad de implantar e integrar software de terceros como OpenSSO, CAS Server, JOSSO y demas 😉
Si, sobre todo para acceder a interfaces como CIFS es muy cómodo.
Hola,
estoy haciendo pruebas con Alfresco Community 4.0.d. Quiero conectarme al share usando SSO con NTLM vía Active Directory, logro acceder tanto a alfresco como a share con mis credenciales de usuario del domino pero no soy capaz a conectarme automáticamente que es el objetivo(tengo server de alfresco en windows 2003 sbs y me conecto desde equipos con windows7 pro). Las cosas han cambiado bastante en Alfresco desde tu post, así que no sé qué falla (he seguido los pasos de alfresco docs). ¿Podrías ayudarme? Gracias de antemano. Un saludo,
Hola Halane,
Efectivamente ha llovido mucho desde este post y los subsistemas de autenticación han evolucionado desde la versión del artículo. No sabría decirte que está pasando pero igual tiene que ver con el navegador, aunque supongo que habrás probado con Internet Explorer. También puedes ponerlo en los foros (en español y en inglés) a ver que te dicen.
Saludos.
Hola,
estoy probando la sincronización del afresco 4.0 con windows server 2008, la authenticacion bien pero no trae los usuarios la sincronizacion, quizas tengas un manual o algún ejemplo. Gracias de antemano.
En la documentación oficial esta comentado. Mira en docs.alfresco.com