apigee-ssoadminapi.sh を使用する

Apigee SSO モジュールでは、次の 2 種類のアカウントがサポートされています。

apigee-ssoadminapi.sh ユーティリティを使用すると、Apigee SSO モジュールに関連付けられている管理者とマシンユーザー アカウントを管理できます。

apigee-ssoadminapi.sh ユーティリティを使用して、次の操作を行います。

  • 管理者/マシンユーザーのリストを表示する
  • 管理者/マシンユーザーを追加または削除する
  • 管理者/マシンユーザーのパスワードを変更する

管理者ユーザーについて

モジュールのプロパティを管理するには、Apigee SSO モジュール上の管理者アカウントが必要です。

デフォルトでは、Apigee SSO モジュールをインストールすると、次の認証情報を持つ管理者アカウントが作成されます。

  • username: Apigee SSO モジュールの構成に使用する構成ファイル内の SSO_ADMIN_NAME プロパティで定義されます。デフォルトは ssoadmin. です。
  • パスワード: Apigee SSO モジュールの構成に使用する構成ファイル内の SSO_ADMIN_SECRET プロパティで定義されます。

マシンユーザーについて

マシンユーザーは、パスコードを指定しなくても OAuth2 トークンを取得できます。つまり、Edge Management API を使用することで、OAuth2 トークンの取得と更新のプロセスを完全に自動化できます。

通常、マシンユーザーは次の目的で使用されます。

  • Edge と通信するように Apigee Developer Services ポータル(略して「ポータル」)を構成する
  • 開発環境が、テストの自動化や CI/CD などの一般的な開発タスクの自動化をサポートしている場合。

詳細については、外部 IDP のタスクを自動化するをご覧ください。

apigee-ssoadminapi.sh のインストール

Apigee SSO モジュールをインストールした Edge Management Server ノードに apigee-ssoadminapi.sh ユーティリティをインストールします。通常、Apigee SSO モジュールのインストール時に apigee-ssoadminapi.sh ユーティリティをインストールします。

apigee-ssoadminapi.sh ユーティリティをまだインストールしていない場合:

  1. Management Server ノードにログインします。Edge apigee-setup ユーティリティをインストールするで説明されているように、このノードにはすでに apigee-service がインストールされている必要があります。
  2. 次のコマンドを実行して、Apigee SSO モジュールの管理者とマシンユーザーの管理に使用する apigee-ssoadminapi.sh ユーティリティをインストールします。
    /opt/apigee/apigee-service/bin/apigee-service apigee-ssoadminapi install
  3. シェルからログアウトしてから再度ログインし、apigee-ssoadminapi.sh ユーティリティをパスに追加します。

apigee-ssoadminapi.sh のヘルプ情報を表示する

このユーティリティで使用可能なコマンドは次のとおりです。

  • admin add
  • admin delete
  • admin list
  • admin setpassword
  • saml machineuser add(LDAP と SAML を含むすべての IDP に saml コマンドを使用します)
  • saml machineuser delete
  • aaml machineuser list
  • saml machineuser setpassword

これらのコマンドに関する情報は、/opt/apigee/apigee-ssoadminapi/README.md ファイルで確認できます。また、各コマンドに「-h」オプションを指定すると、使用方法に関する情報を表示できます。

たとえば、次のコマンドを実行します。

apigee-ssoadminapi.sh admin list -h

戻り値:

admin list
  --admin SSOADMIN_CLIENT_NAME      Name of the client having administrative privilege on sso
  --secret SSOADMIN_CLIENT_SECRET   Secret/Password for the client
  --host SSO_HOST                   Hostname of SSO server to connect
  --port SSO_PORT                   Port to use during request
  --ssl SSO_URI_SCHEME              Set to https, defaults to http
  --debug                           Set in debug mode, turns on verbose in curl
  -h                                Displays Help

apigee-ssoadminapi.sh ユーティリティを呼び出す

apigee-ssoadminapi.sh ユーティリティを呼び出すには、すべてのプロパティをコマンドライン引数として渡すか、プロンプトに応答してインタラクティブ モードで呼び出します。

たとえば、管理者ユーザーのリストを表示するには、コマンドラインで必要な情報をすべて指定します。

apigee-ssoadminapi.sh admin list --admin ssoadmin --secret Secret123 --host 35.197.94.184

戻り値:

[
  {
    "client_id": "ssoadmin",
    "access_token_validity": 300
  }
]

管理者パスワードなどの必要な情報を省略すると、入力を求められます。

この例では、Apigee SSO モジュールが --port にデフォルト値の 9099、--ssl に http を使用するため、--port--ssl の値は省略しています。インストールでこれらのデフォルトを使用しない場合は、次のように指定します。

apigee-ssoadminapi.sh admin list --admin ssoadmin --secret Secret123
  --host 35.197.94.184 --port 9443 --ssl https

または、すべての情報を入力するインタラクティブ フォームを使用します。

apigee-ssoadminapi.sh admin list

その後、必要な情報をすべて入力するよう求められます。

SSO admin name (current): ssoadmin
SSO Admin secret (current):
SSO host: 35.197.94.184