管理 API 管理的預設 LDAP 密碼政策

Apigee 系統會使用 OpenLDAP 驗證 API 管理環境中的使用者。 OpenLDAP 提供這項 LDAP 密碼政策功能。

本節說明如何設定已傳送的預設 LDAP 密碼政策。使用這項密碼政策即可設定各種密碼驗證選項,例如連續登入失敗次數。一旦超過這個次數,就無法再以密碼驗證該目錄的使用者。

本節也會說明如何使用一些 API,根據預設密碼政策中設定的屬性,解鎖已鎖定的使用者帳戶。

若需更多資訊,請參閱:

設定預設 LDAP 密碼政策

本節說明如何為下列項目設定預設 LDAP 密碼政策:

為 Edge 使用者和原始 sysadmin 設定預設 LDAP 密碼政策

如何為 Edge 使用者和原始 sysadmin 設定預設 LDAP 密碼政策:

  1. 使用 LDAP 用戶端 (例如 Apache Studio 或 ldapmodify) 連線至 LDAP 伺服器。根據預設,OpenLDAP 伺服器會監聽 OpenLDAP 節點的通訊埠 10389。

    如要建立連線,請指定 cn=manager,dc=apigee,dc=com 的繫結 DN 或使用者,以及您在 Edge 安裝時設定的 OpenLDAP 密碼。

  2. 使用用戶端前往以下應用程式的密碼政策屬性:
    • Edge 使用者:cn=default,ou=pwpolicies,dc=apigee,dc=com
    • 原始 Edge sysadmin:cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
      注意:如要為其他 sysadmin (非原始系統管理員) 設定 LDAP 密碼政策,請參閱下方的為其他系統管理員設定 LDAP 密碼政策
  3. 視需要編輯密碼政策屬性值。
  4. 儲存設定。

為其他系統管理員設定 LDAP 密碼政策

將 sysadmin 使用者新增至 Edge 時,系統會沿用預設密碼政策,而非原始 sysadmin 的 sysadmin 密碼政策。除非另外設定,否則預設密碼政策會在一定時間後到期。如要設定其他 sysadmin 使用者的密碼政策,使其不會過期,請按照下列步驟操作:

  1. 執行下列指令,找出 dn 所有 sysadmin:
    ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -H "ldap://:10389" -b "cn=sysadmin,ou=userroles,ou=global,dc=apigee,dc=com" -s base
     -LLL

    輸出結果顯示 sysadmin 使用者為 roleOccupant

    dn: cn=sysadmin,ou=userroles,ou=global,dc=apigee,dc=com
    objectClass: organizationalRole
    objectClass: top
    cn: sysadmin
    roleOccupant: uid=admin,ou=users,ou=global,dc=apigee,dc=com
    roleOccupant: uid=2a0056b4-5c62-49de-8fb3-925ch67a3e45,ou=users,ou=global,dc=apigee,dc=com
  2. 建立名為 ppchange.ldif 的新檔案,並在其中加入以下內容 (取代您自己的 sysadmin 使用者的 Dn:
    dn: uid=new-sysadmin-uid,ou=users,ou=global,dc=apigee,dc=com
    changetype: modify
    add: pwdPolicySubentry
    pwdPolicySubentry: cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
  3. 輸入下列指令,修改使用者:
    ldapmodify -x -w "$ldappassword" -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f ppchange.ldif
  4. 使用 ldap 搜尋指令驗證變更:
    ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -H "ldap://:10389" -b "uid=new-sysadmin-uid,ou=users,ou=global,dc=apigee,dc=com" -s base -LLL pwdPolicySubentry

    輸出結果會顯示 pwdPolicySubentry 的新增:

    dn: uid=new-admin-uid,ou=users,ou=global,dc=apigee,dc=com
    pwdPolicySubentry: cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com

  5. 針對每位系統管理員重複執行步驟 2 到 4。

預設 LDAP 密碼政策屬性

屬性 說明 預設
pwdExpireWarning
密碼過期前的秒數上限;系統會在到期前將到期警告訊息傳回給正在驗證目錄的使用者。

604800

(等於 7 天)

pwdFailureCountInterval

從失敗計數器中清除連續失敗繫結嘗試的秒數。

換句話說,這個秒數過後,系統會重設連續嘗試登入失敗的秒數。

如果將 pwdFailureCountInterval 設為 0,則只有成功的驗證可以重設計數器。

如果 pwdFailureCountInterval 設為 >0,這個屬性會定義一個時間長度,在這段時間過後自動重設連續登入失敗次數,即使未驗證成功也一樣。

建議您將這個屬性設為與 pwdLockoutDuration 屬性相同的值。

300
pwdInHistory

使用者的密碼數量上限,會儲存在 pwdHistory 屬性中。

使用者變更密碼後,無法變更密碼。

3
pwdLockout

如為 TRUE,可指定在使用者密碼到期時遭到鎖定,讓使用者無法再登入。

false
pwdLockoutDuration

連續嘗試登入失敗的次數過多,無法再使用密碼來驗證使用者。

換句話說,使用者帳戶因為超過 pwdMaxFailure 屬性設定的連續嘗試失敗次數,會維持鎖定狀態的時間長度。

如果 pwdLockoutDuration 設為 0,使用者帳戶會保持鎖定狀態,直到系統管理員將其解鎖為止。

請參閱解鎖使用者帳戶

如果 pwdLockoutDuration 設為 >0,這個屬性會定義使用者帳戶鎖定的時間長度。這段期間過後,使用者帳戶就會自動解鎖。

建議您將這個屬性設為與 pwdFailureCountInterval 屬性相同的值。

300
pwdMaxAge

使用者 (非 sysadmin) 密碼到期的秒數。如果值為 0,表示密碼不會過期。預設值 2592000 對應至密碼建立後的 30 天。

使用者:2592000

sysadmin:0

pwdMaxFailure

連續登入失敗次數。達到此上限後,使用者就無法使用密碼驗證目錄使用者的身分。

3
pwdMinLength

指定設定密碼時所需的字元數下限。

8

解鎖使用者帳戶

使用者的帳戶可能會因密碼政策中設定的屬性而遭到鎖定。具備 sysadmin Apigee 角色的使用者可以使用下列 API 呼叫解鎖使用者帳戶。將 userEmailadminEmailpassword 替換為實際值。

如何解鎖使用者:

/v1/users/userEmail/status?action=unlock -X POST -u adminEmail:password