apigee-ssoadminapi.sh を使用する

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

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

次のことに apigee-ssoadminapi.sh ユーティリティを使用します。

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

管理者ユーザーについて

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

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

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

マシンユーザーについて

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

通常、マシンユーザーは次の場合に使用します。

  • Apigee Developer Services ポータル(略して「ポータル」)を Edge と通信するように構成する場合
  • 開発環境で、テスト自動化や 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
      }
    ]
    

必須の情報(管理者パスワードなど)を 1 つでも省略すると、入力を求めるプロンプトが出されます。

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

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