Actualización de una granja de AD FS existente mediante Windows Internal Database

Importante

En lugar de actualizar a la versión más reciente de AD FS, Microsoft recomienda encarecidamente migrar a Microsoft Entra ID. Para más información, consulte Recursos para la retirada de AD FS

En este artículo, obtendrá información sobre cómo actualizar el nivel de comportamiento de la granja de servidores para los Servicios de federación de Active Directory (AD FS) al usar Windows Internal Database (WID). A partir de Windows Server 2016, el nivel de comportamiento de la granja de servidores (FBL) se introdujo en AD FS. FBL es una configuración para toda la granja que determina las características que puede usar la granja AD FS.

Los administradores pueden agregar nuevos servidores de federación a una granja existente de Windows Server en "modo mixto". El modo mixto funciona en el mismo nivel de comportamiento de la granja de servidores que la granja original para garantizar un comportamiento coherente. Las características de las versiones más recientes de AD FS de Windows Server no se pueden configurar ni usar.

Requisitos previos

Para poder actualizar el nivel de comportamiento de la granja de servidores, debe cumplir los siguientes requisitos previos:

  • Determine a qué versión de Windows Server desea actualizar.

  • Implemente la versión de Windows Server de destino en un equipo nuevo, aplique todas las actualizaciones de Windows e instale el rol de servidor del Servicio de federación de Active Directory. Para obtener más información, consulte Agregar un servidor de federación a una granja de servidores de federación existente.

  • Si también usa el Proxy de aplicación web de Windows Server, implemente la versión de Windows Server de destino en un equipo nuevo, aplique todas las actualizaciones de Windows, instale el rol de servidor de acceso remoto y el servicio de rol del Proxy de aplicación web. Para más información, consulte Trabajo con el Proxy de aplicación web.

  • Si va a actualizar una granja AD FS en Windows Server 2016, la actualización de la granja requiere que el esquema de AD tenga al menos el nivel 85. Si va a actualizar a Windows Server AD FS 2019 o posterior, el esquema de AD debe ser al menos 88. Para obtener más información sobre cómo actualizar el dominio, consulte Actualización de controladores de dominio a una versión más reciente de Windows Server.

  • Tener un período de tiempo definido planeado para la finalización. No se recomienda operar un estado de modo mixto durante un período de tiempo prolongado. Dejar AD FS en un estado de modo mixto puede causar problemas con la granja de servidores.

  • Realice una copia de seguridad de los servidores de federación y configuración de AD FS.

Niveles de comportamiento de la granja de servidores

De forma predeterminada, el FBL de una nueva granja AD FS coincide con el valor para la versión de Windows Server del primer nodo de granja instalado.

Puede unir un servidor de AD FS de una versión posterior a una granja de servidores con un FBL inferior. La granja funciona en el mismo FBL que los nodos existentes. Cuando tiene varias versiones de Windows Server que funcionan en la misma granja de servidores en el valor FBL de la versión más baja, la granja de servidores es "mixta". Sin embargo, no puede aprovechar las características de las versiones posteriores hasta que eleve el FBL. Si su organización quiere probar las nuevas características antes de elevar el FBL, deberá implementar una granja de servidores independiente.

En la tabla siguiente se enumeran los posibles valores de FBL y los nombres de base de datos de configuración por versión de Windows Server.

Versión de Windows Server Valor FBL Nombre de base de datos de configuración de AD FS
2012 R2 1 AdfsConfiguration
2016 3 AdfsConfigurationV3
2019 y 2022 4 AdfsConfigurationV4

Nota

La actualización de FBL crea una nueva base de datos de configuración de AD FS.

Ahora que comprende el propósito del FBL y ha completado los requisitos previos, ya está listo para revisar el FBL actual.

Para buscar su FBL actual:

  1. Inicie sesión en el servidor de federación y abra una sesión de PowerShell con privilegios elevados.

  2. Ejecute el siguiente comando de PowerShell para devolver la información actual del nodo FBL y de la granja de servidores.

    Get-AdfsFarmInformation
    
  3. Revise CurrentFarmBehavior y FarmNodes.

Migración de servidores de federación

Una vez que haya recopilado la información actual de la granja de servidores de federación, estará listo para comenzar el proceso de actualización. Para comenzar la actualización:

  1. Agregue los nuevos servidores de federación a la granja existente. Para obtener más información, consulte Agregar un servidor de federación a una granja de servidores de federación existente.

  2. Inicie sesión en el nuevo servidor de federación y abra una sesión de PowerShell con privilegios elevados. Si tiene más de un servidor, ejecute solo este comando en un servidor.

  3. Establezca la propiedad de sincronización del servidor de federación para que tome el rol de equipo principal mediante la ejecución del siguiente comando. Para obtener más información, consulte Set-AdfsSyncProperties.

    Set-AdfsSyncProperties -Role PrimaryComputer
    
  4. Inicie sesión en cualquier otro servidor de federación de la granja de servidores y abra una sesión de PowerShell con privilegios elevados.

  5. Establezca el rol para que sea el equipo secundario mediante la ejecución del siguiente comando.

    Set-AdfsSyncProperties -Role SecondaryComputer -PrimaryComputerName "<primary-server-FQDN>"
    
  6. Actualice cualquier equilibrador de carga, DNS o configuraciones de red para usar los nuevos servidores de federación y compruebe que el servidor está operativo. Para obtener más información, consulte Comprobación de que el servidor de federación de Windows Server 2012 R2 está operativo.

  7. Desinstale el rol de servidor del Servicio de federación de Active Directory de los servidores anteriores y ejecute el siguiente comando para quitar las entradas obsoletas.

    Set-AdfsFarmInformation -RemoveNode "<old-server-FQDN>"
    

Ahora que tiene el nuevo servidor de federaciones en la granja de servidores y ha quitado los anteriores, está listo para actualizar el FBL. Para obtener más información sobre la retirada, consulte Pasos para retirar los servidores de AD FS.

Elevación del nivel de comportamiento de la granja de servidores (FBL)

Una vez que haya recopilado la información actual de la granja de servidores de federación, estará listo para comenzar el proceso de actualización. Para comenzar la actualización:

  1. Inicie sesión en el servidor de federación principal y abra una sesión de PowerShell con privilegios elevados.

  2. Ejecute el siguiente comando para comprobar si puede aumentar el nivel de comportamiento de una granja de servidores.

    Test-AdfsFarmBehaviorLevelRaise
    
  3. Una vez que haya revisado la salida, ejecute el siguiente comando para actualizar el nivel de comportamiento de la granja de servidores. Se le preguntará si quiere continuar.

    Invoke-AdfsFarmBehaviorLevelRaise
    
  4. Revise la salida del comando para confirmar que la operación se realizó correctamente. Para comprobar el nuevo nivel de comportamiento de la granja de servidores, ejecute el siguiente comando de PowerShell para devolver la información actual del nodo de granja de servidores y FBL.

    Get-AdfsFarmInformation
    

Ahora ha actualizado el FBL para que coincida con la versión de Windows Server de destino. Si también usa el servicio de rol del Proxy de aplicación web, continúe con la sección siguiente.

Actualización del Proxy de aplicación web

Ahora que ha actualizado el FBL, debe actualizar el Proxy de aplicación web (WAP) al nivel más reciente.

  1. Inicie sesión en el servidor del Proxy de aplicación web recién implementado y abra una sesión de PowerShell con privilegios elevados.

  2. Importe el certificado usado por el certificado de federación y anote la huella digital del certificado.

  3. Para configurar WAP, ejecute el siguiente comando de PowerShell, reemplazando el marcador de posición <value> por sus propios valores. Repita este paso para más servidores del Proxy de aplicación web.

    $trustcred = Get-Credential -Message "<Enter Domain Administrator credentials>"
    Install-WebApplicationProxy -CertificateThumbprint "<SSLCertThumbprint>" -FederationServiceName "<FScomputername>" -FederationServiceTrustCredential $trustcred
    
  4. Para revisar los servidores del Proxy de aplicación web conectados actuales, ejecute el siguiente comando, anote los valores ConnectedServerName y ConfigurationVersion.

    Get-WebApplicationProxyConfiguration
    

    Nota

    Omita el paso siguiente si ConfigurationVersion es Windows Server 2016. Este es el valor correcto para el Proxy de aplicación web en Windows Server 2016 y versiones posteriores.

  5. Quite los servidores antiguos del Proxy de aplicación web, manteniendo solo los nuevos servidores configurados en los pasos anteriores mediante la ejecución del siguiente cmdlet de PowerShell:

    Set-WebApplicationProxyConfiguration -ConnectedServersName "WAPServerName1", "WAPServerName2"
    
  6. Para actualizar el valor ConfigurationVersion de los servidores WAP, ejecute el siguiente comando de PowerShell:

    Set-WebApplicationProxyConfiguration -UpgradeConfigurationVersion
    

Ya ha completado la actualización del Proxy de aplicación web.

Modelo de confianza de certificados con Windows Hello para empresas

Si usa AD FS en Windows Server 2019 o versiones posteriores y Windows Hello para empresas en un modelo de confianza de certificados, es posible que encuentre el siguiente mensaje de error del registro de eventos.

Received invalid Oauth request. The client 'NAME' is forbidden to access the resource with scope 'ugs'.

Para corregir este error:

  1. Abra la consola Administración de AD FS. Vaya a Servicios > Descripciones de ámbito.

  2. Haga clic con el botón derecho en Descripciones de ámbito y seleccione Agregar descripción de ámbito.

  3. En nombre, introduzca ugs y seleccione Aplicar > Aceptar.

  4. Inicie PowerShell como administrador y ejecute los siguientes comandos.

    $id = (Get-AdfsApplicationPermission -ServerRoleIdentifiers 'http://schemas.microsoft.com/ws/2009/12/identityserver/selfscope' | ?{ $_.ClientRoleIdentifier -eq '38aa3b87-a06d-4817-b275-7a316988d93b' }).ObjectIdentifier
    Set-AdfsApplicationPermission -TargetIdentifier $id -AddScope 'ugs'
    
  5. Reinicie el servicio AD FS.

  6. Reinicia el cliente. Se le pedirá al usuario que configure Windows Hello para empresas.

Pasos siguientes

Ahora que ha actualizado la implementación de AD FS, estos son algunos artículos que pueden resultar útiles.