Compartir a través de


Configuración de autenticación SSO web mediante ADFS (Windows SharePoint Services)

En este artículo:

  • Acerca de los sistemas de autenticación federada

  • Antes de comenzar

  • Configuración de la aplicación web de extranet para usar la autenticación SSO web

  • Concesión de permisos de acceso a los usuarios al sitio web de extranet

  • Trabajo con el selector de personas

  • Trabajo con notificaciones de UPN y correo electrónico

  • Trabajo con notificaciones de grupos y grupos organizativos

Acerca de los sistemas de autenticación federada

Windows SharePoint Services 3.0 admite escenarios de autenticación federada cuando el sistema de autenticación no es local respecto del equipo host de Windows SharePoint Services 3.0. Los sistemas de autenticación federada también se conocen como sistemas web de inicio de sesión único (SSO). Con Servicios de federación de Active Directory (AD FS), los trabajadores de una empresa pueden obtener acceso a servidores hospedados por una empresa distinta mediante las cuentas existentes de Active Directory. ADFS también establece una relación de confianza entre dos empresas y una experiencia de inicio de sesión único satisfactoria para los usuarios finales. ADFS se basa en 302 redirecciones para autenticar usuarios finales. Se emite un token de autenticación (cookie) para los usuarios después de la autenticación.

Antes de comenzar

Antes de usar ADFS para configurar la autenticación SSO web para la aplicación web de extranet, debe familiarizarse con los siguientes recursos:

Nota

Cuando se usa el Selector de personas para agregar usuarios a Windows SharePoint Services 3.0, Windows SharePoint Services 3.0 valida los usuarios con respecto al proveedor (que, en este ejemplo, es ADFS). Por lo tanto, se deberá configurar el servidor de federación antes de configurar Windows SharePoint Services 3.0.

Importante

El proceso de instalación se ha capturado en un archivo de VBScript que puede usar para configurar Windows SharePoint Services 3.0 de forma que use ADFS en la autenticación. Este archivo de script está incluido en el archivo (SetupSharePointADFS.zip) y está disponible en el blog de Productos y Tecnologías de Microsoft SharePoint, en la sección Datos adjuntos. Para obtener más información, vea la página de blog acerca de un script para establecer que SharePoint use ADFS para la autenticación (en inglés).

Configuración de la aplicación web de extranet para usar la autenticación SSO web

  1. Instale el agente web de aplicaciones para notificaciones.

  2. Descargue e instale la revisión para ADFS descrita en el artículo en el que se explica por qué no es posible realizar la llamada al proveedor de funciones y al proveedor de pertenencia desde Windows SharePoint Services 3.0 en un equipo basado en Windows Server 2003 R2 que ejecuta ADFS y Microsoft Windows SharePoint Services 3.0 (https://go.microsoft.com/fwlink/?linkid=145397&clcid=0xC0A). Esta revisión se incluirá en Windows Server 2003 Service Pack 2 (SP2).

  3. Instale Windows SharePoint Services 3.0, configure todos los servicios y servidores de la granja, y cree una nueva aplicación web. De forma predeterminada, esta aplicación web se configurará para usar la autenticación de Windows, y será el punto de entrada a través del cual los usuarios de la intranet obtendrán acceso al sitio. En el ejemplo incluido en este artículo, el nombre del sitio es http://trey-moss.

  4. Extienda la aplicación web creada en el paso dos a otra zona. En la página de administración de aplicaciones del sitio web de Administración central de SharePoint, haga clic en Crear o extender una aplicación web, luego en Extender una aplicación web existente y, a continuación, realice lo siguiente:

    1. Agregue un encabezado de host. Este es el nombre DNS con el que los usuarios de la extranet reconocerán el sitio. En este ejemplo, el nombre es extranet.treyresearch.net.

    2. Cambie la zona a Extranet.

    3. Asigne al sitio un nombre de encabezado de host que configurará en DNS y que se usará para resolver los usuarios de la extranet.

    4. Haga clic en Usar Capa de sockets seguros (SSL) y cambie el número de puerto a 443. ADFS requiere que los sitios estén configurados para usar SSL.

    5. En el cuadro Dirección URL de carga equilibrada, elimine la cadena de texto :443. Internet Information Services (IIS) automáticamente usará el puerto 443 debido a que este número de puerto se especificó en el paso anterior.

    6. Complete el resto de los pasos incluidos en la página para finalizar la extensión de la aplicación web.

  5. En la página Asignaciones de acceso alternativas (AAM), compruebe que las direcciones URL sean similares a las de la siguiente tabla.

    Dirección URL interna Zona Dirección URL pública para zona

    http://trey-moss

    Predeterminado

    http://trey-moss

    https://extranet.treyresearch.net

    Extranet

    https://extranet.treyresearch.net

  6. Agregue un certificado de SSL al sitio web de la extranet en IIS. Asegúrese de que el certificado de SSL esté emitido para extranet.treyresearch.net, ya que éste es el nombre que usarán los clientes para obtener acceso a los sitios.

  7. Realice lo siguiente para configurar el proveedor de autenticación para que la zona de extranet en la aplicación web use SSO web:

    1. En la página de administración de aplicaciones del sitio de Administración central de la granja de servidores, haga clic en Proveedores de autenticación.

    2. Haga clic en Cambiar en la esquina superior derecha de la página y seleccione la aplicación web en la que desea habilitar SSO web.

    3. En la lista de las dos zonas asignadas para esta aplicación web (ambas deben decir Windows), haga clic en el vínculo Windows para la zona de extranet.

    4. En la sección Tipo de autenticación, haga clic en Inicio de sesión web único.

    5. En el cuadro Nombre del proveedor de pertenencia, escriba:

      SingleSignOnMembershipProvider2

      Tome nota de este valor. Deberá agregarlo al elemento de nombre de la sección <membership> en los archivos web.config que editará más adelante en este procedimiento.

    6. En el cuadro Nombre del administrador de funciones, escriba:

      SingleSignOnRoleProvider2

      Tome nota de este valor. Deberá agregarlo al elemento de nombre de la sección <roleManager> en los archivos web.config que editará más adelante en este procedimiento.

    7. Asegúrese de que la opción ¿Desea habilitar la integración de clientes? esté establecida en No.

    8. Haga clic en Guardar.

Su aplicación web de extranet está ahora configurada para usarla con SSO web. Sin embargo, en este punto, no se podrá tener acceso al sitio porque nadie tiene los permisos necesarios. El siguiente paso es asignar permisos a usuarios de forma que puedan obtener acceso a este sitio.

Nota

Una vez que se haya seleccionado SSO web como Proveedor de autenticación, se habilitará automáticamente la autenticación anónima para el sitio de SharePoint en IIS (no se requiere ninguna acción por parte del usuario). Esta configuración es necesaria para permitir el acceso al sitio usando sólo notificaciones.

Concesión de permisos de acceso a los usuarios al sitio web de la extranet

  1. Use un editor de texto para abrir el archivo web.config correspondiente al sitio web de la zona predeterminada que usa la autenticación de Windows.

  2. Agregue la siguiente entrada en cualquier parte del nodo <system.web>.

    <membership>
    
          <providers>
    
            <add name="SingleSignOnMembershipProvider2" type="System.Web.Security.SingleSignOn.SingleSignOnMembershipProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" fs="https://fs-server/adfs/fs/federationserverservice.asmx" />
    
          </providers>
    
    </membership>
    
    <roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider">
    
          <providers>
    
            <remove name="AspNetSqlRoleProvider" /> 
    
               <add name="SingleSignOnRoleProvider2" type="System.Web.Security.SingleSignOn.SingleSignOnRoleProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" fs="https://fs-server/adfs/fs/federationserverservice.asmx" />
    
         </providers>
    
    </roleManager>
    
  3. Modifique el valor de fs-server para que indique el servidor de federación de recursos (adfsresource.treyresearch.net). Asegúrese de haber especificado los nombres correctos de proveedor de pertenencia y administrador de funciones en Proveedores de autenticación de la página Administración central. Cuando se agrega esta entrada al archivo web.config, el Selector de personas de la zona predeterminada del sitio que usa la autenticación de Windows puede reconocer los proveedores de ADFS y, por lo tanto, resolver las notificaciones de ADFS. Esto le permite conceder permisos a las notificaciones de ADFS en su sitio web.

  4. Conceda acceso al sitio para las notificaciones de ADFS de la siguiente manera:

    1. Vaya al sitio web en la zona predeterminada que usa la autenticación de Windows como administrador del sitio.

    2. Haga clic en el menú Acciones del sitio, elija Configuración del sitio y, a continuación, haga clic en Permisos avanzados.

    3. Haga clic en Nuevo, y luego en Agregar usuarios.

    4. Para agregar una notificación de usuario, especifique la dirección de correo electrónico o el nombre principal de usuario (UPN) en la sección Usuarios/Grupos. Si las notificaciones de UPN y de correo electrónico se envían desde el servidor de federación, SharePoint usará el UPN para la comprobación con el proveedor de pertenencia. Por lo tanto, si desea usar el correo electrónico, deberá deshabilitar la notificación de UPN en el servidor de federación. Vea “Trabajar con notificaciones de UPN y correo electrónico” para obtener más información.

    5. Para agregar una notificación de grupo, escriba el nombre de la notificación que desea que use el sitio de SharePoint en la sección Usuarios/Grupos. Por ejemplo, cree una notificación de grupo organizativo llamada Colaborador Adatum en el servidor de federación. Agregue el nombre de notificación Colaborador Adatum al sitio de Sharepoint de la misma forma que agrega un grupo o un usuario de Windows. Puede asignar a esta notificación Miembros de la página principal [Colaborar] y cualquier usuario que obtenga acceso al sitio de SharePoint mediante esta notificación de grupo tendrá acceso de Colaborador al sitio.

    6. Seleccione el nivel de permiso adecuado o el grupo de SharePoint.

    7. Haga clic en Aceptar.

  5. Use el editor de texto que prefiera para abrir el archivo web.config para el sitio extranet y agregue la siguiente entrada en el nodo <configSections>.

    <sectionGroup name="system.web">
    
        <section name="websso" type="System.Web.Security.SingleSignOn.WebSsoConfigurationHandler, System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null" />
    
    </sectionGroup>
    
  6. Agregue la siguiente entrada al nodo <httpModules>

    <add name="Identity Federation Services Application Authentication Module" type="System.Web.Security.SingleSignOn.WebSsoAuthenticationModule, System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null" />
    

    Nota

    El módulo de autenticación ADFS debe especificarse siempre después del módulo SPRequest de Sharepoint en el nodo <httpModules> del archivo web.config. Es más seguro agregarlo como la última entrada de la sección.

  7. Agregue la siguiente entrada en cualquier parte debajo del nodo <system.web>.

    <membership defaultProvider="SingleSignOnMembershipProvider2">
    
          <providers>
    
            <add name="SingleSignOnMembershipProvider2" type="System.Web.Security.SingleSignOn.SingleSignOnMembershipProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    
          </providers>
    
     </membership>
    
    <roleManager enabled="true" defaultProvider="SingleSignOnRoleProvider2">
    
          <providers>
    
            <add name="SingleSignOnRoleProvider2" type="System.Web.Security.SingleSignOn.SingleSignOnRoleProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
    
          </providers>
    
    </roleManager>
    
    <websso>
    
      <authenticationrequired />
    
      <auditlevel>55</auditlevel>
    
      <urls>
    
        <returnurl>https://your_application</returnurl>
    
      </urls>
    
      <fs>https://fs-server/adfs/fs/federationserverservice.asmx</fs>
    
      <isSharePoint />
    
    </websso>
    

    Nota

    Cambie el valor de fs-server en el equipo del servidor de federación y cambie el valor de su_aplicación de forma que muestre la dirección URL de su aplicación web de extranet.

  8. Vaya al sitio web https://extranet.treyresearch.netcomo usuario ADFS con permisos para el sitio web de extranet.

Acerca del uso de Administración central

También puede usar la directiva Administración Central para conceder derechos a usuarios ADFS, pero es mejor no usar este método por los siguientes motivos:

  • Conceder derechos mediante directivas es una operación muy tosca. Permite al usuario (o al grupo) tener los mismos derechos en cada sitio web, en cada colección de sitios de toda la aplicación web. Se debe usar cuidadosamente; en esta situación en particular, podemos conceder acceso a usuario de ADFS sin seguir este método.

  • Después de usar los sitios en un entorno de extranet, es muy común que los usuarios internos sean responsables de conceder acceso a los sitios y al contenido. Debido a que sólo los administradores de la granja de servidores tienen acceso al sitio de administración central, la mejor opción es que los usuarios internos puedan agregar notificaciones de ADFS desde el sitio de la zona predeterminada que usa la autenticación de Windows.

  • Al ampliar aplicaciones web mediante diferentes proveedores, puede configurar uno de ellos, o más, para encontrar usuarios y grupos de distintos proveedores que usa en la aplicación web. En esta situación, configuramos nuestro sitio que usa autenticación de Windows de forma que permita a los usuarios del sitio seleccionar otros usuarios de Windows, grupos de Windows y notificaciones ADFS, todo desde un sitio.

Trabajo con el selector de personas

El selector de personas no puede realizar búsquedas con caracteres comodín para buscar funciones. Si tiene un proveedor de funciones SSO web llamado Lectores y escribe Lector en el selector de personas en el cuadro de diálogo de búsqueda, no encontrará la notificación. Si escribe Lectores, lo encontrará. No se trata de un error; simplemente no se pueden usar comodines en búsquedas con el proveedor de funciones.

Los archivos ejecutables de línea de comandos como stsadm.exe no podrá resolver las notificaciones de ADFS de forma predeterminada. Por ejemplo, es posible que desee agregar un nuevo usuario al sitio de extranet mediante el comando stsadm.exe –o adduser. Para permitir que Stsadm (u otro archivo ejecutable) resuelva usuarios, siga estos pasos para crear un nuevo archivo de configuración:

  • Cree un nuevo archivo llamado stsadm.exe.config en el mismo directorio en que se encuentra stsadm.exe (%programfiles%\Archivos comunes\Microsoft Shared Debug\Web Server Extensions\12\BIN). Agregue la siguiente entrada en el archivo stsadm.exe.config:

    <configuration>
    
      <system.web>
    
         <membership defaultProvider="SingleSignOnMembershipProvider2">
    
            <providers>
    
              <add name="SingleSignOnMembershipProvider2" type="System.Web.Security.SingleSignOn.SingleSignOnMembershipProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" fs="https://fs-server/adfs/fs/federationserverservice.asmx" />
    
            </providers>
    
         </membership>
    
    
    
          <roleManager enabled="true" defaultProvider="SingleSignOnRoleProvider2">
    
             <providers>
    
                <add name="SingleSignOnRoleProvider2" type="System.Web.Security.SingleSignOn.SingleSignOnRoleProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" fs="https://fs-server/adfs/fs/federationserverservice.asmx" />
    
            </providers>
    
    </roleManager>
    
      </system.web>
    
    </configuration>
    

    Nota

    Modifique el valor de fs-server en el servidor de federación de recursos (adfsresource.treyresearch.net).

Trabajo con notificaciones de UPN y correo electrónico

Para configurar si el servidor de federación puede o no enviar notificaciones de UPN o correo electrónico a Windows SharePoint Services 3.0, realice el siguiente procedimiento.

Configurar las notificaciones de UPN y correo electrónico en un servidor de federación

  1. En Herramientas administrativas del servidor de federación, abra el complemento ADFS.

    Nota

    También puede abrir el complemento ADFS si escribe ADFS.MSC en el cuadro de diálogo Ejecutar.

  2. Seleccione el nodo de su aplicación Windows SharePoint Services 3.0 (la aplicación debe estar ya en la lista de nodos).

  3. En la lista de notificaciones de la derecha, haga clic con el botón secundario en Correo electrónico y seleccione Habilitar o Deshabilitar.

  4. En la lista de notificaciones de la derecha, haga clic con el botón secundario en UPN y seleccione Habilitar o Deshabilitar.

    Nota

    Si UPN y Correo electrónico están habilitados, Windows SharePoint Services 3.0 usará UPN para comprobar la notificación de los usuarios. Por lo tanto, al configurar Windows SharePoint Services 3.0, tenga cuidado con las notificaciones de usuario que especifica. Tenga también en cuenta que la notificación de UPN sólo funcionará de forma coherente si los sufijos de UPN y de correo electrónico que acepta el servidor de federación son idénticos. Esto se debe a que el proveedor de pertenencia está basado en correo electrónico. Debido a esta complejidad en la configuración de notificaciones de UPN, se recomienda usar la configuración de notificaciones de usuario por correo electrónico para la autenticación de pertenencias.

Trabajo con notificaciones de grupos y grupos organizativos

En Windows SharePoint Services 3.0 se pueden asignar derechos a grupos de Active Directory mediante su adición a un grupo de SharePoint o directamente a un nivel de permisos. El nivel de permisos que tiene un usuario determinado en un sitio se calcula en función de los grupos de Active Directory y de SharePoint a los que éste pertenece y todos los niveles de permisos a los que se ha agregado el usuario directamente.

Cuando se usa ADFS como un proveedor de funciones en Windows SharePoint Services 3.0, el proceso es distinto. No hay ninguna forma de que el proveedor SSO web resuelva un grupo de Active Directory directamente; en su lugar, resuelve la pertenencia mediante notificaciones de grupo organizativo. Cuando se usa ADFS con Windows SharePoint Services 3.0, debe crear un conjunto de notificaciones de grupo organizativo en ADFS. A continuación, puede asociar varios grupos de Active Directory con una notificación de grupo organizativo ADFS.

Para que las notificaciones de grupos funcionen con la última versión de ADFS, debe editar el archivo web.config de la aplicación ADFS en IIS en el servidor de ADFS.

Abra el archivo web.config y agregue <getGroupClaims /> al nodo <FederationServerConfiguration> del nodo <System.Web>, tal como se muestra en el siguiente ejemplo.

<configuration>
     <system.web>
          <FederationServerConfiguration>
               <getGroupClaims />
          </FederationServerConfiguration>
     </system.web>
</configuration>

En Adatum (Bosque de cuentas), haga lo siguiente:

  1. Cree un grupo de Active Directory llamado Lectores de SharePoint de Trey.

  2. Cree un grupo de Active Directory llamado Colaboradores de SharePoint de Trey.

  3. Agregue Alansh al grupo Lectores y Adamcar a Colaboradores.

  4. Cree una notificación de grupo organizativo llamada Lectores de SharePoint de Trey.

  5. Cree una notificación de grupo organizativo llamada Colaboradores de SharePoint de Trey.

  6. Haga clic con el botón secundario en el almacén de cuentas de Active Directory y haga clic en Nuevo y, a continuación, en Extracción de notificación de grupo.

    1. Seleccione la notificación de grupo organizativo Lectores de SharePoint de Trey y asóciela con el grupo de Active Directory Lectores de SharePoint de Trey.

    2. Repita el paso 6 y, a continuación, asocie la notificación de grupo de colaboradores de SharePoint de Trey al grupo de Active Directory de colaboradores de SharePoint de Trey.

  7. Haga clic con el botón secundario en el asociado de cuenta Trey Research y cree las siguientes asignaciones de notificación salientes:

    1. Seleccione la notificación Lector de SharePoint de Trey y asigne la notificación saliente adatum-trey-lectores.

    2. Seleccione la notificación Colaborador de SharePoint de Trey y asigne la notificación saliente adatum-trey-colaboradores.

Nota

Las organizaciones deben acordar los nombres de asignación de notificación y éstos deben combinar de forma exacta.

Del lado de Trey Research, inicie ADFS.MSC y siga estos pasos:

  1. Cree una notificación de grupo organizativo llamada Lectores de SharePoint de Adatum.

  2. Cree una notificación de grupo organizativo llamada Colaboradores de SharePoint de Adatum.

  3. Cree asignaciones de grupos entrantes para las notificaciones:

    1. Haga clic con el botón secundario en el asociado de cuenta Adatum y haga clic en Asignación de notificación de grupo entrante.

    2. Seleccione Lectores de SharePoint de Adatum y asigne el elemento al nombre de notificación entrante adatum-trey-lectores.

    3. Seleccione Colaboradores de SharePoint de Adatum y asigne el elemento al nombre de notificación entrante adatum-trey-colaboradores.

  4. Haga clic con el botón secundario en la aplicación web Windows SharePoint Services 3.0 y, luego, haga clic en Habilitar en las notificaciones Lector y Colaborador.

Vaya al sitio http://trey-moss del lado de Trey Research como administrador del sitio y siga estos pasos:

  1. Haga clic en el menú Acciones del sitio, elija Configuración del sitio y, después, haga clic en Personas y grupos.

  2. Si no está seleccionado, haga clic en el grupo Integrantes de su sitio.

  3. Haga clic en Nuevo y, luego, en Agregar usuario en la barra de herramientas.

  4. Haga clic en el icono de libreta de direcciones junto al cuadro Usuarios/Grupos.

  5. En el cuadro Buscar del cuadro de diálogo Selector de personas, escriba

    Lectores de SharePoint de Adatum

    En la sección Conceder permisos, seleccione Página principal del grupo de SharePointVisitantes [lectores].

  6. En el cuadro Buscar, escriba

    Colaboradores de SharePoint de Adatum

    En la sección Conceder permisos, seleccione Página principal de grupo de SharePoint Miembros [colaborar].

Descarga de este libro

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

Consulte la lista completa de libros disponibles en los libros descargables para Windows SharePoint Services.