Restricciones de cuenta y directivas de contraseñas en Azure Active DirectoryPassword policies and account restrictions in Azure Active Directory

En Azure Active Directory (Azure AD), hay una directiva de contraseñas que define la configuración, como la complejidad de la contraseña, la longitud o la edad.In Azure Active Directory (Azure AD), there's a password policy that defines settings like the password complexity, length, or age. También hay una directiva que define los caracteres y longitudes de nombres de usuario aceptables.There's also a policy that defines acceptable characters and length for usernames.

Cuando se usa el autoservicio de restablecimiento de contraseña (SSPR) para cambiar o restablecer una contraseña en Azure AD, se comprueba la directiva de contraseñas.When self-service password reset (SSPR) is used to change or reset a password in Azure AD, the password policy is checked. Si la contraseña no cumple los requisitos de la directiva, se le pedirá al usuario que vuelva a intentarlo.If the password doesn't meet the policy requirements, the user is prompted to try again. Los administradores de Azure tienen algunas restricciones en el uso de SSPR que son diferentes de las restricciones para cuentas de usuario normales.Azure administrators have some restrictions on using SSPR that are different to regular user accounts.

En este artículo se describe la configuración de directiva de contraseñas y los requisitos de complejidad asociados a las cuentas de usuario en el inquilino de Azure AD. También se describe cómo puede usar PowerShell para comprobar o establecer la configuración de expiración de contraseña.This article describes the password policy settings and complexity requirements associated with user accounts in your Azure AD tenant, and how you can use PowerShell to check or set password expiration settings.

Directivas de nombre de usuarioUsername policies

Cada cuenta que inicia sesión en Azure AD debe tener un valor de atributo de nombre principal de usuario (UPN) único asociado a esa cuenta.Every account that signs in to Azure AD must have a unique user principal name (UPN) attribute value associated with their account. En entornos híbridos con un entorno local de Active Directory Domain Services (AD DS) sincronizado con Azure AD mediante Azure AD Connect, el UPN de Azure AD está establecido en el UPN local de forma predeterminada.In hybrid environments with an on-premises Active Directory Domain Services (AD DS) environment synchronized to Azure AD using Azure AD Connect, by default the Azure AD UPN is set to the on-prem UPN.

En la siguiente tabla, se describen las directivas de nombre de usuario que se aplican tanto a las cuentas de AD DS locales que están sincronizadas con Azure AD como a las cuentas de usuario que solo están en la nube creadas directamente en Azure AD:The following table outlines the username policies that apply to both on-premises AD DS accounts that are synchronized to Azure AD, and for cloud-only user accounts created directly in Azure AD:

PropiedadProperty Requisitos de UserPrincipalNameUserPrincipalName requirements
Caracteres permitidosCharacters allowed
  • A – ZA – Z
  • a - za - z
  • 0 – 90 – 9
  • ' .' . - _ ! - _ ! # ^ ~# ^ ~
Caracteres no permitidosCharacters not allowed
  • Cualquier carácter "@" que no separa el nombre de usuario del dominio.Any "@" character that's not separating the username from the domain.
  • No puede contener un carácter de punto "." inmediatamente antes del símbolo "@".Can't contain a period character "." immediately preceding the "@" symbol
Restricciones de longitudLength constraints
  • La longitud total no debe superar los 113 caracteres.The total length must not exceed 113 characters
  • Puede haber hasta 64 caracteres antes del símbolo "@"There can be up to 64 characters before the "@" symbol
  • Puede haber hasta 48 caracteres después del símbolo "@"There can be up to 48 characters after the "@" symbol

Directivas de contraseña de Azure ADAzure AD password policies

Una directiva de contraseñas se aplica a todas las cuentas de usuario que se crean y administran directamente en Azure AD.A password policy is applied to all user accounts that are created and managed directly in Azure AD. Algunos de los ajustes de esta directiva de contraseñas no se pueden modificar, aunque puede configurar contraseñas prohibidas personalizadas para la protección de contraseñas de Azure AD o parámetros de bloqueo de cuentas.Some of these password policy settings can't be modified, though you can configure custom banned passwords for Azure AD password protection or account lockout parameters.

De manera predeterminada, una cuenta se bloquea después de 10 intentos de inicio de sesión no superados con una contraseña incorrecta.By default, an account is locked out after 10 unsuccessful sign-in attempts with the wrong password. El usuario se queda bloqueado durante un minuto.The user is locked out for one minute. Más intentos de inicio de sesión incorrectos bloquean el usuario durante mayor cantidad de tiempo.Further incorrect sign-in attempts lock out the user for increasing durations of time. El bloqueo inteligente realiza un seguimiento de los últimos tres códigos hash de contraseña incorrecta para evitar que aumente el contador de bloqueo con la misma contraseña.Smart lockout tracks the last three bad password hashes to avoid incrementing the lockout counter for the same password. Si alguien escribe la misma contraseña incorrecta varias veces, este comportamiento no hará que la cuenta se bloquee. Puede definir el umbral de bloqueo inteligente y la duración.If someone enters the same bad password multiple times, this behavior will not cause the account to lock out. You can define the smart lockout threshold and duration.

La directiva de contraseñas de Azure AD no se aplica a las cuentas de usuario que se sincronizan desde un entorno de AD DS local mediante Azure AD Connect, a menos que habilite EnforceCloudPasswordPolicyForPasswordSyncedUsers.The Azure AD password policy doesn't apply to user accounts synchronized from an on-premises AD DS environment using Azure AD Connect, unless you enable EnforceCloudPasswordPolicyForPasswordSyncedUsers.

Se definen las siguientes opciones de directiva de contraseñas de Azure AD.The following Azure AD password policy options are defined. A menos que se indique, no se puede cambiar estos ajustes:Unless noted, you can't change these settings:

PropiedadProperty RequisitosRequirements
Caracteres permitidosCharacters allowed
  • A – ZA – Z
  • a - za - z
  • 0 – 90 – 9
  • @ # $ % ^ & * - _ !@ # $ % ^ & * - _ ! + = [ ] { } | \ : ' , .+ = [ ] { } | \ : ' , . ?? / ` ~ " ( ) ; / ` ~ " ( ) ;
  • espacio en blancoblank space
Caracteres no permitidosCharacters not allowed Caracteres Unicode.Unicode characters.
Restricciones de contraseñaPassword restrictions
  • Un mínimo de 8 caracteres y un máximo de 256 caracteres.A minimum of 8 characters and a maximum of 256 characters.
  • requiere al menos tres de los cuatro requisitos siguientes:Requires three out of four of the following:
    • Caracteres en minúsculas.Lowercase characters.
    • Caracteres en mayúsculas.Uppercase characters.
    • Números (0-9).Numbers (0-9).
    • Símbolos (vea las anteriores restricciones de contraseña).Symbols (see the previous password restrictions).
Duración de la expiración de la contraseña (vigencia máxima de la contraseña)Password expiry duration (Maximum password age)
  • Valor predeterminado: 90 días.Default value: 90 days.
  • El valor se puede configurar con el cmdlet Set-MsolPasswordPolicydel módulo Active Directory para Windows PowerShell.The value is configurable by using the Set-MsolPasswordPolicy cmdlet from the Azure Active Directory Module for Windows PowerShell.
Notificación de expiración de contraseña (cuándo se notifica a los usuarios la expiración de la contraseña)Password expiry notification (When users are notified of password expiration)
  • Valor predeterminado: 14 días (antes de que expire la contraseña).Default value: 14 days (before password expires).
  • El valor se puede configurar con el cmdlet Set-MsolPasswordPolicy.The value is configurable by using the Set-MsolPasswordPolicy cmdlet.
Expiración de las contraseñas (permitir que las contraseñas no expiren nunca)Password expiry (Let passwords never expire)
  • Valor predeterminado: falso (indica que las contraseñas tienen una fecha de expiración).Default value: false (indicates that password's have an expiration date).
  • El valor se puede configurar para cuentas de usuario individuales mediante el cmdlet Set-MsolUser.The value can be configured for individual user accounts by using the Set-MsolUser cmdlet.
Historial de cambios de contraseñaPassword change history La última contraseña no puede usarse de nuevo cuando el usuario cambia una contraseña.The last password can't be used again when the user changes a password.
Historial de restablecimientos de contraseñaPassword reset history La última contraseña puede usarse de nuevo cuando el usuario restablece una contraseña olvidada.The last password can be used again when the user resets a forgotten password.

Diferencias entre directivas de restablecimiento de administradorAdministrator reset policy differences

De forma predeterminada, las cuentas de administrador están habilitadas para el autoservicio de restablecimiento de contraseña, y se aplica una robusta directiva de restablecimiento de contraseña de dos puertas de forma predeterminada.By default, administrator accounts are enabled for self-service password reset, and a strong default two-gate password reset policy is enforced. Esta directiva puede ser diferente de la que se ha definido para los usuarios y no se puede cambiar.This policy may be different from the one you have defined for your users, and this policy can't be changed. Siempre debe probar la funcionalidad de restablecimiento de contraseña como usuario sin los roles de administrador de Azure asignados.You should always test password reset functionality as a user without any Azure administrator roles assigned.

Con una directiva de dos puertas, los administradores no tienen posibilidad de usar preguntas de seguridad.With a two-gate policy, administrators don't have the ability to use security questions.

Una directiva de dos puertas requiere dos elementos de los datos de autenticación, como una dirección de correo electrónico, una aplicación de autenticador o un número de teléfono.The two-gate policy requires two pieces of authentication data, such as an email address, authenticator app, or a phone number. Se aplica una directiva de dos puertas en las siguientes circunstancias:A two-gate policy applies in the following circumstances:

  • Todos los roles de administrador siguientes se ven afectados:All the following Azure administrator roles are affected:

    • Administrador del departamento de soporte técnicoHelpdesk administrator
    • Administrador del soporte técnico del servicioService support administrator
    • Administrador de facturaciónBilling administrator
    • Soporte para asociados de nivel 1Partner Tier1 Support
    • Soporte para asociados de nivel 2Partner Tier2 Support
    • Administrador de ExchangeExchange administrator
    • Administrador de buzones de correoMailbox Administrator
    • Administrador de Skype EmpresarialSkype for Business administrator
    • Administrador de usuariosUser administrator
    • Escritores de directoriosDirectory writers
    • Administrador global y administrador de la compañíaGlobal administrator or company administrator
    • Administrador de SharePointSharePoint administrator
    • Administrador de cumplimientoCompliance administrator
    • Administrador de aplicacionesApplication administrator
    • Administrador de seguridadSecurity administrator
    • Administrador de roles con privilegiosPrivileged role administrator
    • Administrador de IntuneIntune administrator
    • Administrador local de dispositivo unido a Azure ADAzure AD Joined Device Local Administrator
    • Administrador del servicio de proxy de la aplicaciónApplication proxy service administrator
    • Administrador de Dynamics 365Dynamics 365 administrator
    • Administrador de servicios de Power BIPower BI service administrator
    • Administrador de autenticaciónAuthentication administrator
    • Administrador de contraseñasPassword administrator
    • Administrador de autenticación con privilegiosPrivileged Authentication administrator
  • Una vez transcurridos 30 días en una suscripción de pruebaIf 30 days have elapsed in a trial subscription; or

  • Se ha configurado un dominio personalizado para el inquilino de Azure AD, como contoso.com; oA custom domain has been configured for your Azure AD tenant, such as contoso.com; or

  • Azure AD Connect sincroniza identidades desde el directorio localAzure AD Connect is synchronizing identities from your on-premises directory

Puede deshabilitar el uso de SSPR para las cuentas de administrador mediante el cmdlet de PowerShell Set-MsolCompanySettings.You can disable the use of SSPR for administrator accounts using the Set-MsolCompanySettings PowerShell cmdlet. El parámetro -SelfServePasswordResetEnabled $False deshabilita SSPR para los administradores.The -SelfServePasswordResetEnabled $False parameter disables SSPR for administrators.

ExcepcionesExceptions

Las directivas de una puerta necesitan información de autenticación, como una dirección de correo electrónico o un número de teléfono.A one-gate policy requires one piece of authentication data, such as an email address or phone number. Se aplica una directiva de una puerta en las siguientes circunstancias:A one-gate policy applies in the following circumstances:

  • Se encuentra en los primeros 30 días de una suscripción de prueba; oIt's within the first 30 days of a trial subscription; or
  • No se ha configurado un dominio personalizado para el inquilino de Azure AD, así que se usa el predeterminado, * .onmicrosoft.com.A custom domain hasn't been configured for your Azure AD tenant so is using the default *.onmicrosoft.com. No es conveniente utilizar el dominio * .onmicrosoft.com predeterminado para producción yThe default *.onmicrosoft.com domain isn't recommended for production use; and
  • Azure AD Connect no sincroniza identidadesAzure AD Connect isn't synchronizing identities

Directivas de expiración de contraseñasPassword expiration policies

Un administrador global o un administrador de usuarios puede usar el módulo Microsoft Azure AD para Windows PowerShell al configurar las contraseñas de usuario para que no expiren.A global administrator or user administrator can use the Microsoft Azure AD Module for Windows PowerShell to set user passwords not to expire.

También puede usar cmdlets de PowerShell para quitar la configuración de no expirar nunca o ver qué contraseñas de usuario están configuradas para que no expiren nunca.You can also use PowerShell cmdlets to remove the never-expires configuration or to see which user passwords are set to never expire.

Esta guía se aplica a otros proveedores (como Intune y Microsoft 365) que también dependen de Azure AD para los servicios de identidad y directorio.This guidance applies to other providers, such as Intune and Microsoft 365, which also rely on Azure AD for identity and directory services. La expiración de contraseñas es la única parte de la directiva que se puede cambiar.Password expiration is the only part of the policy that can be changed.

Nota

Solo las contraseñas de cuentas de usuario que no se sincronizan a través de Azure AD Connect pueden configurarse para que no expiren.Only passwords for user accounts that aren't synchronized through Azure AD Connect can be configured to not expire. Para obtener más información sobre la sincronización de directorios, vea el artículo sobre cómo conectar AD con Azure AD.For more information about directory synchronization, see Connect AD with Azure AD.

Establecer o comprobar directivas de contraseña mediante PowerShellSet or check the password policies by using PowerShell

Para empezar, descargue e instale el módulo de Azure AD PowerShell y conéctelo al inquilino de Azure AD.To get started, download and install the Azure AD PowerShell module and connect it to your Azure AD tenant.

Una vez instalado el módulo, use los pasos a continuación para completar cada tarea según sea necesario.After the module is installed, use the following steps to complete each task as needed.

Comprobación de la directiva de expiración de una contraseñaCheck the expiration policy for a password

  1. Abra un símbolo del sistema de PowerShell y conéctese con su inquilino de Azure AD mediante una cuenta de administrador global o administrador de usuarios.Open a PowerShell prompt and connect to your Azure AD tenant using a global administrator or user administrator account.

  2. Ejecute uno de los siguientes comandos para un usuario individual o para todos los usuarios:Run one of the following commands for either an individual user or for all users:

    • Para ver si la contraseña de un solo usuario está configurada para no expirar nunca, ejecute el siguiente cmdlet.To see if a single user's password is set to never expire, run the following cmdlet. Reemplace <user ID> por el id. del usuario que quiere comprobar, como driley@contoso.onmicrosoft.com:Replace <user ID> with the user ID of the user you want to check, such as driley@contoso.onmicrosoft.com:

      Get-AzureADUser -ObjectId <user ID> | Select-Object @{N="PasswordNeverExpires";E={$_.PasswordPolicies -contains "DisablePasswordExpiration"}}
      
    • Para ver la configuración La contraseña nunca expira de todos los usuarios, ejecute el siguiente cmdlet:To see the Password never expires setting for all users, run the following cmdlet:

      Get-AzureADUser -All $true | Select-Object UserPrincipalName, @{N="PasswordNeverExpires";E={$_.PasswordPolicies -contains "DisablePasswordExpiration"}}
      

Configuración de una contraseña para que caduqueSet a password to expire

  1. Abra un símbolo del sistema de PowerShell y conéctese con su inquilino de Azure AD mediante una cuenta de administrador global o administrador de usuarios.Open a PowerShell prompt and connect to your Azure AD tenant using a global administrator or user administrator account.

  2. Ejecute uno de los siguientes comandos para un usuario individual o para todos los usuarios:Run one of the following commands for either an individual user or for all users:

    • Para establecer la contraseña de un usuario para que expire, ejecute el cmdlet siguiente.To set the password of one user so that the password expires, run the following cmdlet. Reemplace <user ID> por el id. del usuario que quiere comprobar, como driley@contoso.onmicrosoft.com.Replace <user ID> with the user ID of the user you want to check, such as driley@contoso.onmicrosoft.com

      Set-AzureADUser -ObjectId <user ID> -PasswordPolicies None
      
    • Para establecer las contraseñas de todos los usuarios de la organización de modo que expiren, use el siguiente cmdlet:To set the passwords of all users in the organization so that they expire, use the following cmdlet:

      Get-AzureADUser -All $true | Set-AzureADUser -PasswordPolicies None
      

Configure una contraseña para que no caduque nuncaSet a password to never expire

  1. Abra un símbolo del sistema de PowerShell y conéctese con su inquilino de Azure AD mediante una cuenta de administrador global o administrador de usuarios.Open a PowerShell prompt and connect to your Azure AD tenant using a global administrator or user administrator account.

  2. Ejecute uno de los siguientes comandos para un usuario individual o para todos los usuarios:Run one of the following commands for either an individual user or for all users:

    • Para establecer la contraseña de un usuario para que no expire nunca, ejecute el cmdlet siguiente.To set the password of one user to never expire, run the following cmdlet. Reemplace <user ID> por el id. del usuario que quiere comprobar, como driley@contoso.onmicrosoft.com.Replace <user ID> with the user ID of the user you want to check, such as driley@contoso.onmicrosoft.com

      Set-AzureADUser -ObjectId <user ID> -PasswordPolicies DisablePasswordExpiration
      
    • Para configurar las contraseñas de todos los usuarios de una organización para que nunca expiren, ejecute el siguiente cmdlet:To set the passwords of all the users in an organization to never expire, run the following cmdlet:

      Get-AzureADUser -All $true | Set-AzureADUser -PasswordPolicies DisablePasswordExpiration
      

    Advertencia

    La antigüedad de las contraseñas establecidas en -PasswordPolicies DisablePasswordExpiration sigue basándose en el atributo pwdLastSet.Passwords set to -PasswordPolicies DisablePasswordExpiration still age based on the pwdLastSet attribute. En función del pwdLastSet atributo, si cambia la expiración a -PasswordPolicies None, todas las contraseñas que tengan una pwdLastSet cuya antigüedad sea superior a 90 días requieren que el usuario las cambie la próxima vez que se inicie sesión.Based on the pwdLastSet attribute, if you change the expiration to -PasswordPolicies None, all passwords that have a pwdLastSet older than 90 days require the user to change them the next time they sign in. Este cambio puede afectar a gran cantidad de usuarios.This change can affect a large number of users.

Pasos siguientesNext steps

Para empezar a trabajar con SSPR, consulte Tutorial: Habilitación del autoservicio de restablecimiento de contraseña de Azure Active Directory para que los usuarios puedan desbloquear su cuenta o restablecer contraseñasTo get started with SSPR, see Tutorial: Enable users to unlock their account or reset passwords using Azure Active Directory self-service password reset.

Si usted o los usuarios tienen problemas con SSPR, consulte Solución de problemas de autoservicio de restablecimiento de contraseña.If you or users have problems with SSPR, see Troubleshoot self-service password reset