Configuración de la autenticación (Office SharePoint Server)

En este capítulo:

La autenticación es un proceso que consiste en validar la identidad del cliente, normalmente por medio de una autoridad de autenticación designada. La autenticación de sitios web permite establecer que se compruebe si un usuario, que está intentando obtener acceso a los recursos de un sitio web, es una entidad autenticada. Una aplicación de autenticación obtiene las credenciales de un usuario que solicita el acceso a un sitio web. Las credenciales pueden ser varias formas de identificación, como un nombre de usuario y una contraseña. La aplicación de autenticación intenta validar las credenciales en una autoridad de autenticación. Si las credenciales son válidas, se considerará que el usuario que envió las credenciales es una entidad autenticada.

Autenticación de Office SharePoint Server

Para determinar el mecanismo de autenticación de Office SharePoint Server más adecuado, tenga en cuenta los siguientes aspectos:

  • Para usar un mecanismo de autenticación de Windows, necesitará un entorno que sea compatible con las cuentas de usuario que pueden autenticarse mediante una autoridad confiable.

  • Si usa un mecanismo de autenticación de Windows, el sistema operativo realizará las tareas de administración de credenciales de usuario. Si usa un proveedor de autenticación distinto de Windows, como la autenticación de formularios, debe planear e implementar un sistema de administración de credenciales y determinar dónde almacenar las credenciales del usuario.

  • Podría ser necesario implementar un modelo de suplantación/delegación que puede pasar un contexto de seguridad de nivel o de sistema operativo a través de los niveles. Esto permite que el sistema operativo suplante al usuario y delegue el contexto de seguridad del usuario al subsistema del nivel inferior siguiente.

Microsoft Office SharePoint Server es una aplicación distribuida que se divide lógicamente en tres niveles: el nivel del servidor cliente web, el nivel del servidor de aplicaciones y el nivel de base de datos back-end. Cada uno de los niveles es un subsistema de confianza y puede que sea necesaria la autenticación para tener acceso a cada uno de los niveles. La validación de credenciales requiere un proveedor de autenticación. Los proveedores de autenticación son componentes de software que admiten mecanismos de autenticación específicos. La autenticación de Office SharePoint Server 2007 se basa en el modelo de autenticación de ASP.NET e incluye tres proveedores de autenticación:

  • Proveedor de autenticación de Windows

  • Proveedor de autenticación de formularios

  • Proveedor de autenticación web SSO

Puede usar el servicio de directorio Active Directory para la autenticación, o puede diseñar el entorno para validar las credenciales de usuario frente a otros almacenes de datos, como una base de datos de Microsoft SQL Server, un directorio (LDAP) de protocolo de acceso a directorio ligero o cualquier otro directorio que tenga un proveedor de suscripciones ASP.NET 2.0. El proveedor de suscripciones especifica el tipo de almacén de datos que se va a usar. El proveedor de suscripciones ASP.NET 2.0 predeterminado usa una base de datos de SQL Server. Office SharePoint Server 2007 incluye un proveedor de suscripciones LDAP v3 y ASP.NET 2.0 incluye un proveedor de suscripciones de SQL Server.

También se pueden implementar varios proveedores de autenticación para habilitar, por ejemplo, acceso a través de intranet mediante la autenticación de Windows y acceso externo mediante la autenticación de formularios. El uso de varios proveedores de autenticación precisa usar varias aplicaciones web. Cada aplicación web debe tener una zona designada y un proveedor de autenticación único.

Los proveedores de autenticación sirven para autenticar en las credenciales de grupo y usuario que están almacenadas en Active Directory, en una base de datos de SQL Server o en un servicio de directorio LDAP distinto de Active Directory (como NDS). Para obtener más información sobre los proveedores de pertenencia de ASP.NET, vea Configuring an ASP.NET Application to Use Membership (https://go.microsoft.com/fwlink/?linkid=87014&clcid=0xC0A).

Proveedor de autenticación de Windows

El proveedor de autenticación de Windows es compatible con los siguientes métodos de autenticación:

  • Autenticación anónima

    La autenticación anónima permite a los usuarios buscar recursos en las áreas públicas de sitios web sin tener que proporcionar credenciales de autenticación. Internet Information Services (IIS) crea la cuenta IUSR_nombreDeEquipo para autenticar a los usuarios anónimos en respuesta a una solicitud de contenido web. La cuenta IUSR_nombreDeEquipo, donde nombreDeEquipo es el nombre del servidor que ejecuta IIS, proporciona al usuario acceso a los recursos de manera anónima en el contexto de la cuenta IUSR. Puede restablecer el acceso anónimo de los usuarios para que se use cualquier cuenta de Windows válida. En un entorno independiente, la cuenta IUSR_nombreDeEquipo está en el servidor local. Si el servidor es un controlador de dominio, la cuenta IUSR_nombreDeEquipo se define para el dominio. De forma predeterminada, el acceso anónimo está deshabilitado cuando se crea una nueva aplicación web. Esto proporciona un nivel adicional de seguridad porque IIS rechaza las solicitudes de acceso anónimo antes de que se puedan procesar si el acceso anónimo está deshabilitado.

  • Autenticación básica

    La autenticación básica requiere que se hayan asignado previamente credenciales de cuenta de Windows para el acceso de los usuarios. La autenticación básica permite al explorador web proporcionar credenciales al realizar una solicitud durante una transacción HTTP. Puesto que las credenciales de usuario no se cifran en las transmisiones de red, sino que se envían por la red como texto simple, no se recomienda usar la autenticación básica en una conexión HTTP no segura. Para usar la autenticación básica, debe habilitar el cifrado de Capa de sockets seguros (SSL).

  • Autenticación implícita

    La autenticación implícita proporciona la misma funcionalidad que la autenticación básica, pero con mayor seguridad. Las credenciales de usuario se cifran en lugar de enviarse a través de la red en texto simple. Las credenciales de usuario se envían como síntesis del mensaje MD5, donde el nombre de usuario y la contraseña originales no se pueden descifrar. La autenticación implícita usa un protocolo de desafío/respuesta que requiere que el solicitante de autenticación presente credenciales válidas en respuesta a un desafío del servidor. Para autenticarse en el servidor, el cliente tiene que suministrar una síntesis del mensaje MD5 en una respuesta que contiene una cadena de contraseña secreta compartida. El algoritmo de síntesis del mensaje MD5 se describe detalladamente en el documento RFC 1321 de Internet Engineering Task Force (IETF) (http://www.ietf.org).

    Para usar la autenticación implícita, tenga en cuenta los siguientes requisitos:

    • El usuario y el servidor de IIS deben pertenecer al mismo dominio o ser de confianza para el mismo dominio.

    • Los usuarios deben tener una cuenta de usuario de Windows válida almacenada en Active Directory en el controlador de dominio.

    • El dominio debe usar un controlador de dominio de Microsoft Windows Server 2003.

    • Debe instalar el archivo IISSuba.dll en el controlador de dominio. Este archivo se copia automáticamente durante la instalación de Windows Server 2003.

  • Autenticación integrada de Windows

    La autenticación integrada de Windows puede implementarse mediante cualquier delegación restringida de Kerberos o NTLM. La delegación restringida de Kerberos es el método de autenticación más seguro. La autenticación integrada de Windows funciona bien en un entorno de intranet donde los usuarios tienen cuentas de dominio de Windows. En la autenticación integrada de Windows, el explorador intenta usar las credenciales del usuario actual de un inicio de sesión de dominio; si el intento no tiene éxito, se le pedirá al usuario que escriba un nombre de usuario y contraseña. Si usa la autenticación integrada de Windows, la contraseña del usuario no se transmite al servidor. Si el usuario ha iniciado sesión en el equipo local como un usuario del dominio, no necesita autenticarse de nuevo cuando tenga acceso a un equipo de la red en dicho dominio.

  • Autenticación Kerberos

    Este método es para los servidores que ejecutan Active Directory en Microsoft Windows 2000 Server y las versiones más recientes de Windows. Kerberos es un protocolo seguro que admite la autenticación con tickets. El servidor de autenticación Kerberos concede un ticket en respuesta a una solicitud de autenticación del equipo cliente con credenciales de usuario válidas. A continuación, el equipo cliente usa el ticket para tener acceso a los recursos de la red. Para habilitar la autenticación Kerberos, los equipos cliente y servidor deben tener una conexión de confianza en el dominio Centro de distribución de claves (KDC, Key Distribution Center). Los equipos cliente y servidor también deben poder tener acceso a Active Directory. Para obtener más información acerca de la configuración de un servidor virtual para usar autenticación Kerberos, vea el artículo 832769 de Microsoft Knowledge Base relativo al procedimiento para configurar un servidor virtual de Windows SharePoint Services a fin de usar autenticación Kerberos y procedimiento para pasar de la autenticación Kerberos a la autenticación NTLM (https://go.microsoft.com/fwlink/?linkid=115572&clcid=0xC0A).

  • Delegación restringida de Kerberos

    La autenticación restringida es la configuración más segura para la comunicación entre varios niveles de aplicación. Se puede usar la delegación restringida para pasar la identidad original del llamador a través de los diversos niveles de aplicación: por ejemplo, desde un servidor web a un servidor de aplicaciones o a un servidor de base de datos. La delegación restringida de Kerberos es también la configuración más segura para obtener acceso a los orígenes de datos back-end desde servidores de aplicaciones. La suplantación permite que un subproceso se ejecute en un contexto de seguridad distinto del contexto del proceso propietario del subproceso. En la mayoría de las implementaciones de granjas de servidores en que los servidores cliente web y los servidores de aplicaciones se ejecutan en distintos equipos, la suplantación requiere la delegación restringida de Kerberos.

  • Suplantación y delegación de Kerberos

    La delegación de Kerberos permite a una entidad autenticada suplantar las credenciales de un usuario o equipo en el mismo bosque. Cuando se habilita la suplantación, la entidad de suplantación puede usar credenciales para realizar tareas en nombre del usuario o equipo suplantado.

    Durante la suplantación, las aplicaciones ASP.NET pueden ejecutarse con las credenciales de otra entidad autenticada. De forma predeterminada, está deshabilitada la suplantación de ASP.NET. Si la suplantación está habilitada para una aplicación ASP.NET, dicha aplicación se ejecuta con las credenciales del acceso al símbolo (token) IIS para pasar a ASP.NET. Ese símbolo (token) puede ser el símbolo de usuario autenticado, por ejemplo, el símbolo (token) para un usuario de Windows que ha iniciado sesión, o el símbolo (token) que proporciona IIS para los usuarios anónimos (normalmente, la identidad IUSR_nombreDeEquipo).

    Cuando la suplantación está habilitada, sólo el código de la aplicación se ejecuta en el contexto del usuario suplantado. Las aplicaciones se compilan y la información de configuración se carga usando la identidad del proceso de ASP.NET.

    Para obtener más información sobre la suplantación, vea el artículo Suplantación de ASP.NET (https://go.microsoft.com/fwlink/?linkid=115573&clcid=0xC0A).

  • Autenticación NTLM

    Este método es para los servidores de Windows que no ejecutan Active Directory en un controlador de dominio. La autenticación NTLM es obligatoria para las redes que reciben solicitudes de autenticación de los equipos cliente que no admiten autenticación Kerberos. NTLM es un protocolo seguro que admite el cifrado y la transmisión de credenciales de usuario a través de la red. NTLM se basa en el cifrado de nombres de usuario y contraseñas antes de enviar los nombres de usuario y contraseñas a través de la red. La autenticación NTLM es obligatoria en redes donde el servidor recibe solicitudes de equipos cliente que no admiten autenticación Kerberos. NTLM es el protocolo de autenticación usado en entornos de grupos de trabajo de Windows NT Server y Windows 2000 Server, y en muchas implementaciones de Active Directory. NTLM se usa en entornos de dominio mixtos de Windows 2000 Active Directory que deben autenticar sistemas Windows NT. Cuando Windows 2000 Server se convierte al modo nativo donde no existen controladores de dominio de niveles inferiores de Windows NT, NTLM se deshabilita. En ese caso, Kerberos pasa a ser el protocolo de autenticación predeterminado para la empresa.

Proveedor de autenticación de formularios

El proveedor de autenticación de formularios admite la autenticación con credenciales almacenadas en Active Directory, en una base de datos que puede ser de SQL Server o en un almacén de datos LDAP, como Novell eDirectory, Novell Directory Services (NDS) o Sun ONE. La autenticación basada en formularios permite la autenticación de los usuarios basada en la validación de credenciales especificadas en un formulario de inicio de sesión. Las solicitudes sin autenticar se redirigen a una página de inicio de sesión, donde el usuario debe proporcionar credenciales válidas y enviar el formulario. Si la solicitud se puede autenticar, el sistema emite una cookie con una clave para el restablecimiento de la identidad en solicitudes posteriores.

Proveedor de autenticación de inicio de sesión único (SSO) web

SSO web se denomina también autenticación federada o autenticación delegada, ya que admite la comunicación segura a través de los límites de la red.

SSO es un método de autenticación que permite el acceso a varios recursos protegidos tras una única autenticación de credenciales de usuario satisfactoria. Existen varias implementaciones diferentes de autenticación de SSO. La autenticación de SSO web admite una comunicación segura a través de los límites de la red, lo que permite a los usuarios autenticados de una organización tener acceso a las aplicaciones web de otra organización. Los servicios Active Directory Federation Services (ADFS) admiten SSO web. En un escenario ADFS, dos organizaciones pueden crear una relación de federación de confianza que permita a los usuarios de una organización tener acceso a aplicaciones basadas en web controladas por otra organización. Para obtener más información sobre el uso de ADFS para configurar la autenticación de SSO web, vea Configuración de la autenticación SSO web mediante ADFS (Office SharePoint Server). Para obtener información acerca de cómo se realiza este procedimiento mediante la herramienta de línea de comandos Stsadm, vea Authentication: operación de Stsadm (Office SharePoint Server).

Descarga de este libro

En este tema se incluye el siguiente libro descargable para facilitar la lectura y la impresión:

Vea la lista completa de libros disponibles en la biblioteca técnica de Office SharePoint Server.