apigee-machineuser.sh로 머신 사용자 관리

Apigee SSO는 이전에 기존 apigee-ssoadminapi.sh 스크립트로 관리되던 두 가지 유형의 인증 프로필을 지원합니다.

apigee-machineuser.sh 유틸리티를 사용하면 OpenLDAP에서 헤드리스 머신 사용자 계정을 직접 관리할 수 있습니다.

OAuth 클라이언트 (이전의 관리자) 정보

이전 버전의 Edge에서는 admin 명령어를 apigee-ssoadminapi.sh 유틸리티에서 사용하여 UAA 데이터베이스에서 OAuth 클라이언트를 동적으로 만들었습니다. 4.54.00에서 Apigee SSO는 선언적 구성 (GitOps) 모델을 사용합니다.

이제 OAuth 클라이언트가 정적이므로 CLI 스크립트를 사용하여 OAuth 클라이언트를 만들지 않습니다. Edge UI의 클라이언트 구성은 /opt/silent.conf에 정의되어 있습니다. 머신 사용자에 사용되는 클라이언트 (edgecli)는 Apigee SSO에서 암시적으로 구성됩니다.

머신 사용자 정보

머신 사용자는 브라우저 또는 대화형 MFA가 필요 없이 표준 비밀번호 부여를 통해 OIDC/OAuth2 토큰을 가져올 수 있습니다. 즉, CI/CD 파이프라인 및 스크립트의 토큰 가져오기 및 갱신 토큰 프로세스를 완전히 자동화할 수 있습니다.

apigee-machineuser.sh 유틸리티를 사용하여 머신 사용자를 만들면 계정이 로컬 OpenLDAP 디렉터리에 직접 생성되고 employeeType: machineuser로 명시적으로 태그 지정됩니다. 이 태그를 사용하면 Apigee SSO가 비밀번호 부여를 통해 머신 사용자를 안전하게 인증할 수 있습니다. 이는 인간 사용자에 대해 페더레이션된 SAML/OIDC가 엄격하게 적용되는 경우에도 마찬가지입니다.

apigee-machineuser.sh 유틸리티 호출

apigee-machineuser.sh 유틸리티는 다음 경로에서 apigee-openldap 구성요소를 호스팅하는 노드에 자동으로 설치됩니다.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh

유틸리티에 사용할 수 있는 명령어는 다음과 같습니다.

  • add: OpenLDAP에서 새 머신 사용자를 만듭니다.
  • list: OpenLDAP에 등록된 모든 머신 사용자를 나열합니다.
  • setpassword: 기존 머신 사용자의 비밀번호를 업데이트합니다.
  • delete: OpenLDAP에서 머신 사용자를 영구적으로 삭제합니다.

머신 사용자 추가

-u 및 -p 플래그와 함께 add 명령어를 사용하여 새 머신 사용자를 만듭니다.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh add -u jenkins-bot@apigee.com -p BotSecret123!

출력:

Machine user 'jenkins-bot@apigee.com' created successfully in OpenLDAP.

모든 머신 사용자 나열

list 명령어를 사용하여 현재 OpenLDAP에 등록된 모든 머신 사용자를 확인합니다. 인간 사용자는 이 목록에서 필터링됩니다.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh list

출력:

Listing all machine users in OpenLDAP:
dn: uid=jenkins-bot@apigee.com,ou=users,ou=global,dc=apigee,dc=com
uid: jenkins-bot@apigee.com
mail: jenkins-bot@apigee.com

머신 사용자 비밀번호 재설정

setpassword 명령어를 사용하여 기존 머신 사용자의 비밀번호를 업데이트합니다.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh setpassword -u jenkins-bot@apigee.com -p NewSecret456!

출력:

Password for machine user 'jenkins-bot@apigee.com' updated successfully.

머신 사용자 삭제

delete 명령어를 사용하여 OpenLDAP에서 머신 사용자를 영구적으로 삭제합니다.

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh delete -u jenkins-bot@apigee.com

출력:

Machine user 'jenkins-bot@apigee.com' deleted successfully from OpenLDAP.