当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 使用 UserAccountControl 标志来操作属性

作者:精品下载站 日期:2024-12-14 16:40:33 浏览:14 分类:玩电脑

使用 UserAccountControl 标志来操作属性


Active Directory UserAccountControl 属性包含用于查看或更改 Active Directory 用户帐户值的标志。

Active Directory UserAccountControl 值表示已为用户帐户启用哪些选项。

Ldp.exe 工具或 Adsiedit。 msc 管理单元工具显示 Active Directory 中的 UserAccountControl 值。

Ldp.exe 工具以十六进制显示值。 Adsiedit.msc 管理单元工具以十进制显示值。

在本文中,我们将讨论可用的UserAccountControl 标志列表。您可以分配或更改可能的 UserAccountControl 标志值。

用户或计算机对象上的某些标志值无法更改,因为可以从目录服务设置或重置它们。

UserAccountControl 标志或属性值

所有 UserAccounttrol 标志值均显示在表中。

Property flagValue in hexadecimalValue in decimalSCRIPT0x00011ACCOUNTDISABLE0x00022HOMEDIR_REQUIRED0x00088LOCKOUT0x001016PASSWD_NOTREQD0x002032PASSWD_CANT_CHANGE0x004064ENCRYPTED_TEXT_PWD_ALLOWED0x0080128TEMP_DUPLICATE_ACCOUNT0x0100256NORMAL_ACCOUNT0x0200512INTERDOMAIN_TRUST_ACCOUNT0x08002048WORKSTATION_TRUST_ACCOUNT0x10004096SERVER_TRUST_ACCOUNT0x20008192DONT_EXPIRE_PASSWORD0x1000065536MNS_LOGON_ACCOUNT0x20000131072SMARTCARD_REQUIRED0x40000262144TRUSTED_FOR_DELEGATION0x80000524288NOT_DELEGATED0x1000001048576USE_DES_KEY_ONLY0x2000002097152DONT_REQ_PREAUTH0x4000004194304PASSWORD_EXPIRED0x8000008388608TRUSTED_TO_AUTH_FOR_DELEGATION0x100000016777216PARTIAL_SECRETS_ACCOUNT0x0400000067108864

用户帐户控制标志说明

以下是 UserAccountControl 标志及其描述的综合列表。请参阅有关 UserAccountControl 的官方 Microsoft 知识库文章。

  • SCRIPT - 将运行登录脚本。
  • ACCOUNTDISABLE - 用户帐户已禁用。
  • HOMEDIR_REQUIRED - 主文件夹是必需的。
  • PASSWD_NOTREQD - 不需要密码。
  • PASSWD_CANT_CHANGE - 用户无法更改密码。这是对用户对象的权限。有关如何以编程方式设置此权限的信息,请参阅修改用户无法更改密码(LDAP 提供商)。
  • ENCRYPTED_TEXT_PASSWORD_ALLOWED - 用户可以发送加密密码。
  • TEMP_DUPLICATE_ACCOUNT - 这是主帐户位于另一个域中的用户的帐户。此帐户为用户提供对此域的访问权限,但不提供对任何信任此域的域的访问权限。它有时被称为本地用户帐户。
  • NORMAL_ACCOUNT - 这是代表典型用户的默认帐户类型。
  • INTERDOMAIN_TRUST_ACCOUNT - 这是信任其他域的系统域帐户的许可。
  • WORKSTATION_TRUST_ACCOUNT - 它是运行 Microsoft Windows NT 4.0 Workstation、Microsoft Windows NT 4.0 Server、Microsoft Windows 2000 Professional 或 Windows 2000 Server 的计算机的计算机帐户,并且是该域的成员。
  • SERVER_TRUST_ACCOUNT - 这是属于该域的域控制器的计算机帐户。
  • DONT_EXPIRE_PASSWD - 表示帐户的密码,该密码永远不会过期。
  • MNS_LOGON_ACCOUNT - 这是一个 MNS 登录帐户。
  • SMARTCARD_REQUIRED - 设置此标志后,将强制用户使用智能卡登录。
  • TRUSTED_FOR_DELEGATION - 设置此标志后,运行服务的服务帐户(用户或计算机帐户)将受到 Kerberos 委派的信任。任何此类服务都可以冒充请求该服务的客户端。要启用 Kerberos 委派服务,必须在服务帐户的 userAccountControl 属性上设置此标志。
  • NOT_DELEGATED - 设置此标志后,即使服务帐户被设置为 Kerberos 委派的可信帐户,用户的安全上下文也不会委派给服务。
  • USE_DES_KEY_ONLY - (Windows 2000/Windows Server 2003) 限制此主体仅使用数据加密标准 (DES) 密钥加密类型。
  • DONT_REQUIRE_PREAUTH - (Windows 2000/Windows Server 2003) 此帐户不需要 Kerberos 预身份验证即可登录。
  • PASSWORD_EXPIRED - (Windows 2000/Windows Server 2003) 用户的密码已过期。
  • TRUSTED_TO_AUTH_FOR_DELEGATION - (Windows 2000/Windows Server 2003) 帐户已启用委派。这是一个安全敏感的设置。启用此选项的帐户应受到严格控制。此设置允许在该帐户下运行的服务采用客户端的身份,并以该用户身份向网络上的其他远程服务器进行身份验证。
  • PARTIAL_SECRETS_ACCOUNT - (Windows Server 2008/Windows Server 2008 R2) 该帐户是只读域控制器 (RODC)。这是一个安全敏感的设置。从 RODC 中删除此设置会损害该服务器的安全性。

让我们尝试通过一个示例来理解为用户帐户设置 UserAccountControl 值。

让我们来练习!

酷提示:如何在 PowerShell 中获取活动目录用户!

UserAccountControl 514 - 禁用用户帐户

要禁用用户帐户,我们需要用户的正常帐户标志值和禁用帐户标志值。

参考上面的UserAccountControl表,

NORMAL_ACCOUNT 属性标志的十六进制值=0x0200 和十进制=512

ACCOUNTDISABLE 属性标志的十六进制值=0x0002 和十进制=2

Property flagValue in hexadecimalValue in decimalNORMAL_ACCOUNT 0x0200512 ACCOUNTDISABLE 0x00022Disabled, Don’t Expire Password 0x0202 514

UserAccountControl 标志是累积的。将十六进制值 ( 0x0200 + 0x0002=0x0202) 和十进制值 ( 512+2=514) 相加

ldp.exe 工具显示十六进制值,因此设置 UserAccountControl 0x0202 值以禁用用户帐户。

adsiedit.msc 管理单元工具显示十进制值,因此设置 UserAccountControl 514 值以禁用用户帐户。

UserAccountControl 514 - 禁用的用户帐户。

酷提示:如何在 PowerShell 中获取 aduser samaccountname!

UserAccountControl 66048 - 启用且不会过期的用户密码

要在启用的用户帐户上设置用户密码永不过期,我们需要用户普通帐户标志和密码不过期标志。

请参考上面的UserAccountControl标志表。

NORMAL_ACCOUNT 属性标志的十六进制值=0x0200 和十进制=512

DONT_EXPIRE_PASSWORD 属性标志的十六进制值=0x10000 和十进制值=65536

Property flagValue in hexadecimalValue in decimalNORMAL_ACCOUNT 0x0200512DONT_EXPIRE_PASSWORD0x1000065536Enabled, Don’t Expire Password 0x10200 66048

让我们对标志值求和以获得累积值。

十六进制值=0x200 + 0x10000=0x10200

十进制值=512 + 65536=66048

将 Active Directory UserAccountControl 属性分配给 66048 以设置用户密码永不过期。

UserAccountControl 66048 - 启用的用户帐户和密码永不过期。

酷提示:如何在 PowerShell 中从组中删除用户!

UserAccountControl 66050 - 禁用且不会过期的密码

要在禁用的用户帐户上设置用户密码永不过期,我们需要用户正常帐户标志、帐户禁用标志和密码不过期标志。

Property flagValue in hexadecimalValue in decimalNORMAL_ACCOUNT 0x0200512ACCOUNTDISABLE0x00022DONT_EXPIRE_PASSWORD0x1000065536Disabled, Don’t Expire Password0x022266050

在上表中,我们汇总了所有属性标志,以获取密码永不过期的已禁用用户帐户的累积值。

在 adsiedit.msc 工具中将 UserAccountControl 属性的值修改为 66050

UserAccountControl 66050 - 禁用的用户帐户和密码永不过期。

酷提示:事件 ID 4634 - 帐户已注销!

UserAccountControl 544 - 已启用且不需要密码

要设置启用的用户帐户不需要密码标志,我们需要 NORMAL_ACCOUNT 标志和 PASSWD_NOTREQD 标志。

Property flagValue in hexadecimalValue in decimalNORMAL_ACCOUNT 0x0200512PASSWD_NOTREQD 0x002032Enabled, Password not required0x0220544

在上表中,我们总结了所有属性标志,以获取已启用的不需要密码的用户帐户的累积值。

在 adsiedit.msc 工具中将 UserAccountControl 属性的值修改为 544

UserAccountControl 544 - 启用密码不过期的用户帐户

酷提示:如何修复 PowerShell 中的错误代码 0xc0000234 或事件 ID 4776!

UserAccountControl 546 - 已禁用且不需要密码

要设置不需要密码的禁用用户帐户,我们需要 NORMAL_ACCOUNT 标志、PASSWD_NOTREQD 标志和 ACCOUNTDISABLE 标志。

Property flagValue in hexadecimalValue in decimalNORMAL_ACCOUNT 0x0200512ACCOUNTDISABLE0x00022PASSWD_NOTREQD0x0020 32Disabled, Don’t Expire Password0x0222546

在上表中,我们总结了所有属性标志,以获取不需要密码的禁用用户帐户的累积值。

在 adsiedit.msc 工具中将 UserAccountControl 属性的值修改为 546

UserAccountControl 546 - 已禁用用户帐户,不需要密码

UserAccountControl 66082 - 已禁用,不需要密码且密码不会过期

要设置不需要密码的禁用用户帐户,我们需要 NORMAL_ACCOUNT 标志、PASSWD_NOTREQD 标志、ACCOUNTDISABLE 标志和 DONT_EXPIRE_PASSWORD 标志。

Property flagValue in hexadecimalValue in decimalNORMAL_ACCOUNT 0x0200512ACCOUNTDISABLE0x00022DONT_EXPIRE_PASSWORD0x1000065536 PASSWD_NOTREQD0x0020 32Disabled, Don’t Expire Password0x1022266082

在上表中,我们总结了所有属性标志,以获取不需要密码的禁用用户帐户的累积值。

在 adsiedit.msc 工具中将 UserAccountControl 属性的值修改为 66082

UserAccountControl 66082 - 禁用用户帐户,不需要密码 并且密码不会过期。

UserAccountControl 590336 - 已启用,用户无法更改密码,密码永不过期

将 590336 值分配给 UserAccountControl 属性以启用用户帐户,用户无法更改密码并且密码永不过期。

UserAccountControl 4128 - 工作站信任帐户,不需要密码

要设置不需要密码的工作站信任帐户,我们需要 WORKSTATION_TRUST_ACCOUNT 标志和 PASSWD_NOTREQD 标志。

Property flagValue in hexadecimalValue in decimalWORKSTATION_TRUST_ACCOUNT 0x10004096 PASSWD_NOTREQD0x0020 32Workstation trust account with a password not required 0x10204128

在上表中,我们总结了所有属性标志,以获取不需要密码的禁用用户帐户的累积值。

在 adsiedit.msc 工具中将 UserAccountControl 属性的值修改为 4128

UserAccountControl 4128 - 不需要密码的工作站信任帐户。

UserAccountControl 2080 - 域间信任帐户,不需要密码

要设置不需要密码的工作站信任帐户,我们需要 WORKSTATION_TRUST_ACCOUNT 标志和 PASSWD_NOTREQD 标志。

Property flagValue in hexadecimalValue in decimalINTERDOMAIN_TRUST_ACCOUNT 0x08002048 PASSWD_NOTREQD0x0020 32InterDomain trust account with a password not required 0x08202080

在上表中,我们总结了所有属性标志,以获取不需要密码的禁用用户帐户的累积值。

在 adsiedit.msc 工具中将 UserAccountControl 属性的值修改为 2080

UserAccountControl 2080 - 不需要密码的域间信任帐户。

结论 - UserAccountControl 标志

我希望上述有关 Active Directory UserAccountControl 值的文章对您有所帮助。

UserAccountControl 属性标志是累积的。

您可以对 UserAccountControl 标志的十六进制或十进制值求和,以分别将其分配给 ldp.exe 和 Adsiedit.exe 管理单元工具中的 UserAccountControl 属性值。

您可以在 ShellGeek 主页上找到有关 PowerShell Active Directory 命令和 PowerShell 基础知识的更多主题。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯