SAML 사용 설정 후 Edge 관리 유틸리티 및 API 사용

Private Cloud용 Edge v4.18.05

이 섹션에서는 SAML을 사용 설정한 후 에지 시스템 관리자 도구 및 명령어를 실행하는 방법을 설명합니다. Edge의 많은 작업에는 다음과 같은 시스템 관리 사용자 인증 정보가 필요합니다.

  • 조직 및 환경 만들기
  • Edge 구성요소 추가 및 삭제
  • Runngin apigee-adminapi.sh 명령어

하지만 Edge에 SAML을 사용 설정한 후에는 일반적으로 기본 인증을 사용 중지하므로 SAML IDP를 통해서만 인증할 수 있습니다. 따라서 시스템 관리자 계정을 SAML IDP에 추가했는지 확인해야 합니다.

시스템 관리자로 Edge 관리 API 호출

대부분의 Edge API 호출에서는 시스템 관리자 사용자 인증 정보를 전달해야 합니다. Edge 관리 API에 SAML 사용에는 Edge 관리 API를 호출할 때 토큰을 가져오고 갱신하는 방법에 대한 안내가 포함되어 있습니다.

SAML 인증과 함께 apigee-adminapi.sh 유틸리티 사용

apigee-adminapi.sh 유틸리티를 사용하여 Edge 관리 API를 호출하여 수행하는 것과 동일한 Edge 구성 태스크를 수행합니다. apigee-adminapi.sh 유틸리티의 장점은 다음과 같습니다.

  • 간단한 명령줄 인터페이스 사용
  • 탭 기반 명령어 완성 구현
  • 도움말 및 사용 정보를 제공합니다.
  • API를 사용해 보기로 결정한 경우 해당 API 호출을 표시할 수 있습니다.

자세한 내용은 apigee-ssoadminapi.sh 사용을 참조하세요.

SAML 인증을 사용 설정한 후 여러 가지 방법으로 시스템 관리자 사용자 인증 정보를 apigee-adminapi.sh 유틸리티에 전달할 수 있습니다.

명령어에 '-h' 옵션을 사용하면 SAML 사용자 인증 정보를 지정하는 옵션을 포함하여 모든 apigee-adminapi.sh 명령어에 대한 모든 옵션을 볼 수 있습니다. 예를 들면 다음과 같습니다.

apigee-adminapi.sh orgs list -h

예를 들어 시스템 관리자의 사용자 인증 정보를 전달할 수 있습니다.

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \
  --admin adminEmail --oauth-password adminPword

각 항목의 의미는 다음과 같습니다.

  • sso-url 옵션은 Edge SSO 모듈의 URL을 지정합니다. 포트나 프로토콜을 9099 및 HTTP에서 변경했다면 이를 수정합니다.
  • oauth-flowpasscode 또는 password_grant를 지정합니다. 이 예시에서는 password_grant을 지정합니다.
  • adminEmail는 시스템 관리자의 이메일 주소입니다.
  • oauth-password는 시스템 관리자의 비밀번호를 지정합니다.

또는 명령어를 호출할 때 비밀번호를 사용할 수 있습니다.

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \
  --admin adminEmail --oauth-passcode passcode

각 항목의 의미는 다음과 같습니다.

  • oauth-flowpasscode를 지정합니다.
  • oauth-passcodehttp://edge_sso_IP_DNS:9099/passcode.에서 가져온 비밀번호를 지정합니다.

마지막으로 다음 명령어를 호출할 때 토큰을 사용할 수 있습니다.

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \
  --admin adminEmail --oauth-token token

각 항목의 의미는 다음과 같습니다.

  • oauth-flow는 원래 토큰을 얻은 방법에 따라 passcode 또는 password_grant를 지정합니다. 이 예시에서는 passcode을 지정합니다. 처음에 get_token를 사용하여 토큰을 가져왔기 때문입니다. Edge 관리 API에 SAML 사용을 참조하세요.
  • oauh_token에는 토큰이 포함됩니다.

SAML 인증과 함께 Edge 유틸리티 사용

많은 Edge 유틸리티에는 다음과 같은 시스템 관리자 사용자 인증 정보가 필요합니다.

  • 조직, 환경, 가상 호스트를 만드는 데 사용되는 apigee-provision
  • 기존 시스템에 노드를 추가하는 데 사용되는 setup.sh
  • 구성 파일에 시스템 관리자 사용자 인증 정보를 지정해야 하는 기타 유틸리티

이러한 유틸리티는 속성을 사용하여 시스템 관리자의 사용자 인증 정보를 지정하는 구성 파일을 입력으로 받습니다.

ADMIN_EMAIL="adminEmail"
APIGEE_ADMINPW=adminPWord

비밀번호를 입력하지 않으면 비밀번호를 입력하라는 메시지가 표시됩니다.

SAML을 사용 설정한 후 다른 속성을 사용하여 시스템 관리자의 자격 증명을 지정합니다. 예를 들어 시스템 관리자의 사용자 인증 정보를 전달할 수 있습니다.

ADMIN_EMAIL="adminEmail"
SSO_LOGIN_URL=http://edge_sso_IP_DNS:9099
OAUTH_FLOW=password_grant
OAUTH_ADMIN_PASSWORD=adminPWord

각 항목의 의미는 다음과 같습니다.

  • SSO_LOGIN_URL은 Edge SSO 모듈의 URL을 지정합니다. 포트나 프로토콜을 9099 및 HTTP에서 변경했다면 이를 수정합니다.
  • OAUTH_FLOWpasscode 또는 password_grant를 지정합니다. 이 예시에서는 시스템 관리자의 비밀번호를 전달하므로 password_grant를 지정합니다.
  • OAUTH_ADMIN_PASSWORD는 시스템 관리자의 비밀번호를 지정합니다.

또는 다음 속성을 사용하여 비밀번호 흐름의 일부로 사용자 인증 정보를 지정할 수 있습니다.

ADMIN_EMAIL="adminEmail"
SSO_LOGIN_URL=http://edge_sso_IP_DNS:9099
OAUTH_FLOW=passcode
OAUTH_ADMIN_PASSCODE=passcode

각 항목의 의미는 다음과 같습니다.

  • OAUTH_FLOWpasscode를 지정합니다.
  • OAUTH_ADMIN_PASSCODEhttp://edge_sso_IP_DNS:9099/passcode.에서 가져온 비밀번호를 지정합니다.

마지막으로, 토큰을 사용하여

ADMIN_EMAIL="adminEmail"
SSO_LOGIN_URL=http://edge_sso_IP_DNS:9099
OAUTH_FLOW=passcode
OAUTH_BEARER_TOKEN=token

각 항목의 의미는 다음과 같습니다.

  • OAUTH_FLOW는 원래 토큰을 얻은 방법에 따라 passcode 또는 password_grant를 지정합니다. 이 예시에서는 passcode를 지정합니다. 처음에 get_token를 사용하여 토큰을 가져왔기 때문입니다. Edge 관리 API에 SAML 사용을 참조하세요.
  • OAUTH_BEARER_TOKEN에는 토큰이 포함됩니다.