SAML を有効にした後の Edge 管理ユーティリティと API の使用

Edge for Private Cloud v4.18.05

このセクションでは、SAML を有効にした後で Edge システム管理ツールと Edge システム管理コマンドを実行する方法について説明します。次に示すような Edge の多くのタスクでは、システム管理の認証情報が必要になります。

  • 組織と環境の作成
  • Edge コンポーネントの追加と削除
  • apngee-adminapi.sh コマンドの実行

ただし、Edge で SAML を有効にすると、通常は Basic 認証が無効になるため、唯一の認証方法は SAML IDP となります。したがって、SAML IDP にシステム管理者アカウントを必ず追加しておく必要があります。

システム管理者として Edge 管理 API を呼び出す

多くの Edge API 呼び出しでは、システム管理者の認証情報を渡す必要があります。Edge 管理 API での SAML の使用では、Edge 管理 API 呼び出しを行う際のトークン取得方法とトークン更新方法が説明されています。

SAML 認証で apigee-adminapi.sh ユーティリティを使用する

Edge 管理 API を呼び出して実施する場合と同じ Edge 構成タスクを、apigee-adminapi.sh ユーティリティを使用して実施します。apigee-adminapi.sh ユーティリティを使用する利点は次のとおりです。

  • シンプルなコマンドライン インターフェースを使用できます。
  • タブベースのコマンド補完が実装されています。
  • ヘルプと使用方法の情報が提供されます。
  • API を試行する場合は、対応する API 呼び出しを表示できます。

詳細については、apigee-ssoadminapi.sh の使用をご覧ください。

SAML 認証を有効にした後、システム管理者の認証情報を apigee-adminapi.sh ユーティリティに渡す方法はいくつかあります。

SAML 認証情報を指定するオプションなど apigee-adminapi.sh コマンドのオプションをすべて表示するには、コマンドに -h オプションを使用します。次に例を示します。

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 管理 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 管理 API での SAML の使用をご覧ください。
  • OAUTH_BEARER_TOKEN には、トークンが入ります。