Set-ADAccountPassword
Módulo:
Modifica la contraseña de una cuenta de Active Directory.
Sintaxis
PowerShellCopy
Set-ADAccountPassword
[-WhatIf]
[-Confirm]
[-AuthType <ADAuthType>]
[-Credential <PSCredential>]
[-Identity] <ADAccount>
[-NewPassword <SecureString>]
[-OldPassword <SecureString>]
[-Partition <String>]
[-PassThru]
[-Reset]
[-Server <String>]
[<CommonParameters>]
Descripción
El cmdlet Set-ADAccountPassword establece la contraseña para un usuario, equipo o cuenta de servicio.
El parámetro Identity especifica la cuenta de Active Directory que se va a modificar.
Puede identificar una cuenta por su nombre distinguido, GUID, identificador de seguridad (SID) o nombre de cuenta del administrador de cuentas de seguridad (SAM). También puede establecer el parámetro Identity en una variable de objeto como $<localADAccountObject>
, o puede pasar un objeto a través de la canalización al parámetro Identity . Por ejemplo, puede usar el cmdlet Search-ADAccount para recuperar un objeto de cuenta y luego pasar el objeto a través de la canalización al cmdlet Set-ADAccountPassword . De manera similar, puede usar Get-ADUser , Get-ADComputer o Get-ADServiceAccount , para MSA independientes, cmdlets para recuperar objetos de cuenta que puede pasar a través de la canalización a este cmdlet.
Nota: Los MSA de grupo no pueden establecer contraseñas ya que se cambian a intervalos predeterminados.
Para los entornos de Active Directory Lightweight Directory Services (AD LDS), se debe especificar el parámetro Partición, excepto en las dos condiciones siguientes:
- El cmdlet se ejecuta desde una unidad de proveedor de Active Directory.
- Se define una partición o un contexto de nomenclatura predeterminado para el entorno de AD LDS.
Para especificar un contexto de nomenclatura predeterminado para un entorno de AD LDS, establezca la propiedad msDS-defaultNamingContext del objeto de agente de servicio de directorio (DSA) de Active Directory ( nTDSDSA ) para la instancia de AD LDS.
Ejemplos de
Ejemplo 1: establecer una contraseña para una cuenta de usuario con un nombre distinguido
PowerShellCopy
PS C:\> Set-ADAccountPassword -Identity 'CN=Elisa Daugherty,OU=Accounts,DC=Fabrikam,DC=com' -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "p@ssw0rd" -Force)
Este comando establece la contraseña de la cuenta de usuario con DistinguishedName CN = Elisa Daugherty, OU = Accounts, DC = Fabrikam, DC = com ap @ ssw0rd.
Ejemplo 2: cambiar la contraseña de un usuario especificado
PowerShellCopy
PS C:\> Set-ADAccountPassword -Identity elisada -OldPassword (ConvertTo-SecureString -AsPlainText "p@ssw0rd" -Force) -NewPassword (ConvertTo-SecureString -AsPlainText "qwert@12345" -Force)
Este comando establece la contraseña de la cuenta de usuario con SamAccountName elisada en qwert @ 12345. El uso de -NewPassword con un valor, sin proporcionar un valor de parámetro -OldPassword, también restablecerá la contraseña.
Ejemplo 3: solicitar a un usuario específico que cambie su contraseña
PowerShellCopy
PS C:\> Set-ADAccountPassword -Identity EvanNa
Please enter the current password for 'CN=Evan Narvaez,CN=Users,DC=Fabrikam,DC=com'
Password:**********
Please enter the desired password for 'CN=Evan Narvaez,CN=Users,DC=Fabrikam,DC=com'
Password:***********
Repeat Password:***********
Este comando establece la contraseña de la cuenta de usuario con DistinguishedName CN = Evan Narvaez, CN = Users, DC = Fabrikam, DC = com. El cmdlet le solicita contraseñas nuevas y antiguas.
Ejemplo 4: solicitar a un usuario una nueva contraseña que se almacena en una variable temporal
PowerShellCopy
PS C:\> $NewPassword = (Read-Host -Prompt "Provide New Password" -AsSecureString)
PS C:\> Set-ADAccountPassword -Identity DavidChe -NewPassword $NewPassword -Reset
Provide New Password: **********
Este comando solicita al usuario una nueva contraseña que se almacena en una variable temporal llamada $ NewPassword, luego la usa para restablecer la contraseña de la cuenta de usuario con SamAccountName DavidChe.
Parámetros
-Tipo de autenticación
Especifica el método de autenticación que se utilizará. Los valores aceptables para este parámetro son:
- Negociar o 0
- Básico o 1
El método de autenticación predeterminado es Negociar.
Se requiere una conexión Secure Sockets Layer (SSL) para el método de autenticación básica.
Escribe: | ADAuthType |
Valores aceptados: | Negociar, Básico |
Posición: | Llamado |
Valor por defecto: | Ninguno |
Acepte la entrada de la canalización: | Falso |
Acepta caracteres comodín: | Falso |
-Confirmar
Le solicita confirmación antes de ejecutar el cmdlet.
Escribe: | SwitchParameter |
Alias: | cf |
Posición: | Llamado |
Valor por defecto: | Falso |
Acepte la entrada de la canalización: | Falso |
Acepta caracteres comodín: | Falso |
-Credencial
Especifica las credenciales de la cuenta de usuario que se utilizarán para realizar esta tarea. Las credenciales predeterminadas son las del usuario que ha iniciado sesión actualmente, a menos que el cmdlet se ejecute desde un módulo de Active Directory para la unidad del proveedor de Windows PowerShell. Si el cmdlet se ejecuta desde una unidad de proveedor de este tipo, la cuenta asociada con la unidad es la predeterminada.
Para especificar este parámetro, puede escribir un nombre de usuario, como Usuario1 o Dominio01 \ Usuario01 o puede especificar un objeto PSCredential . Si especifica un nombre de usuario para este parámetro, el cmdlet solicita una contraseña.
También puede crear un objeto PSCredential mediante un script o mediante el cmdlet Get-Credential . A continuación, puede establecer el parámetro Credential en el objeto PSCredential .
Si las credenciales activas no tienen permiso de nivel de directorio para realizar la tarea, el módulo de Active Directory para Windows PowerShell devuelve un error de finalización.
Escribe: | PSCredential |
Posición: | Llamado |
Valor por defecto: | Ninguno |
Acepte la entrada de la canalización: | Falso |
Acepta caracteres comodín: | Falso |
-Identidad
Especifica un objeto de usuario de Active Directory proporcionando uno de los siguientes valores de propiedad. El identificador entre paréntesis es el nombre para mostrar del Protocolo ligero de acceso a directorios (LDAP) para el atributo. Los valores aceptables para este parámetro son:
- Un nombre distinguido
- Un GUID (objectGUID)
- Un identificador de seguridad (objectSid)
- Un nombre de cuenta SAM (sAMAccountName)
El cmdlet busca el contexto de nomenclatura o la partición predeterminados para encontrar el objeto. Si se encuentran dos o más objetos, el cmdlet devuelve un error permanente.
Este parámetro también puede obtener este objeto a través de la canalización o puede establecer este parámetro en una instancia de objeto.
Escribe: | Cuenta AD |
Posición: | 0 |
Valor por defecto: | Ninguno |
Acepte la entrada de la canalización: | Cierto |
Acepta caracteres comodín: | Falso |
-Nueva contraseña
Especifica un nuevo valor de contraseña. Este valor se almacena como una cadena encriptada.
Escribe: | SecureString |
Posición: | Llamado |
Valor por defecto: | Ninguno |
Acepte la entrada de la canalización: | Falso |
Acepta caracteres comodín: | Falso |
-Contraseña anterior
Especifica el valor de contraseña más reciente. Este valor se procesa como una cadena encriptada.
Escribe: | SecureString |
Posición: | Llamado |
Valor por defecto: | Ninguno |
Acepte la entrada de la canalización: | Falso |
Acepta caracteres comodín: | Falso |
-Dividir
Especifica el nombre distinguido de una partición de Active Directory. El nombre distinguido debe ser uno de los contextos de nomenclatura en el servidor de directorio actual. El cmdlet busca en esta partición para encontrar el objeto definido por el parámetro Identity .
In many cases, a default value is used for the Partition parameter if no value is specified. The rules for determining the default value are given below. Note that rules listed first are evaluated first and once a default value can be determined, no further rules are evaluated.
In Active Directory Domain Services environments, a default value for Partition is set in the following cases:
- If the Identity parameter is set to a distinguished name, the default value of Partition is automatically generated from this distinguished name.
- If running cmdlets from an Active Directory provider drive, the default value of Partition is automatically generated from the current path in the drive.
- If none of the previous cases apply, the default value of Partition is set to the default partition or naming context of the target domain.
In AD LDS environments, a default value for Partition is set in the following cases:
- If the Identity parameter is set to a distinguished name, the default value of is automatically generated from this distinguished name.
- If running cmdlets from an Active Directory provider drive, the default value of Partition is automatically generated from the current path in the drive.
- If the target AD LDS instance has a default naming context, the default value of Partition is set to the default naming context. To specify a default naming context for an AD LDS environment, set the msDS-defaultNamingContext property of the Active Directory directory service agent object (nTDSDSA) for the AD LDS instance.
- If none of the previous cases apply, the Partition parameter will not take any default value.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Reset
Specifies to reset the password on an account. When you use this parameter, you must set the NewPassword parameter. You do not need to specify the OldPassword parameter.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Server
Specifies the Active Directory Domain Services instance to connect to, by providing one of the following values for a corresponding domain name or directory server. The service may be any of the following: Active Directory Lightweight Domain Services, Active Directory Domain Services or Active Directory snapshot instance.
Domain name values:
- Fully qualified domain name (FQDN)
- NetBIOS name
Directory server values:
- Fully qualified directory server name
- NetBIOS name
- Fully qualified directory server name and port
The default value for the Server parameter is determined by one of the following methods in the order that they are listed:
- By using Server value from objects passed through the pipeline.
- By using the server information associated with the Active Directory provider drive, when running under that drive.
- By using the domain of the computer running Windows PowerShell.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
An account object is received by the Identity parameter.
Derived types, such as the following are also accepted:
- Microsoft.ActiveDirectory.Management.ADUser
- Microsoft.ActiveDirectory.Management.ADComputer
- Microsoft.ActiveDirectory.Management.ADServiceAccount
Outputs
None
Notes
- This cmdlet does not work with an Active Directory snapshot.
- This cmdlet does not work with a read-only domain controller. This cmdlet does not work when connected to global catalog port.