API 관리를 위한 기본 LDAP 비밀번호 정책 관리

Apigee 시스템은 OpenLDAP를 사용하여 API 관리 환경에서 사용자를 인증합니다. OpenLDAP를 사용하면 이 LDAP 비밀번호 정책 기능을 사용할 수 있습니다.

이 섹션에서는 제공된 기본 LDAP 비밀번호 정책을 구성하는 방법을 설명합니다. 이 비밀번호 정책을 사용하여 비밀번호를 더 이상 디렉터리 사용자 인증에 사용할 수 없게 되는 연속 로그인 실패 횟수와 같은 다양한 비밀번호 인증 옵션을 구성합니다.

또한 이 섹션에서는 몇 가지 API를 사용하여 기본 비밀번호 정책에 구성된 속성에 따라 잠긴 사용자 계정을 잠금 해제하는 방법을 설명합니다.

자세한 내용은 다음을 참조하세요.

기본 LDAP 비밀번호 정책 구성

이 섹션에서는 다음에 대한 기본 LDAP 비밀번호 정책을 구성하는 방법을 설명합니다.

Edge 사용자 및 원래 시스템 관리자의 기본 LDAP 비밀번호 정책 구성

Edge 사용자 및 원래 시스템 관리자의 기본 LDAP 비밀번호 정책을 구성하려면 다음 안내를 따르세요.

  1. Apache Studio 또는 ldapmodify와 같은 LDAP 클라이언트를 사용하여 LDAP 서버에 연결합니다. 기본적으로 OpenLDAP 서버는 OpenLDAP 노드의 포트 10389에서 리슨합니다.

    연결하려면 cn=manager,dc=apigee,dc=com의 Bind 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라는 새 파일을 만들고 다음을 추가합니다 (자체 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인 경우 비밀번호가 만료되면 사용자가 더 이상 로그인할 수 없도록 사용자를 잠그도록 지정합니다.

거짓
pwdLockoutDuration

비밀번호를 사용하여 사용자를 인증할 수 없는 시간(연속 로그인 실패 횟수가 너무 많아서)입니다.

즉, pwdMaxFailure 속성으로 설정된 연속 로그인 실패 횟수를 초과하여 사용자 계정이 잠겨 있는 시간입니다.

pwdLockoutDuration가 0으로 설정되면 시스템 관리자가 잠금을 해제할 때까지 사용자 계정이 잠긴 상태로 유지됩니다.

사용자 계정 잠금 해제하기를 참고하세요.

pwdLockoutDuration가 0보다 크면 이 속성은 사용자 계정이 잠겨 있는 기간을 정의합니다. 이 기간이 지나면 사용자 계정이 자동으로 잠금 해제됩니다.

이 속성은 pwdFailureCountInterval 속성과 동일한 값으로 설정하는 것이 좋습니다.

300
pwdMaxAge

사용자(시스템 관리자가 아님) 비밀번호가 만료되는 데 걸리는 시간(초)입니다. 값이 0이면 비밀번호가 만료되지 않습니다. 기본값 2592,000은 비밀번호가 생성된 시점으로부터 30일에 해당합니다.

사용자: 25,920,000

sysadmin: 0

pwdMaxFailure

비밀번호를 사용하여 디렉터리에서 사용자를 인증할 수 없게 되는 연속 실패 로그인 시도 횟수입니다.

3
pwdMinLength

비밀번호를 설정할 때 필요한 최소 문자 수를 지정합니다.

8

사용자 계정 잠금 해제

비밀번호 정책에 설정된 속성으로 인해 사용자의 계정이 잠길 수 있습니다. sysadmin Apigee 역할이 할당된 사용자는 다음 API 호출을 사용하여 사용자의 계정을 잠금 해제할 수 있습니다. userEmail, adminEmail, password를 실제 값으로 바꿉니다.

사용자의 잠금을 해제하려면 다음 단계를 따르세요.

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