Edge for Private Cloud v4.19.01
このセクションでは、SAML を有効にした後に Edge システム管理ツールとコマンドを実行する方法について説明します。Edge の多くのタスクでは、次のようなシステム管理認証情報が必要です。
- 組織と環境の作成
- Edge コンポーネントの追加と削除
- apigee-adminapi.sh コマンドの実行
ただし、Edge で SAML を有効にした後は、通常は Basic 認証を無効にします。これにより、認証には SAML IDP を経由する必要があります。したがって、システム管理者アカウントが SAML IDP に追加されている必要があります。
システム管理者として Edge Management API を呼び出す
多くの Edge API 呼び出しでは、システム管理者の認証情報を渡す必要があります。Edge Management API での SAML の使用では、Edge Management API 呼び出し時にトークンを取得して更新する方法について説明します。
SAML 認証での apigee-adminapi.sh ユーティリティの使用
apigee-adminapi.sh
ユーティリティを使用して、Edge Management 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-flow
は、passcode
または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-flow
はpasscode
を指定します。oauth-passcode
には、http://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
を指定します。この例では、最初にget_token
を使用してトークンを取得したため、passcode
を指定します。Edge Management 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_FLOW
は、passcode
または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_FLOW
はpasscode
を指定します。OAUTH_ADMIN_PASSCODE
には、http://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
を指定します。この例では、最初にget_token
を使用してトークンを取得したため、passcode
を指定します。Edge Management API で SAML を使用するをご覧ください。OAUTH_BEARER_TOKEN
にはトークンが含まれます。