那里!
我是 Powershell 新手,需要一些有关此脚本的帮助。
我刚刚开始帮助我们的系统管理员在 Windows Server 2008 R2 AD 域环境中完成一些任务。我正在尝试编写一个简单的 PowerShell 脚本,允许用户重置自己的过期密码,但它不起作用。这是脚本:
$usuario = Read-Host "Introduzca el nombre de usuario";
$antigua = Read-Host "Introduzca la contraseña antigua" -AsSecureString;
$nueva = Read-Host "Introduzca la nueva contraseña" -AsSecureString;
Set-ADAccountPassword $usuario -Credential $usuario -OldPassword $antigua -NewPassword $nueva -Reset -Server <<ADServerName>>;
执行后得到以下结果:
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- CategoryInfo:PermissionDenied:({user}:ADAccount)[Set-ADAccountPassword],UnauthorizedAccessException
- FullyQualifiedErrorId:ActiveDirectoryCmdlet:System.UnauthorizedAccessException,Microsoft.ActiveDirectory.Management.Commands.SetADAccountPassword
尝试重置自己的密码的用户没有任何管理员权限。
我不知道这有什么问题,但我确信我绕过了一些 PowerShell 和/或 AD 基础知识。
先谢谢您的帮助。
恩里克
答案1
脚本现在可以运行,只需进行两处小修改:
- 在第一个变量 $usuario 前添加“-Identity”
- 在用户属性的“安全”部分中设置“SELF”对象的权限“重置密码”。