使用 UserAccountControl 旗標來處理使用者帳戶屬性

本文說明使用 UserAccountControl 屬性來處理使用者帳戶屬性的相關資訊。

適用於:Windows Server 2012 R2、Windows Server 2016、Windows Server 2019、Windows Server 2022
原始 KB 編號: 305144

摘要

當您開啟使用者帳戶的屬性時,按一下 [帳戶] 索引標籤,然後選取或清除 [帳戶選項] 對話方塊中的核取方塊,數值會指派給 UserAccountControl 屬性。 指派的屬性的值會說明 Windows 已啟用哪些選項。

若要檢視使用者帳戶,請按一下 [開始],依序指向 [程式] 及 [系統管理工具],然後按一下 [Active Directory 使用者及電腦]

屬性旗標清單

您可以使用 Ldp.exe 工具或 Adsiedit.msc 嵌入式管理單元來檢視和編輯這些屬性。

下表列出您可以指派的可能旗標。 您無法在使用者或電腦物件上設定某些值,因為這些值只能由目錄服務設定或重設。 Ldp.exe 會以十六進位顯示值。 Adsiedit.msc 會以十進位顯示值。 旗標為累加式。 若要停用使用者的帳戶,請將 UserAccountControl 屬性設定為 0x0202 (0x002 + 0x0200) 。 在十進位中為 514 (2 + 512) 。

注意事項

您可以在 Ldp.exe 和 Adsiedit.msc 中直接編輯 Active Directory。 只有有經驗的系統管理員應該使用這些工具來編輯 Active Directory。 從原始的 Windows 安裝媒體安裝支援工具之後,即可使用這兩種工具。

屬性旗標 十六進位的值 十進位中的值
SCRIPT 0x0001 1
ACCOUNTDISABLE 0x0002 2
HOMEDIR_REQUIRED 0x0008 8
LOCKOUT 0x0010 16
PASSWD_NOTREQD 0x0020 32
PASSWD_CANT_CHANGE

您無法直接修改 UserAccountControl 屬性來指派此權限。 如需如何以程式設計方式設定權限的資訊,請參閱 屬性旗標描述 一節。
0x0040 64
ENCRYPTED_TEXT_PWD_ALLOWED 0x0080 128
TEMP_DUPLICATE_ACCOUNT 0x0100 256
NORMAL_ACCOUNT 0x0200 512
INTERDOMAIN_TRUST_ACCOUNT 0x0800 2048
WORKSTATION_TRUST_ACCOUNT 0x1000 4096
SERVER_TRUST_ACCOUNT 0x2000 8192
DONT_EXPIRE_PASSWORD 0x10000 65536
MNS_LOGON_ACCOUNT 0x20000 131072
SMARTCARD_REQUIRED 0x40000 262144
TRUSTED_FOR_DELEGATION 0x80000 524288
NOT_DELEGATED 0x100000 1048576
USE_DES_KEY_ONLY 0x200000 2097152
DONT_REQ_PREAUTH 0x400000 4194304
PASSWORD_EXPIRED 0x800000 8388608
TRUSTED_TO_AUTH_FOR_DELEGATION 0x1000000 16777216
PARTIAL_SECRETS_ACCOUNT 0x04000000 67108864

注意事項

在 Windows Server 2003 型的網域中,LOCK_OUT 和 PASSWORD_EXPIRED 已取代為名為 ms-DS-User-Account-Control-Computed 的新屬性。 如需關於此新屬性的詳細資訊,請參閱 ms-DS-User-Account-Control-Computed 屬性

屬性旗標描述

  • 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 工作站、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 值

以下是特定物件的預設 UserAccountControl 值:

  • 一般使用者:0x200 (512)
  • 網域控制站:0x82000 (532480)
  • 工作站/伺服器:0x1000 (4096)
  • 信任:0x820 (2080)

注意事項

Windows 信任帳戶可透過 PASSWD_NOTREQD UserAccountControl 屬性值免於擁有密碼,因為信任物件不會以與使用者和計算機物件相同的方式使用傳統密碼原則和密碼屬性。

信任秘密是由網域間信任帳戶上的特殊屬性表示,表示信任的方向。 輸入信任秘密會儲存在 trustAuthIncoming 屬性中,位於信任的「受信任」端。 輸出信任秘密會儲存在信任的「信任」端的 trustAuthOutgoing 屬性中。

  • 若為雙向信任,信任每一端的INTERDOMAIN_TRUST_ACCOUNT對象都會同時設定。
  • 信任密碼是由主域控制器維護,而域控制器是 PDC () 模擬器彈性單一主機作業 (信任網域中 FSMO) 角色的主要域控制器。
  • 因此,預設會在INTERDOMAIN_TRUST_ACCOUNT帳戶上設定 PASSWD_NOTREQD UserAccountControl 屬性。