8.4. アプリケーション認証情報の交換
アプリケーション認証情報は、その認証情報を作成したユーザーアカウントにバインドされます。したがって、そのユーザーアカウントが削除されたり、ユーザーが委譲されたロールにアクセスできなくなったりすると、アプリケーション認証情報は無効になります。そのため、必要に応じて新しいアプリケーション認証情報を生成する準備が必要になります。
設定ファイル用の既存のアプリケーション認証情報の置き換え
(設定ファイルを使用して) アプリケーションに割り当てられたアプリケーション認証情報を更新します。
- 新しいアプリケーション認証情報のセットを作成します。
- アプリケーションの設定ファイルに新しい認証情報を追加し、既存の認証情報と置き換えます。詳細は、アプリケーション認証情報とアプリケーションの統合 を参照してください。
- アプリケーションのサービスを再起動して、変更を適用します。
- 必要に応じて、古いアプリケーション認証情報を削除します。コマンドラインオプションの詳細は、アプリケーション認証情報の管理 を参照してください。
clouds.yaml 内の既存のアプリケーション認証情報の置き換え
clouds.yaml で使用されるアプリケーション認証情報を置き換える場合は、OpenStack ユーザー認証情報を使用して置換認証情報を作成する必要があります。デフォルトでは、アプリケーション認証情報を使用して別のアプリケーション認証情報のセットを作成できません。openstack application credential create コマンドは、現在ソースを提供しているアカウントに基づいてアプリケーション認証情報を作成します。
-
有効期限が近づいている認証認証情報を最初に作成した OpenStack ユーザーとして認証します。たとえば、アプリケーション認証情報を使用してトークンを生成する 手順を使用した場合は、
AppCredsUserとして再度ログインする必要があります。 AppCred2という名前のアプリケーション認証情報を作成します。これは、OpenStack Dashboard またはopenstackCLI インターフェイスを使用して実行できます。openstack application credential create --description "App Creds 2 - Member" --role member AppCred2-
直前のコマンドの出力から
idパラメーターおよびsecretパラメーターをコピーします。secretパラメーター値に再度アクセスできません。 -
${HOME}/.config/openstack/clouds.yamlファイル内のapplication_credential_idパラメーター値とapplication_credential_secretパラメーター値を、コピーしたSecret値とID値に置き換えます。
検証
clouds.yaml でトークンを生成し、認証情報が予想通りに機能していることを確認します。以下のコマンドを使用する場合、特定のユーザーとしてソースを提供しないでください。また、
clouds.yamlファイルのディレクトリーを現在の作業ディレクトリーにする必要があります。[stack@undercloud-0 openstack]$ openstack --os-cloud=openstack token issue出力例:
+------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | Field | Value | +------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | expires | 2018-08-29T05:37:29+0000 | | id | gAAAAABbhiMJ4TxxFlTMdsYJpfStsGotPrns0lnpvJq9ILtdi-NKqisWBeNiJlUXwmnoGQDh2CMyK9OeTsuEXnJNmFfKjxiHWmcQVYzAhMKo6_QMUtu_Qm6mtpzYYHBrUGboa_Ay0LBuFDtsjtgtvJ-r8G3TsJMowbKF-yo--O_XLhERU_QQVl3hl8zmMRdmLh_P9Cbhuolt | | project_id | 1a74eabbf05c41baadd716179bb9e1da | | user_id | ef679eeddfd14f8b86becfd7e1dc84f2 | +------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+