Как управлять правилами для паролей LDAP по умолчанию для управления API

Система Apigee использует OpenLDAP для аутентификации пользователей в среде управления API. OpenLDAP предоставляет эту функцию правил паролей LDAP.

В этом разделе описывается, как настроить стандартные правила LDAP для паролей. Используйте эти правила, чтобы настроить различные параметры аутентификации по паролю, например количество неудачных попыток входа, после которого пароль больше нельзя использовать для аутентификации пользователя в каталоге.

В этом разделе также описывается, как использовать несколько API для разблокировки аккаунтов пользователей, которые были заблокированы в соответствии с атрибутами, настроенными в правилах паролей по умолчанию.

Дополнительную информацию можно найти в следующих статьях:

Настройка правил для паролей LDAP по умолчанию

В этом разделе объясняется, как настроить правила по умолчанию для паролей LDAP для:

Настройка правил для паролей LDAP по умолчанию для пользователей Edge и исходного системного администратора

Чтобы настроить правила по умолчанию для паролей LDAP пользователей Edge и исходного системного администратора, выполните следующие действия:

  1. Подключитесь к серверу LDAP с помощью клиента LDAP, например Apache Studio или ldapmodify. По умолчанию сервер OpenLDAP прослушивает порт 10389 на узле OpenLDAP.

    Чтобы подключиться, укажите Bind DN или пользователя cn=manager,dc=apigee,dc=com и пароль OpenLDAP, который вы задали при установке Edge.

  2. С помощью клиента перейдите к атрибутам правил паролей для:
  3. Измените значения атрибутов правил паролей.
  4. Сохраните конфигурацию.

Как настроить правила для паролей LDAP для дополнительных системных администраторов

Когда вы добавляете пользователей sysadmin в Edge, они наследуют правила паролей по умолчанию, а не правила паролей sysadmin исходного пользователя sysadmin. По умолчанию срок действия пароля истекает через определенное время, если не заданы другие настройки. Чтобы задать для дополнительных пользователей sysadmin правила в отношении паролей, срок действия которых не истекает, выполните следующие действия:

  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, определяет, что пользователь будет заблокирован, когда срок действия его пароля истечет, и больше не сможет войти в систему.

False
pwdLockoutDuration

Количество секунд, в течение которых пароль не может использоваться для аутентификации пользователя из-за слишком большого числа последовательных неудачных попыток входа.

Другими словами, это период времени, в течение которого аккаунт пользователя будет заблокирован из-за превышения количества последовательных неудачных попыток входа, заданного атрибутом pwdMaxFailure.

Если для параметра pwdLockoutDuration задано значение 0, аккаунт пользователя будет заблокирован, пока системный администратор не разблокирует его.

Подробнее о том, как разблокировать аккаунт пользователя…

Если для атрибута pwdLockoutDuration задано значение больше нуля, он определяет продолжительность блокировки аккаунта пользователя. По истечении этого периода времени аккаунт пользователя будет автоматически разблокирован.

Рекомендуем задать для этого атрибута то же значение, что и для атрибута pwdFailureCountInterval.

300
pwdMaxAge

Количество секунд, по истечении которых срок действия пароля пользователя (не системного администратора) истекает. Значение 0 означает, что срок действия паролей не истекает. Значение по умолчанию – 2592000 (30 дней с момента создания пароля).

user: 2592000

sysadmin: 0

pwdMaxFailure

Количество последовательных неудачных попыток входа, после которого пароль нельзя использовать для аутентификации пользователя в каталоге.

3
pwdMinLength

Указывает минимальное количество символов, которое должно быть в пароле.

8

Как разблокировать аккаунт пользователя

Аккаунт пользователя может быть заблокирован из-за атрибутов, заданных в правилах в отношении паролей. Пользователь с ролью sysadmin Apigee может разблокировать аккаунт с помощью следующего вызова API: Замените userEmail, adminEmail и password фактическими значениями.

Чтобы разблокировать пользователя:

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