Compartir a través de


Autenticación Kerberos para OLTP de SQL (SharePoint Server 2010)

 

Se aplica a: SharePoint Server 2010

Última modificación del tema: 2016-11-30

En este escenario se describe el proceso para configurar la autenticación Kerberos para el clúster de servidores SQL Server en nuestro entorno de ejemplo. Una vez finalizado ese proceso, confirmaremos que los servicios de SharePoint Server se autentiquen con el clúster mediante el protocolo Kerberos.

En este escenario, se realizarán las siguientes tareas:

  • Configurar un clúster de servidores SQL Server 2008 R2 existente para que use la autenticación Kerberos

  • Comprobar que el cliente pueda autenticar con el clúster mediante la autenticación Kerberos

  • Crear una base de datos de prueba y datos de ejemplo para usar en escenarios posteriores

Nota

No es necesario usar la autenticación Kerberos para SQL Server para los servicios centrales de datos de SharePoint Server (por ejemplo, conexiones a bases de datos de la plataforma). El entorno de ejemplo tiene un único clúster de servidores SQL Server que hospeda bases de datos de ejemplo adicionales que se usan en escenarios posteriores. Para que la delegación funcione correctamente en estos escenarios, el clúster de servidores SQL Server debe aceptar la conexión autenticada por Kerberos.

Lista de comprobación de configuración

Área de configuración Descripción

Configuración de DNS

Crear registros de host DNS (A) para el IP del clúster de servidores SQL Server

Configurar Active Directory

Crear nombres de entidad de seguridad de servicio (SPN) para el servicio de SQL Server

Comprobar la configuración de Kerberos de SQL Server

Usar SQL Server Management Studio para consultar los metadatos de la conexión SQL para asegurarse de que se use el protocolo de autenticación Kerberos

Detalles del entorno del escenario

Diagrama de infraestructura de escenario

Este escenario muestra un conjunto o granja de servidores de SharePoint Server, configurado para usar un alias SQL para una conexión a un clúster de servidores SQL Server que está configurado para usar la autenticación Kerberos.

Instrucciones para la configuración paso a paso

Configuración del DNS

Configure el DNS para el clúster de servidores SQL Server en su entorno. En este ejemplo hay un clúster de servidores SQL Server, MySqlCluster.vmlab.local, que se ejecuta en el puerto 1433 en el IP de clúster 192.168.8.135/4. El clúster está Activo/Pasivo con el motor de base de datos del servidor SQL Server que se ejecuta en la instancia predeterminada del primer nodo.

Para obtener información general para configurar el DNS, vea el tema sobre la administración de registros de DNS.

En este ejemplo, configuramos un registro de DNS (A) para el clúster de servidores SQL Server.

Nota

Técnicamente, dado que los SPN del servidor SQL Server incluyen un nombre de instancia (si está usando la instancia con segundo nombre en el mismo equipo), puede registrar el host DNS para el clúster como un alias CNAME y evitar el problema CNAME descrito en el Apéndice A, Problemas conocidos de la configuración de Kerberos (SharePoint Server 2010). Sin embargo, si decide usar CNAME, tendrá que registrar un SPN mediante el nombre de host de registro de DNS (A) para los alias CNAME.

Configurar Active Directory

Para que el servidor SQL Server autentique clientes mediante la autenticación Kerberos, debe registrar un nombre de entidad de seguridad de servicio (SPN) en la cuenta de servicio que ejecuta SQL Server. Los nombres de entidad de seguridad de servicio para el motor de base de datos de SQL Server usan el siguiente formato para las configuraciones que usan la sesión predeterminada y no una sesión con nombre de SQL Server:

MSSQLSvc/<FQDN>:port

Para obtener más información para registrar los SPN para SQL Server 2008, vea el tema sobre cómo registrar un nombre de entidad de seguridad de servicio.

En nuestro ejemplo, configuramos el SPN de SQL Server en la cuenta de servicio del motor de base de datos de SQL Server (vmlab\svcSQL) con el siguiente comando SetSPN:

SetSPN -S MSSQLSVC/MySQLCluster.vmlab.local:1433 vmlab\svcSQL

Sesiones con nombre de SQL Server

Si usa sesiones con nombre de SQL Server en lugar de la sesión predeterminada, tendrá que registrar los SPN específicos de la sesión de SQL Server y para el servicio SQL Server Browser. Para obtener más información para configurar la autenticación Kerberos para las sesiones con nombre, vea los sigientes artículos:

Alias SQL

Se recomienda que, al generar la granja de servidores, se considere la posibilidad del uso de alias SQL para las conexiones con el equipo que ejecuta SQL Server. Si decide usar alias SQL, el formato del SPN de Kerberos para esas conexiones no cambia. Continúe usando el nombre de host DNS registrado (registro A) en el SPN para SQL Server. Por ejemplo, si registra un alias "SPFARMSQL" para "MySQLCluster.vmlab.local", cuando el SPN se conecta a SPFarmSQL sigue siendo "MSSQLSVC/MySQLCluster.vmlab.local:1433".

Comprobar la configuración de Kerberos del servidor SQL Server

Cuando configura los DNS y los nombres de entidad de seguridad de servicio, puede reiniciar los equipos que ejecutan SharePoint Server y comprobar que los servicios de SharePoint Server ahora autentican con SQL Server mediante la autenticación Kerberos.

Para comprobar la configuración del clúster

  1. Reinicie los equipos que ejecutan SharePoint Server. Esta acción hace que se reinicien todos los servicios y los fuerza a volver a conectarse y autenticar mediante la autenticación Kerberos.

  2. Abra SQL Server Management Studio y ejecute la siguiente consulta:

    Select 
       s.session_id,
       s.login_name,
       s.host_name,
       c.auth_scheme
    from
    sys.dm_exec_connections c
    inner join
    sys.dm_exec_sessions s
    on c.session_id = s.session_id
    

    La consulta devuelve los metadatos de cada sesión y conexión. Los datos de sesión ayudan a identificar el origen de la conexión y la información de sesión revela el esquema de autenticación para la conexión.

  3. Compruebe que los servicios de SharePoint Server se autentican mediante la autenticación de Kerberos. Si la autenticación de Kerberos está configurada correctamente, podrá ver Kerberos en la columna auth_scheme de los resultados de la consulta.

Creación de una base de datos y una tabla de prueba de SQL Server

Para probar la delegación en las distintas aplicaciones de servicio de SharePoint Server en los escenarios que se describen en este documento, debe configurar un origen de datos de prueba para tener acceso a esos servicios. En el paso final de este escenario, debe configurar una base de datos de prueba denominada "Prueba" y una tabla de prueba denominada "Ventas" para usarlas más adelante.

  1. En SQL Server Management Studio, cree una nueva base de datos denominada "Prueba". Mantenga la configuración predeterminada al crear esta base de datos.

  2. En la base de datos Prueba, cree una nueva tabla con el esquema siguiente:

    Nombre de columna Tipo de datos Permitir valores nulos

    Region

    nvarchar(10)

    No

    Year

    nvarchar(4)

    No

    Amount

    money

    No

    RowId

    int

    No

  3. Guarde la tabla con el nombre "Ventas".

  4. En Management Studio, rellene la tabla con datos de prueba. Los datos en sí no tienen importancia y no afectan a la función de los escenarios posteriores. Bastará con algunas filas de datos.