Eventos
Conferencia de la comunidad de Microsoft 365
6 may, 14 - 9 may, 0
Aptitud para la era de la inteligencia artificial en el último evento dirigido por la comunidad de Microsoft 365, 6-8 de mayo en Las Vegas.
Saber másEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
SE APLICA A:2013
2016
2019
Subscription Edition
SharePoint en Microsoft 365
Al configurar SharePoint Server con Servicios de federación de Active Directory (AD FS) (AD FS) mediante la autenticación de OpenID Connect (OIDC), necesita los siguientes recursos para realizar la configuración:
.cer
archivo.En este artículo se usan los siguientes valores de ejemplo para la configuración de AD FS OIDC:
Valor | Vínculo |
---|---|
Dirección URL del sitio de SharePoint | https://spsites.contoso.local/ |
DIRECCIÓN URL del sitio de AD FS | https://adfs.contoso.local/adfs/ |
Punto de conexión de autenticación de AD FS | https://adfs.contoso.local/adfs/oauth2/authorize |
RegisteredIssuerName URL | https://adfs.contoso.local/adfs/ |
AD FS SignoutURL | https://adfs.contoso.local/adfs/oauth2/logout |
Tipo de notificación de identidad | http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress |
Administrador de la colección de sitios de Windows | contoso\yvand |
Email valor del administrador de la colección de sitios federado (AD FS) | yvand@contoso.local |
Siga estos pasos para configurar OIDC con AD FS:
En Administración de AD FS, haga clic con el botón derecho en Application Grupos (Aplicación Grupos) y seleccione Add Application Group (Agregar grupo de aplicaciones).
Vaya a la página principal , escriba ADFSSSO en el campo Nombre y, en Aplicaciones cliente-servidor, seleccione el explorador web que accede a una plantilla de aplicación web . Después, seleccione Siguiente.
Vaya a la página Aplicación nativa y copie el valor de Identificador de cliente . Se usará más adelante como valor para DefaultClientIdentifier
el parámetro durante la configuración de SharePoint.
En el campo Dirección URL de redireccionamiento , escriba https://spsites.contoso.local/
y seleccione Agregar. Después, seleccione Siguiente.
Vaya a la página Resumen y seleccione Siguiente.
Vaya a la página Completar y seleccione Cerrar.
Exportación del certificado de firma de tokens desde AD FS. Este certificado de firma de tokens se usará en la instalación de SharePoint. En las imágenes siguientes se muestra cómo exportar el certificado de firma de tokens desde AD FS:
Asegúrese de que el identificador de notificación necesario está incluido en desde id_token
AD FS. Consideremos el correo electrónico como ejemplo:
Se supone que AD FS ha configurado la regla que lee la notificación de identificador del almacén de atributos, como AD. Siga estos pasos para crear la regla de transformación de emisión para esta aplicación web específica que creamos anteriormente en AD FS:
Abra la aplicación web que creó y vaya a la pestaña Regla de transformación de problemas .
Seleccione Agregar regla y seleccione Enviar atributos LDAP como notificaciones en la lista de opciones.
Asigne un nombre a la regla de notificación como AD y seleccione Active Directory en el menú desplegable Almacén de atributos . Cree dos asignaciones mediante los cuadros desplegables, como se muestra:
Atributo | Valor |
---|---|
Direcciones de correo electrónico | Dirección de correo electrónico |
Token-Groups: calificado por nombre de dominio | Role |
Seleccione Finalizar para cerrar el Asistente para reglas y seleccione Aceptar para cerrar las propiedades de la aplicación web. Seleccione Aceptar una vez más para completar la regla.
Si va a establecer OIDC con SharePoint Server, la notificación nbf debe configurarse en el lado del servidor de AD FS en la aplicación web que creó. Si la notificación nbf no existe en esta aplicación web, realice los pasos siguientes para crearla:
Abra la aplicación web que creó y vaya a la pestaña Regla de transformación de problemas .
Seleccione Agregar regla y, a continuación, aplicar. En el Asistente para agregar reglas de notificación de transformación , seleccione Enviar notificaciones mediante una regla personalizada en las opciones de plantilla Regla de notificación .
Seleccione Siguiente y escriba la siguiente cadena en el campo Regla personalizada :
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"] => issue(Type = "nbf", Value = "0");
Seleccione Finalizar.
En este paso, debe modificar las propiedades de la granja de servidores de SharePoint Server en función de la versión de la granja de servidores de SharePoint Server.
A partir de SharePoint Server Edición de Suscripción versión 24H1 (marzo de 2024), si la granja de SharePoint está configurada para la preferencia de características de versión temprana, puede configurar las propiedades de la granja de servidores de SharePoint Server mediante el empleo de Administración de certificados de SharePoint para administrar el certificado de cookie de nonce. El certificado de cookie de nonce forma parte de la infraestructura para garantizar que los tokens de autenticación de OIDC sean seguros. Ejecute el siguiente script de PowerShell para configurar:
Importante
Para usar este script, la granja de servidores de SharePoint debe establecerse en Versión preliminar, como se indicó anteriormente. Si no es así, el script se completará sin error, pero la llamada a $farm. UpdateNonceCertificate() no hará nada. Si no desea configurar la granja para la versión preliminar, debe usar los pasos Configurar SPSE antes de la versión 24H1 en su lugar.
Nota
Inicie el Shell de administración de SharePoint como administrador de la granja de servidores para ejecutar el siguiente script. Lea detenidamente las instrucciones mencionadas en el siguiente script de PowerShell. Tendrá que escribir sus propios valores específicos del entorno en determinados lugares.
# Set up farm properties to work with OIDC
# Create the Nonce certificate
$cert = New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -Provider 'Microsoft Enhanced RSA and AES Cryptographic Provider' -Subject "CN=SharePoint Cookie Cert"
# Import certificate to Certificate Management
$certPath = "<path and file name to save the exported cert. ex: c:\certs\nonce.pfx>"
$certPassword = ConvertTo-SecureString -String "<password>" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath $certPath -Password $certPassword
$nonceCert = Import-SPCertificate -Path $certPath -Password $certPassword -Store "EndEntity" -Exportable:$true
# Update farm property
$farm = Get-SPFarm
$farm.UpdateNonceCertificate($nonceCert,$true)
# Set up farm properties to work with OIDC
$cert = New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -Provider 'Microsoft Enhanced RSA and AES Cryptographic Provider' -Subject "CN=SharePoint Cookie Cert"
$rsaCert = [System.Security.Cryptography.X509Certificates.RSACertificateExtensions]::GetRSAPrivateKey($cert)
$fileName = $rsaCert.key.UniqueName
# If you have multiple SharePoint servers in the farm, you need to export the certificate by Export-PfxCertificate and import the certificate to all other SharePoint servers in the farm by Import-PfxCertificate.
# After the certificate is successfully imported to SharePoint Server, we will need to grant access permission to the certificate's private key.
$path = "$env:ALLUSERSPROFILE\Microsoft\Crypto\RSA\MachineKeys\$fileName"
$permissions = Get-Acl -Path $path
# Replace the <web application pool account> with the real application pool account of your web application
$access_rule = New-Object System.Security.AccessControl.FileSystemAccessRule(<Web application pool account>, 'Read', 'None', 'None', 'Allow')
$permissions.AddAccessRule($access_rule)
Set-Acl -Path $path -AclObject $permissions
# Update farm properties
$farm = Get-SPFarm
$farm.Properties['SP-NonceCookieCertificateThumbprint']=$cert.Thumbprint
$farm.Properties['SP-NonceCookieHMACSecretKey']='seed'
$farm.Update()
En este paso, creará un SPTrustedTokenIssuer
que almacenará la configuración que SharePoint necesita para confiar en AD FS como proveedor de OIDC. Inicie el Shell de administración de SharePoint como administrador de la granja de servidores y ejecute el siguiente script para crearlo:
Nota
Lea detenidamente las instrucciones mencionadas en el siguiente script de PowerShell. Tendrá que introducir valores específicos del entorno en varios lugares.
# Define claim types
$email = New-SPClaimTypeMapping "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" -IncomingClaimTypeDisplayName "EmailAddress" -SameAsIncoming
# Public key of the AD FS signing certificate
$signingCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("C:\Data\Claims\ADFS Signing.cer")
# Set the AD FS URL where users are redirected to authenticate
$authendpointurl = "https://adfs.contoso.local/adfs/oauth2/authorize"
$registeredissuernameurl = "https://adfs.contoso.local/adfs"
$signouturl = "https://adfs.contoso.local/adfs/oauth2/logout"
# Replace <Client Identifier> with the value you saved in step #3 of AD FS Setup section
$clientIdentifier = "<Your Client Identifier>"
# Create a new SPTrustedIdentityTokenIssuer in SharePoint
New-SPTrustedIdentityTokenIssuer -Name "Contoso.local" -Description "Contoso.local" -ImportTrustCertificate $signingCert -ClaimsMappings $email -IdentifierClaim $email.InputClaimType -RegisteredIssuerName $registeredissuernameurl -AuthorizationEndPointUri $authendpointurl -SignOutUrl $signouturl -DefaultClientIdentifier $clientIdentifier
El New-SPTrustedIdentityTokenIssuer
cmdlet de PowerShell se extiende para admitir OIDC mediante los parámetros siguientes:
Parámetro | Descripción |
---|---|
Name | Proporciona un nombre al nuevo emisor de tokens. |
Descripción | Proporciona una descripción al nuevo emisor de tokens. |
ImportTrustCertificate | Importa una lista de certificados X509, que se usarán para validar id_token desde el identificador OIDC. Si el IDP de OIDC usa más de un certificado para firmar digitalmente , id_token importe estos certificados y SharePoint lo validará id_token haciendo coincidir la firma digital generada mediante estos certificados. |
ClaimsMappings | Objeto SPClaimTypeMapping que se usará para identificar qué notificación de id_token se considerará identificador en SharePoint. |
IdentifierClaim | Especifica el tipo de identificador. |
RegisteredIssuerName | Especifica el identificador del emisor, que emite .id_token Se usará para validar .id_token |
AuthorizationEndPointUrl | Especifica el punto de conexión de autorización del proveedor de identidades OIDC. |
SignoutUrl | Especifica el punto de conexión de cierre de sesión del proveedor de identidades OIDC. |
DefaultClientIdentifier | Especifica el client_id de servidor de SharePoint, asignado por el proveedor de identidades OID. Esto se validará con la notificación aud en id_token . |
ResponseTypesSupported | Especifica el tipo de respuesta de IDP, que este emisor de tokens puede aceptar. Puede aceptar dos cadenas: id_token y code id_token . Si no se proporciona este parámetro, se usará code id_token como valor predeterminado. |
Importante
El certificado pertinente debe agregarse al almacén de certificados de la entidad de certificación raíz de SharePoint y hay dos opciones posibles para ello:
Si el certificado de firma de AD FS lo emite una entidad de certificación (procedimiento recomendado por motivos de seguridad).
La clave pública del certificado del emisor (y todos los intermedios) debe agregarse al almacén. Inicie el Shell de administración de SharePoint y ejecute el siguiente script para agregar el certificado:
$rootCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("C:\Data\Claims\ADFS Signing issuer.cer")
New-SPTrustedRootAuthority -Name "adfs.contoso.local signing root authority" -Certificate $rootCert
Si el certificado de firma de AD FS es un certificado autofirmado (no se recomienda por motivos de seguridad).
La clave pública del certificado de firma de AD FS debe agregarse al almacén. Inicie el Shell de administración de SharePoint y ejecute el siguiente script para agregar el certificado:
$rootCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("C:\Data\Claims\ADFS Signing.cer")
New-SPTrustedRootAuthority -Name "adfs.contoso.local signing certificate" -Certificate $rootCert
En este paso, configurará una aplicación web en SharePoint para usar la autenticación OIDC de AD FS mediante el SPTrustedIdentityTokenIssuer
que se creó en el paso anterior.
Importante
Puede completar esta configuración mediante:
Crear una nueva aplicación web y usar la autenticación OIDC de Windows y AD FS en la zona Predeterminada. Para crear una nueva aplicación web, haga lo siguiente:
Inicie el Shell de administración de SharePoint y ejecute el siguiente script para crear un nuevo SPAuthenticationProvider
:
# This script creates a trusted authentication provider for OIDC
$sptrust = Get-SPTrustedIdentityTokenIssuer "contoso.local"
$trustedAp = New-SPAuthenticationProvider -TrustedIdentityTokenIssuer $sptrust
Siga Creación de una aplicación web en SharePoint Server para crear una nueva aplicación web que habilite HTTPS/SSL denominado SharePoint - OIDC en contoso.local.
Abra el sitio de Administración central de SharePoint.
Abra la aplicación web que creó, elija "Proveedores de autenticación" en la cinta de opciones, haga clic en el vínculo de la zona "Predeterminado" y elija contoso.local como Proveedor de identidades de confianza.
Vaya a Configuración del> sistemaConfigurar asignaciones de acceso alternativasColección de asignaciones> de acceso alternativas.
Filtre la presentación con la nueva aplicación web y confirme que ve la siguiente información:
Ampliación de una aplicación web existente para establecer la autenticación OIDC de AD FS en una nueva zona. Para ampliar una aplicación web existente, haga lo siguiente:
Inicie el Shell de administración de SharePoint y ejecute PowerShell para ampliar la aplicación web:
Ejemplo:
# Get the trusted provider
$sptrust = Get-SPTrustedIdentityTokenIssuer "Contoso.local"
$ap = New-SPAuthenticationProvider -TrustedIdentityTokenIssuer $sptrust
# Get the web app
$wa = Get-SPWebApplication http://spsites
# Extend the web app to the "Intranet" zone using trusted provider auth and a SharePoint managed certificate called "SharePoint OIDC Site"
New-SPWebApplicationExtension -Identity $wa -Name "spsites" -port 443 -HostHeader 'spsites.contoso.local'-AuthenticationProvider $ap -SecureSocketsLayer -UseServerNameIndication -Certificate 'SharePoint OIDC Site' -Zone 'Intranet' -URL 'https://spsites.contoso.local'
Vaya a Configuración del> sistemaConfigurar asignaciones de acceso alternativasColección de asignaciones> de acceso alternativas.
Filtre la pantalla con la aplicación web que se ha ampliado y confirme que ve la siguiente información:
Puesto que la autenticación de OpenID Connect 1.0 solo puede funcionar con el protocolo HTTPS, se debe establecer un certificado en la aplicación web correspondiente. Si aún no lo ha hecho, siga estos pasos para establecer un certificado:
Genere el certificado de sitio:
Nota
Puede omitir este paso si ya ha generado el certificado.
Abra la consola de PowerShell de SharePoint.
Ejecute el siguiente script para generar un certificado autofirmado y agregarlo a la granja de servidores de SharePoint:
New-SPCertificate -FriendlyName "Contoso SharePoint (2021)" -KeySize 2048 -CommonName spsites.contoso.local -AlternativeNames extranet.contoso.local, onedrive.contoso.local -OrganizationalUnit "Contoso IT Department" -Organization "Contoso" -Locality "Redmond" -State "Washington" -Country "US" -Exportable -HashAlgorithm SHA256 -Path "\\server\fileshare\Contoso SharePoint 2021 Certificate Signing Request.txt"
Move-SPCertificate -Identity "Contoso SharePoint (2021)" -NewStore EndEntity
Importante
Los certificados autofirmados solo son adecuados para fines de prueba. En entornos de producción, se recomienda encarecidamente usar certificados emitidos por una entidad de certificación en su lugar.
Establezca el certificado:
Puede usar el siguiente cmdlet de PowerShell para asignar el certificado a la aplicación web:
Set-SPWebApplication -Identity https://spsites.contoso.local -Zone Default -SecureSocketsLayer -Certificate "Contoso SharePoint (2021)"
En este paso, creará una colección de sitios de equipo con dos administradores: uno como administrador de Windows y otro como administrador federado (AD FS).
Abra el sitio de Administración central de SharePoint.
Vaya a Administración de>aplicaciones Crear colecciones de sitios.
Escriba un título, una dirección URL y seleccione la plantilla Sitio de equipo.
En la sección Administrador de la colección de sitios principal, seleccione el icono del libro para abrir el cuadro de diálogo selector de Personas.
En el cuadro de diálogo selector de Personas, escriba la cuenta de administrador de Windows, por ejemplo yvand.
Para filtrar la lista de la izquierda, seleccione Organizaciones. A continuación se muestra una salida de ejemplo:
Vaya a la cuenta y seleccione Aceptar.
En la sección Administrador de colecciones de sitios secundarios, seleccione el icono del libro para abrir el cuadro de diálogo selector de Personas.
En el cuadro de diálogo selector de Personas, escriba el valor de correo electrónico exacto de la cuenta de administrador de AD FS, por ejemployvand@contoso.local.
Para filtrar la lista de la izquierda, seleccione Contoso.local. A continuación se muestra una salida de ejemplo:
Vaya a la cuenta y seleccione Aceptar.
Haga clic en Aceptar para crear la colección de sitios.
Una vez creada la colección de sitios, debería poder iniciar sesión con la cuenta de administrador de colecciones de sitios de Windows o federada (AD FS OIDC).
En la autenticación OIDC, el selector de Personas no valida la entrada, lo que puede provocar errores ortográficos o que los usuarios seleccionen accidentalmente el tipo de notificación incorrecto. Esto se puede solucionar mediante un proveedor de notificaciones personalizado o mediante el nuevo proveedor de notificaciones respaldado por UPA incluido en SharePoint Server Edición de Suscripción. Para configurar un proveedor de notificaciones respaldado por UPA, consulte Selector de Personas mejorado para la autenticación moderna.
Eventos
Conferencia de la comunidad de Microsoft 365
6 may, 14 - 9 may, 0
Aptitud para la era de la inteligencia artificial en el último evento dirigido por la comunidad de Microsoft 365, 6-8 de mayo en Las Vegas.
Saber másCursos
Módulo
Autenticación y administración de usuarios en Power Pages - Training
Aprenda a autenticarse con Power Pages.
Certificación
Microsoft Certified: Identity and Access Administrator Associate - Certifications
Muestre las características de Microsoft Entra ID para modernizar las soluciones de identidad, implementar soluciones híbridas e implementar la gobernanza de identidades.