第6章 Red Hat Quay API の例
この章の残りの部分では、API が使用可能な機能における Red Hat Quay API の例を示します。
6.1. API を使用してユーザーアプリケーションを管理する リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay ユーザーは、Docker、Podman、またはその他のサービスプロバイダーのパスワードの代わりに使用できる ユーザーアプリケーション の作成、情報のリスト表示、削除を実行できます。ユーザーアプリケーショントークンはユーザー名とパスワードと同じように機能しますが、暗号化されており、Red Hat Quay に誰がアクセスしているかに関する情報を第三者に提供しません。
CLI 経由で作成したユーザーアプリケーショントークンは、Red Hat Quay UI の User Settings の下に表示されます。これは、ユーザー設定で作成されるアプリケーショントークンとは異なり、まったく別のアプリケーションとして扱う必要があることに注意してください。
ユーザーアプリケーショントークンを作成するには、次の手順に従います。
前提条件
- OAuth 2 アクセストークンを作成した。
手順
POST /api/v1/user/apptoken
API 呼び出しを入力して、ユーザーアプリケーションを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
{"token": {"uuid": "6b5aa827-cee5-4fbe-a434-4b7b8a245ca7", "title": "MyAppToken", "last_accessed": null, "created": "Wed, 08 Jan 2025 19:32:48 -0000", "expiration": null, "token_code": "K2YQB1YO0ABYV5OBUYOMF9MCUABN12Y608Q9RHFXBI8K7IE8TYCI4WEEXSVH1AXWKZCKGUVA57PSA8N48PWED9F27PXATFUVUD9QDNCE9GOT9Q8ACYPIN0HL"}}
{"token": {"uuid": "6b5aa827-cee5-4fbe-a434-4b7b8a245ca7", "title": "MyAppToken", "last_accessed": null, "created": "Wed, 08 Jan 2025 19:32:48 -0000", "expiration": null, "token_code": "K2YQB1YO0ABYV5OBUYOMF9MCUABN12Y608Q9RHFXBI8K7IE8TYCI4WEEXSVH1AXWKZCKGUVA57PSA8N48PWED9F27PXATFUVUD9QDNCE9GOT9Q8ACYPIN0HL"}}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow GET /api/v1/user/apptoken
コマンドを使用すると、アプリケーションの有効期限など、アプリケーションに関する情報を取得できます。以下に例を示します。curl -X GET \ -H "Authorization: Bearer <access_token>" \ "http://quay-server.example.com/api/v1/user/apptoken"
$ curl -X GET \ -H "Authorization: Bearer <access_token>" \ "http://quay-server.example.com/api/v1/user/apptoken"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow {"tokens": [{"uuid": "6b5aa827-cee5-4fbe-a434-4b7b8a245ca7", "title": "MyAppToken", "last_accessed": null, "created": "Wed, 08 Jan 2025 19:32:48 -0000", "expiration": null}], "only_expiring": null}
{"tokens": [{"uuid": "6b5aa827-cee5-4fbe-a434-4b7b8a245ca7", "title": "MyAppToken", "last_accessed": null, "created": "Wed, 08 Jan 2025 19:32:48 -0000", "expiration": null}], "only_expiring": null}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow GET /api/v1/user/apptoken/{token_uuid}
コマンドを入力すると、特定のユーザーアプリケーションに関する情報を取得できます。curl -X GET \ -H "Authorization: Bearer <access_token>" \ "http://quay-server.example.com/api/v1/user/apptoken/<token_uuid>"
$ curl -X GET \ -H "Authorization: Bearer <access_token>" \ "http://quay-server.example.com/api/v1/user/apptoken/<token_uuid>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
{"token": {"uuid": "6b5aa827-cee5-4fbe-a434-4b7b8a245ca7", "title": "MyAppToken", "last_accessed": null, "created": "Wed, 08 Jan 2025 19:32:48 -0000", "expiration": null, "token_code": "K2YQB1YO0ABYV5OBUYOMF9MCUABN12Y608Q9RHFXBI8K7IE8TYCI4WEEXSVH1AXWKZCKGUVA57PSA8N48PWED9F27PXATFUVUD9QDNCE9GOT9Q8ACYPIN0HL"}}
{"token": {"uuid": "6b5aa827-cee5-4fbe-a434-4b7b8a245ca7", "title": "MyAppToken", "last_accessed": null, "created": "Wed, 08 Jan 2025 19:32:48 -0000", "expiration": null, "token_code": "K2YQB1YO0ABYV5OBUYOMF9MCUABN12Y608Q9RHFXBI8K7IE8TYCI4WEEXSVH1AXWKZCKGUVA57PSA8N48PWED9F27PXATFUVUD9QDNCE9GOT9Q8ACYPIN0HL"}}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow DELETE /api/v1/user/apptoken/{token_uuid}
エンドポイントを使用すると、ユーザーアプリケーショントークンを削除または取り消すことができます。curl -X DELETE \ -H "Authorization: Bearer <access_token>" \ "http://quay-server.example.com/api/v1/user/apptoken/<token_uuid>"
$ curl -X DELETE \ -H "Authorization: Bearer <access_token>" \ "http://quay-server.example.com/api/v1/user/apptoken/<token_uuid>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは CLI に出力を返しません。前述のコマンドのいずれかを入力すると、トークンのリストを返すことができます。