apigee-machineuser.sh を使用してマシンユーザーを管理する

Apigee SSO は、以前は従来の apigee-ssoadminapi.sh スクリプトで管理されていた次の 2 種類の認証プロファイルをサポートしています。

apigee-machineuser.sh ユーティリティを使用すると、ヘッドレス マシンユーザー アカウントを OpenLDAP で直接管理できます。

OAuth クライアント(以前の管理者)について

以前のバージョンの Edge では、admin ユーティリティの apigee-ssoadminapi.sh コマンドを使用して、UAA データベースに OAuth クライアントを動的に作成していました。4.54.00 では、Apigee SSO は宣言型構成(GitOps)モデルに依存しています。

OAuth クライアントは静的になったため、CLI スクリプトを使用して作成することはなくなりました。Edge UI のクライアント構成は /opt/silent.conf で定義されます。一方、マシンユーザーに使用されるクライアント(edgecli)は、Apigee SSO で暗黙的に構成されます。

マシンユーザーについて

マシンユーザーは、ブラウザやインタラクティブ MFA を必要とせずに、標準のパスワード付与を介して OIDC/OAuth2 トークンを取得できます。つまり、CI/CD パイプラインとスクリプトのトークンの取得と更新のプロセスを完全に自動化できます。

apigee-machineuser.sh ユーティリティを使用してマシンユーザーを作成すると、アカウントはローカル OpenLDAP ディレクトリに直接作成され、employeeType: machineuser で明示的にタグ付けされます。このタグを使用すると、フェデレーション SAML/OIDC が人間のユーザーに厳密に適用されている場合でも、Apigee SSO はパスワード付与を介してマシンユーザーを安全に認証できます。

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

apigee-machineuser.sh ユーティリティは、apigee-openldap コンポーネントをホストするノードに次のパスに自動的にインストールされます。

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh

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

  • add: OpenLDAP に新しいマシンユーザーを作成します。
  • list: OpenLDAP に登録されているすべてのマシンユーザーを一覧表示します。
  • setpassword: 既存のマシンユーザーのパスワードを更新します。
  • delete: OpenLDAP からマシンユーザーを完全に削除します。

マシンユーザーを追加する

add コマンドに -u フラグと -p フラグを指定して、新しいマシンユーザーを作成します。

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh add -u jenkins-bot@apigee.com -p BotSecret123!

出力:

Machine user 'jenkins-bot@apigee.com' created successfully in OpenLDAP.

すべてのマシンユーザーを一覧表示する

list コマンドを使用して、現在 OpenLDAP に登録されているすべてのマシンユーザーを表示します。このリストから人間のユーザーは除外されます。

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh list

出力:

Listing all machine users in OpenLDAP:
dn: uid=jenkins-bot@apigee.com,ou=users,ou=global,dc=apigee,dc=com
uid: jenkins-bot@apigee.com
mail: jenkins-bot@apigee.com

マシンユーザーのパスワードを再設定する

setpassword コマンドを使用して、既存のマシンユーザーのパスワードを更新します。

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh setpassword -u jenkins-bot@apigee.com -p NewSecret456!

出力:

Password for machine user 'jenkins-bot@apigee.com' updated successfully.

マシンユーザーを削除する

delete コマンドを使用して、OpenLDAP からマシンユーザーを完全に削除します。

/opt/apigee/apigee-openldap/bin/apigee-machineuser.sh delete -u jenkins-bot@apigee.com

出力:

Machine user 'jenkins-bot@apigee.com' deleted successfully from OpenLDAP.