管理用于 API 管理的默认 LDAP 密码政策

Apigee 系统使用 OpenLDAP 对 API 管理环境中的用户进行身份验证。 OpenLDAP 提供了此 LDAP 密码政策功能。

本部分介绍了如何配置提供的默认 LDAP 密码政策。您可以使用此密码政策配置各种密码身份验证选项,例如连续失败的登录尝试次数,在此次数之后,密码将无法再用于对目录中的用户进行身份验证。

本部分还介绍了如何使用几个 API 来解锁根据默认密码政策中配置的属性而被锁定的用户账号。

如需了解详情,请参阅:

配置默认 LDAP 密码政策

本部分介绍了如何为以下各项配置默认 LDAP 密码政策:

为 Edge 用户和原始系统管理员配置默认 LDAP 密码政策

如需为 Edge 用户和原始系统管理员配置默认的 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 系统管理员:cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
      注意:如需为其他系统管理员(除原始系统管理员)配置 LDAP 密码政策,请参阅下面的为其他系统管理员配置 LDAP 密码政策
  3. 根据需要修改密码政策属性值。
  4. 保存配置。

为其他系统管理员配置 LDAP 密码政策

将系统管理员用户添加到 Edge 后,这些用户会继承默认密码政策,而不是原始系统管理员的系统管理员密码政策。默认密码政策会在一定时间后到期,除非另有配置。如需设置其他系统管理员用户的密码政策,使其不会过期,请按以下步骤操作:

  1. 运行以下命令,找到 dn 中的所有系统管理员:
    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

    输出结果将系统管理员用户显示为 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 的文件,并将以下内容添加到其中(替换您自己的系统管理员用户的 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,则指定在用户的密码过期时锁定用户,以使用户无法再登录。

错误
pwdLockoutDuration

由于连续登录失败次数过多,密码无法用于对用户进行身份验证的时长(以秒为单位)。

换句话说,这是用户账号由于超出 pwdMaxFailure 属性设置的连续失败登录尝试次数而保持锁定状态的时间长度。

如果将 pwdLockoutDuration 设为 0,用户账号将保持锁定状态,直至系统管理员解锁。

请参阅解锁用户账号

如果 pwdLockoutDuration 设为 >0,该属性会定义用户账号将保持锁定的时长。此时间段过后,系统会自动解锁用户账号。

我们建议将此属性设置为与 pwdFailureCountInterval 属性相同的值。

300
pwdMaxAge

用户(非系统管理员)密码过期前的秒数。值为 0 表示密码不会过期。默认值 2592000 对应于从创建密码之时起的 30 天。

用户:2592000

sysadmin: 0

pwdMaxFailure

连续失败的登录尝试次数,超过此次数后,系统将不再使用密码验证用户是否有权访问目录。

3
pwdMinLength

指定设置密码时所需的最少字符数。

8

解锁用户账号

用户的账号可能会因密码政策中设置的属性而被锁定。已分配 Apigee 系统管理员角色的用户可以使用以下 API 调用来解锁用户的账号。将 userEmailadminEmailpassword 替换为实际值。

如需解锁用户,请按如下所述操作

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