18.4. トークンとセッションの管理
Automation Controller は、OAuth2 トークン管理用に次のコマンドをサポートします。
18.4.1. create_oauth2_token
次のコマンドを使用して OAuth2 トークンを作成します (example_user
にはユーザー名を指定します)。
$ awx-manage create_oauth2_token --user example_user New OAuth2 token for example_user: j89ia8OO79te6IAZ97L7E8bMgXCON2
トークンを作成するときは、必ず有効なユーザーを指定してください。そうしなければ、ユーザーを指定せずにコマンドを発行しようとしたことを示すエラーメッセージか、存在しないユーザー名を指定したことを示すエラーメッセージが表示されます。
18.4.2. revoke_oauth2_tokens
このコマンドは、OAuth2 トークン (アプリケーショントークンと Personal Access Token (PAT) の両方) を取り消すために使用します。すべてのアプリケーショントークン (関連付けられているリフレッシュトークンは除く) を取り消し、すべての Personal Access Token を取り消します。ただし、すべてのトークンを取り消すユーザーを指定することもできます。
既存の OAuth2 トークンをすべて取り消すには、次のコマンドを使用します。
$ awx-manage revoke_oauth2_tokens
すべての OAuth2 トークンとそのリフレッシュトークンを取り消すには、次のコマンドを使用します。
$ awx-manage revoke_oauth2_tokens --revoke_refresh
id=example_user
が指定されたユーザーの OAuth2 トークンをすべて取り消すには、以下を実行します (example_user
にユーザー名を指定します)。
$ awx-manage revoke_oauth2_tokens --user example_user
id=example_user
のユーザーのすべての OAuth2 トークンとリフレッシュトークンを取り消すには、次のコマンドを実行します。
$ awx-manage revoke_oauth2_tokens --user example_user --revoke_refresh
18.4.3. cleartokens
このコマンドを使用して、すでに取り消されたトークンを消去します。
詳細は、Django の Oauth Toolkit ドキュメントの cleartokens を参照してください。
18.4.4. expire_sessions
このコマンドを使用して、すべてのセッションまたは特定のユーザーのすべてのセッションを終了します。
組織内でユーザーのロールが変更になった場合や、LDAP/AD の分類グループから削除された場合、これらのグループのメンバーシップが原因で管理者が対象ユーザーにジョブを実行させない場合などに、このコマンドの使用を検討してください。
$ awx-manage expire_sessions
このコマンドはデフォルトですべてのセッションを終了します。これらのセッションに関連付けられているユーザーはログアウトされます。特定のユーザーのセッションのみを期限切れにするには、--user
フラグを使用してユーザー名を渡します (次の例では、example_user
をユーザー名に置き換えます)。
$ awx-manage expire_sessions --user example_user
18.4.5. clearsessions
このコマンドを使用して、期限切れになったすべてのセッションを削除します。
詳細は、Django の Oauth Toolkit ドキュメントの Clearing the session store を参照してください。
UI での OAuth2 トークン管理の詳細は、Automation Controller ユーザーガイドの アプリケーション セクションを参照してください。