Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En AD FS en Windows Server 2012 R2, se introdujo una característica de seguridad denominada Bloqueo de extranet. Con esta característica, AD FS "dejará de autenticar" la cuenta de usuario "malintencionada" desde fuera durante un período de tiempo. Esto impide que las cuentas de usuario queden bloqueadas en Active Directory. Además de proteger a los usuarios de un bloqueo de cuenta de AD, el bloqueo de extranet de AD FS también protege contra ataques de adivinación de contraseñas por fuerza bruta.
Note
This feature only works for the extranet scenario where the authentication requests come through the Web Application Proxy and only applies to username and password authentication.
Ventajas del bloqueo de extranet
El bloqueo de extranet proporciona las siguientes ventajas clave:
- Protege las cuentas de usuario frente a ataques por fuerza bruta en los que un atacante intenta adivinar la contraseña de un usuario mediante el envío continuo de solicitudes de autenticación. En este caso, AD FS bloqueará la cuenta de usuario malintencionada para el acceso a extranet.
- Protege las cuentas de usuario del bloqueo de cuentas malintencionadas donde un atacante quiere bloquear una cuenta de usuario mediante el envío de solicitudes de autenticación con contraseñas incorrectas. En este caso, aunque AD FS bloqueará la cuenta de usuario para el acceso a la extranet, la cuenta de usuario real de AD no está bloqueada y el usuario todavía puede acceder a los recursos corporativos dentro de la organización. This is known as a soft lockout.
Cómo funciona
Hay tres opciones en AD FS que debe configurar para habilitar esta característica:
- EnableExtranetLockout <Boolean establece este valor booleano> como True si desea habilitar el bloqueo de extranet.
- ExtranetLockoutThreshold <valor entero>: define el número máximo de intentos con una contraseña incorrecta. Una vez alcanzado el umbral, AD FS rechazará inmediatamente las solicitudes de extranet sin intentar ponerse en contacto con el controlador de dominio para la autenticación, independientemente de si la contraseña es buena o incorrecta, hasta que se pase la ventana de observación de extranet. This means the value of badPwdCount attribute of an AD account won't increase while the account is soft-locked out.
- ExtranetObservationWindow <TimeSpan> esto determina durante cuánto tiempo se bloqueará temporalmente la cuenta de usuario. AD FS comenzará a realizar la autenticación de nombre de usuario y contraseña de nuevo cuando se pase la ventana. AD FS usa el atributo badPasswordTime de AD como referencia para determinar si la ventana de observación de extranet ha pasado o no. El período ha transcurrido si la hora actual es mayor que la suma de> badPasswordTime y ExtranetObservationWindow.
Note
Las funciones de bloqueo de extranet de AD FS actúan de forma independiente de las directivas de bloqueo de AD. However, we strongly recommend that you set the ExtranetLockoutThreshold parameter value to a value that's less than the AD account lockout threshold. Si no se puede hacerlo, AD FS no puede proteger las cuentas de estar bloqueadas en Active Directory.
Un ejemplo de habilitar la función de bloqueo de extranet con un máximo de 15 intentos de contraseña incorrecta y una duración del bloqueo temporal de 30 minutos es el siguiente:
Set-AdfsProperties -EnableExtranetLockout $true -ExtranetLockoutThreshold 15 -ExtranetObservationWindow (new-timespan -Minutes 30)
Esta configuración se aplicará a todos los dominios que el servicio AD FS puede autenticar. The way that it works is that when AD FS receives an authentication request, it'll access the Primary Domain Controller (PDC) through an LDAP call and perform a lookup for the badPwdCount attribute for the user on the PDC. If AD FS finds the value of badPwdCount>= ExtranetLockoutThreshold setting and the time defined in the Extranet Observation Window has not passed yet, AD FS will reject the request immediately, which means no matter whether the user enters a good or bad password from extranet, the logon will fail because AD FS doesn't send the credentials to AD. AD FS doesn't maintain any state with regard to badPwdCount or locked out user accounts. AD FS utiliza AD para todo el seguimiento del estado.
Warning
Cuando el bloqueo de extranet de AD FS en Server 2012 R2 está habilitado, AD FS valida todas las solicitudes de autenticación a través de WAP en el PDC. Cuando el PDC no está disponible, los usuarios no podrán autenticarse desde la extranet.
Server 2016 ofrece un parámetro adicional que permite a AD FS revertir a otro controlador de dominio cuando el PDC no está disponible:
- ExtranetLockoutRequirePDC <Boolean> : cuando está habilitado: el bloqueo de extranet requiere un controlador de dominio principal (PDC). Cuando está deshabilitado, el bloqueo de extranet recurre a otro controlador de dominio si el PDC no está disponible.
Puede usar el siguiente comando de Windows PowerShell para configurar el bloqueo de extranet de AD FS en Server 2016:
Set-AdfsProperties -EnableExtranetLockout $true -ExtranetLockoutThreshold 15 -ExtranetObservationWindow (new-timespan -Minutes 30) -ExtranetLockoutRequirePDC $false
Trabajar con la directiva de bloqueo de Active Directory
La característica Bloqueo de extranet de AD FS funciona independientemente de la directiva de bloqueo de AD. Sin embargo, debe asegurarse de que la configuración del Bloqueo de Extranet esté correctamente configurada para que pueda cumplir su función de seguridad junto con la política de bloqueo de AD.
Echemos un vistazo primero a la política de bloqueo de AD. Hay tres configuraciones con respecto a la directiva de bloqueo en AD:
- Umbral de bloqueo de cuenta: esta configuración es similar a la configuración ExtranetLockoutThreshold en AD FS. Determina el número de intentos de inicio de sesión erróneos que harán que una cuenta de usuario se bloquee. Para proteger las cuentas de usuario frente a un ataque de bloqueo de cuenta malintencionado, quiere establecer el valor de ExtranetLockoutThreshold en AD FS < el valor umbral de bloqueo de cuenta en AD.
- Duración del bloqueo de cuenta: esta configuración determina durante cuánto tiempo se bloquea una cuenta de usuario. Esta configuración no importa mucho en esta conversación, ya que el bloqueo de extranet siempre debe ocurrir antes de que se produzca el bloqueo de AD si está configurado correctamente.
- Restablecer contador de bloqueo de cuenta Después: esta configuración determina cuánto tiempo debe transcurrir desde el último error de inicio de sesión del usuario antes de que badPwdCount se restablezca a 0. Para que la característica Bloqueo de extranet de AD FS funcione bien con la directiva de bloqueo de AD, asegúrese de que el valor de ExtranetObservationWindow en AD FS> sea mayor que el valor de Restablecer el contador de bloqueos tras en AD. Los ejemplos siguientes explicarán por qué.
Let's take a look at two examples and see how badPwdCount changes over time based on different settings and states. Supongamos que en ambos ejemplos Umbral de Bloqueo de Cuenta = 4 y Umbral de Bloqueo de Extranet = 2. The red arrow represents bad password attempt, the green arrow represents a good password attempt. In example #1, ExtranetObservationWindow>Reset Account Lockout Counter After. In example #2, ExtranetObservationWindow<Reset Account Lockout Counter After.
Example 1
Example 2
As you can see from the above, there are two conditions when badPwdCount will be reset to 0. Uno es cuando hay un inicio de sesión exitoso. La otra es cuando es el momento de restablecer este contador tal como se define en la configuración de Restablecer contador de bloqueo de cuenta después. Cuando se restablece el contador de bloqueo de cuenta después< deExtranetObservationWindow, una cuenta no tiene ningún riesgo de estar bloqueada por AD. Sin embargo, si Restablecer el contador de bloqueos tras es mayor que> ExtranetObservationWindow, existe la posibilidad de que AD bloquee una cuenta, pero "con retraso". It may take a while to get an account locked out by AD depending on your configuration as AD FS will only allow one bad password attempt during its observation window until badPwdCount reaches Account Lockout Threshold.
Para obtener más información, consulte Configuración del bloqueo de cuenta.
Known issues
There's a known issue where the AD user account can't authenticate with AD FS because the badPwdCount attribute isn't replicated to the domain controller that ADFS is querying. See 2971171 for more details. You can find all AD FS QFEs that have been released so far here.
Puntos clave que recordar
- The Extranet Lockout feature only works for the extranet scenario where the authentication requests come through the Web Application Proxy
- La característica Bloqueo de extranet solo se aplica a la autenticación de nombre de usuario y contraseña
- AD FS doesn't keep any track of badPwdCount or users that are soft-locked out. AD FS uses AD for all state tracking
- AD FS performs a lookup for the badPwdCount attribute through LDAP call for the user on the PDC for every authentication attempt
- AD FS anterior a 2016 producirá un error si no puede acceder al PDC. AD FS 2016 introdujo mejoras que permitirán a AD FS revertir a otros controladores de dominio en caso de que el PDC no esté disponible.
- AD FS permite solicitudes de autenticación desde la extranet si badPwdCount es menor que <ExtranetLockoutThreshold.
- If badPwdCount>= ExtranetLockoutThreshold AND badPasswordTime + ExtranetObservationWindow< Current time, AD FS will reject authentication requests from extranet
- To avoid malicious account lockout, you should make sure ExtranetLockoutThreshold<Account Lockout Threshold AND ExtranetObservationWindow>Reset Account Lockout Counter