GuilleSQL :: Microsoft SQL Server, SSIS, y más !!

Configurar la Autenticación de Kerberos sobre instancias con nombre en Cluster de SQL Server 2008 R2 y Analysis Services


Una configuración que podemos necesitar realizar por diferentes motivos, es la Autenticación de Kerberos sobre SQL Server 2008 R2 y Analysis Services, algo que puede complicarse levemente al trabajar con instancias con nombre en Cluster. El presente artículo detalla la configuración de la Autenticación de Kerberos para una instancia con nombre de SQL Server 2008 R2 y Analysis Services sobre un Failover Cluster de SQL Server 2008 R2.

Recientemente he estado pegándome con una configuración de Autenticación de Kerberos sobre una instalación SQL Server 2008 R2 y Analysis Services sobre un Failover Cluster de SQL Server 2008 R2, con el objetivo de ser utilizado por una instalación de MOSS 2010. Inicialmente, estuve siguiendo la Guía de configuración de Kerberos para MOSS 2010, sin embargo, la Autenticación de Kerberos no acababa de funcionar. Finalmente, tras varias pruebas, parece que encontré un Workaround para hacer funcionar la Autenticación de Kerberos en este escenario: Habilitar la Delegación de Kerberos en las cuentas de servicio y cuentas de equipo del Cluster. Realizado esto y tras reiniciar las máquinas, la Autenticación de Kerberos empezó a funcionar.

Descripción del Entorno

Partimos de un entorno de Directorio Activo formado por un Controlador de Dominio Windows Server 2003 R2, con el Dominio en Modo Funcional (Domain Functional Mode) Windows Server 2003 y el Bosque en Modo Funcional (Forest Funtional Mode) Windows 2000.

Tenemos un Failover Cluster de Windows Server 2008 R2 formado por dos Nodos (VSQL11 y VSQL12), sobre el que hemos configurado el MSDTC en Cluster, así como hemos instalado también una instancia con nombre de SQL Server 2008 R2 y Analysis Services (también en Cluster). El nombre de la instancia es MSSQLSERVER01 y el nombre virtual utilizado por SQL Server y Analysis Services es también MSSQLSERVER01 (con FQDN de MSSQLSERVER01.guillesql.local). La resolución de nombres directa e inversa funciona correctamente.

La cuenta de servicio utiliza por SQL Server y Analysis Services es GUILLESQL\SERVICE_SQL, una cuenta de usuario sin privilegios elevados ni permisos especiales. El SQL Browser se ejecuta como LocalSystem.

Configuración de la Autenticación de Kerberos, según la guía de configuración de MOSS 2010

Según la Guía de configuración de Kerberos para MOSS 2010, tan sólo tenemos que configurar los Service Principal Names (SPNs) utilizando la herramienta SetSPN.exe, tras lo cual, la Autenticación de Kerberos debería empezar a funcionar (o no ;-). Por lo tanto, ejecutamos los siguientes comandos SetSPN:

SetSPN -S MSOLAPSvc.3/MSSQLSERVER01:MSSQLSERVER01 GUILLESQL\SERVICE_SQL

SetSPN -S MSOLAPSvc.3/MSSQLSERVER01.guillesql.local:MSSQLSERVER01 GUILLESQL\SERVICE_SQL

SetSPN -S MSSQLSvc/MSSQLSERVER01:50326 GUILLESQL\SERVICE_SQL

SetSPN -S MSSQLSvc/MSSQLSERVER01.guillesql.local:50326 GUILLESQL\SERVICE_SQL

Debe tenerse en cuenta que dado que estamos configurando los Service Principal Names (SPNs) para una instancia con nombre de SQL Server y de Analysis Services, para SQL Server deberemos especificar el Puerto TCP utilizado por la instancia de SQL Server, mientras que para Analysis Services deberemos especificar el nombre de la instancia, tal como se muestra en los anteriores comandos SPNs y en la pantalla capturada que se muestra a continuación.

Debe tenerse en cuenta que dado que estamos configurando los Service Principal Names (SPNs) para una instancia con nombre de SQL Server y de Analysis Services, para SQL Server deberemos especificar el Puerto TCP utilizado por la instancia de SQL Server, mientras que para Analysis Services deberemos especificar el nombre de la instancia, tal como se muestra en los anteriores comandos SPNs y en la pantalla capturada que se muestra a continuación.

Sin embargo, tras realizar esta configuración, la Autenticación de Kerberos seguía sin funcionar. O al menos, en mi entorno no llegó a funcionar.

Configuración de la Autenticación de Kerberos: posibles pasos adicionales

Tras varias pruebas, y por mi experiencia en otras configuración de Kerberos con las que tenido que enfrentarme en veces anteriores, finalmente probé a habilitar la Delegación de Kerberos en las cuentas de equipo del Cluster (VSQL11, VSQL12 and MSSQLSERVER01) utilizando la herramienta administrativa Active Directory Users and Computers (ADUC). Me refiero a las opciones “Trust this computer for delegation to any service (Kerberos only)” o “Trust this computer for delegation”, dependiendo del modo funcional del dominio.

Reinicié el Cluster y probé de nuevo, sin embargo, la Autenticación de Kerberos seguía sin funcionar.

Tras esto probé a habilitar la Delegación de Kerberos en la cuenta de servicio de SQL Server y Analysis Services (GUILLESQL\SERVICE_SQL) utilizando de nuevo utilizando la herramienta administrativa Active Directory Users and Computers (ADUC). En esta ocasión me refiero a la opción “Trust this user for delegation to any service (Kerberos only)” o “Account is trusted for delegation”, dependiendo del modo functional del dominio. Téngase en cuenta que la pestaña Delegation sólo estará disponible sobre una cuenta de usuario si dicha cuenta de usuario tiene registrado algún Service Principal Name (SPN), pues en caso contrario la pestaña Delegation no estará visible (nosotros los registramos correctamente, como se describe un poco más arriba en este mismo artículo).

Tras esto probé a habilitar la Delegación de Kerberos en la cuenta de servicio de SQL Server y Analysis Services (GUILLESQL\SERVICE_SQL) utilizando de nuevo utilizando la herramienta administrativa Active Directory Users and Computers (ADUC). En esta ocasión me refiero a la opción “Trust this user for delegation to any service (Kerberos only)” o “Account is trusted for delegation”, dependiendo del modo functional del dominio. Téngase en cuenta que la pestaña Delegation sólo estará disponible sobre una cuenta de usuario si dicha cuenta de usuario tiene registrado algún Service Principal Name (SPN), pues en caso contrario la pestaña Delegation no estará visible (nosotros los registramos correctamente, como se describe un poco más arriba en este mismo artículo).

Tras esto, reinicié el Cluster, y al probar de nuevo la Autenticación de Kerberos, esta empezó a funcionar.

Poco más por hoy. Como siempre, confío que la lectura resulte de interés.

 


Miembros de
Miembros de GITCA (Global IT Community Association)

Menu de Usuario
  Iniciar Sesión
  Registrarse
  Restablecer Contraseña
  Ventajas de Registrarse

Acerca de
  Contigo desde Oct 2007
  771 usuarios registrados
  86146 pageloads/mes
  Ranking Alexa 498160

Social Networks
Sigue a Portal GuilleSQL en Linkedin !!
Sigue a Portal GuilleSQL en Twitter !!



Archivo

Junio de 2017 (3)
Mayo de 2017 (1)
Marzo de 2017 (3)
Enero de 2017 (4)
Junio de 2016 (1)
Mayo de 2016 (2)
Abril de 2016 (2)
Septiembre de 2015 (2)
Agosto de 2015 (2)
Junio de 2015 (10)
Mayo de 2015 (4)
Abril de 2015 (8)
Marzo de 2015 (11)
Octubre de 2014 (3)
Septiembre de 2014 (7)
Agosto de 2014 (5)
Julio de 2014 (2)
Mayo de 2014 (4)
Abril de 2014 (4)
Marzo de 2014 (4)
Febrero de 2014 (1)
Enero de 2014 (5)
Diciembre de 2013 (8)
Noviembre de 2013 (2)
Octubre de 2013 (7)
Septiembre de 2013 (6)
Agosto de 2013 (1)
Julio de 2013 (6)
Junio de 2013 (11)
Mayo de 2013 (7)
Abril de 2013 (6)
Febrero de 2013 (5)
Enero de 2013 (7)
Diciembre de 2012 (12)
Noviembre de 2012 (13)
Octubre de 2012 (5)
Septiembre de 2012 (3)
Agosto de 2012 (6)
Julio de 2012 (4)
Junio de 2012 (1)
Mayo de 2012 (2)
Abril de 2012 (7)
Marzo de 2012 (16)
Febrero de 2012 (9)
Enero de 2012 (5)
Diciembre de 2011 (10)
Noviembre de 2011 (10)
Octubre de 2011 (4)
Septiembre de 2011 (5)
Agosto de 2011 (2)
Julio de 2011 (2)
Junio de 2011 (4)
Mayo de 2011 (2)
Abril de 2011 (6)
Marzo de 2011 (4)
Febrero de 2011 (10)
Enero de 2011 (5)
Diciembre de 2010 (6)
Noviembre de 2010 (4)
Octubre de 2010 (8)
Septiembre de 2010 (4)
Agosto de 2010 (1)
Julio de 2010 (3)
Mayo de 2010 (5)
Abril de 2010 (6)
Marzo de 2010 (8)
Febrero de 2010 (3)
Enero de 2010 (1)
Diciembre de 2009 (9)
Noviembre de 2009 (14)
Octubre de 2009 (2)
Septiembre de 2009 (8)
Agosto de 2009 (2)
Julio de 2009 (10)
Junio de 2009 (9)
Mayo de 2009 (10)
Abril de 2009 (9)
Marzo de 2009 (3)
Febrero de 2009 (2)
Enero de 2009 (3)
Noviembre de 2008 (2)
Octubre de 2008 (2)
Septiembre de 2008 (2)
Agosto de 2008 (5)
Julio de 2008 (5)
Junio de 2008 (1)
Mayo de 2008 (3)
Abril de 2008 (2)
Marzo de 2008 (2)
Febrero de 2008 (2)
Enero de 2008 (5)
Noviembre de 2007 (2)
Octubre de 2007 (2)






Copyright © 2007 GuilleSQL, todos los derechos reservados.