Registrar un nombre de entidad de seguridad de servicio (SPN) para un servidor de informes
Si implementa Reporting Services en una red que usa el protocolo Kerberos para la autenticación mutua, debe crear un nombre de entidad de seguridad de servicio (SPN) para el servicio del servidor de informes. Debe crear el nombre si lo configura para que se ejecute como una cuenta de usuario de dominio.
Acerca de los nombres principales de servicio
Un SPN es un identificador único para un servicio en una red que utiliza la autenticación Kerberos. Está compuesto de una clase de servicio, un nombre de host y, en ocasiones, un puerto. Los SPN de HTTP no requieren un puerto. En una red que utiliza la autenticación Kerberos, un SPN para el servidor se debe registrar en una cuenta de equipo integrada (como NetworkService o LocalSystem) o en una cuenta de usuario. Los SPN se registran automáticamente para las cuentas integradas. Sin embargo, al ejecutar un servicio en una cuenta de usuario de dominio, debe registrar manualmente el SPN para la cuenta que desea utilizar.
Para crear un SPN, puede emplear la utilidad de línea de comandos SetSPN . Para más información, vea:
Debe ser administrador de dominio si desea ejecutar la utilidad en el controlador de dominio.
Sintaxis
Al manipular los SPN con SetSPN
, el SPN se debe escribir en el formato correcto. El formato de un SPN HTTP es http/host
. La sintaxis de comandos para utilizar la utilidad SetSPN
con el fin de crear un SPN para el servidor de informes es similar a la siguiente:
Setspn -s http/<computer-name>.<domain-name> <domain-user-account>
SetSPN
está disponible con Windows Server. El argumento -s
agrega un SPN después de validar que no existe ningún duplicado.
Nota:
-s
está disponible en Windows Server a partir de Windows Server 2008.
HTTP
es la clase de servicio. El servicio web del servidor de informes se ejecuta en HTTP.SYS
. Una consecuencia de la creación de un SPN para HTTP
es que a todas las aplicaciones web del mismo equipo que se ejecutan en HTTP.SYS
(incluidas las que se hospedan en IIS) se les concederán vales en función de la cuenta de usuario de dominio. Si esos servicios se ejecutan en una cuenta diferente, se producirá un error en las solicitudes de autenticación. Para evitar este problema, asegúrese de configurar todas las aplicaciones HTTP para ejecutarse en la misma cuenta, o considere la posibilidad de crear los encabezados de host para cada aplicación y crear después SPN independientes para cada encabezado de host. Al configurar los encabezados de host, se requieren cambios de DNS con independencia de la configuración de Reporting Services .
Los valores que especifique para <computername>
y <domainname>
identifican la dirección de red única del equipo en el que se hospeda el servidor de informes. Puede ser un nombre de host local o un nombre de dominio completo (FQDN). Si solo tiene un dominio, puede omitir <domainname>
de la línea de comandos. <domain-user-account>
es la cuenta de usuario en la que se ejecuta el servicio del servidor de informes y para la que se debe registrar el SPN.
Registrar un SPN para un servicio Servidor de informes que se ejecute como un usuario de dominio
Instale Reporting Services y configure el servicio Servidor de informes para ejecutarse como una cuenta de usuario de dominio. Los usuarios no podrán conectarse al servidor de informes hasta que complete los pasos siguientes.
Inicie sesión en el controlador de dominio como administrador de dominio.
Abra un símbolo del sistema.
Copie el comando siguiente, reemplazando los valores de los marcadores de posición con valores reales que sean válidos para su red:
Setspn -s http/<computer-name>.<domain-name> <domain-user-account>
Por ejemplo:
Setspn -s http/MyReportServer.MyDomain.com MyDomainUser
Ejecute el comando.
Abra
RsReportServer.config
en el archivo y busque la sección<AuthenticationTypes>
.Agregue
<RSWindowsNegotiate>
como primera entrada en esta sección para habilitar Kerberos.