This documentation is for a release that is no longer maintained
See documentation for the latest supported version.4.3. サポートされている RBAC REST API エンドポイント
RBAC REST API は、Developer Hub でロール、権限、条件付きポリシーを管理し、ロールとポリシーに関する情報を取得するためのエンドポイントを提供します。
4.3.1. ロール リンクのコピーリンクがクリップボードにコピーされました!
RBAC REST API は、Red Hat Developer Hub でロールを管理するために、次のエンドポイントをサポートします。
- [GET] /api/permission/roles
Developer Hub のすべてのロールを返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /api/permission/roles/<kind>/<namespace>/<name>
Developer Hub の 1 つのロールに関する情報を返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [POST] /api/permission/roles/<kind>/<namespace>/<name>
Developer Hub でロールを作成します。
Expand 表4.1 要求パラメーター 名前 説明 型 要否 body作成される新しいロールの
memberReferences、group、namespace、name。リクエストの本文
必須
要求の body の例 (JSON)
{ "memberReferences": ["group:default/test"], "name": "role:default/test_admin" }{ "memberReferences": ["group:default/test"], "name": "role:default/test_admin" }Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
201 Created
201 CreatedCopy to Clipboard Copied! Toggle word wrap Toggle overflow - [PUT] /api/permission/roles/<kind>/<namespace>/<name>
Developer Hub のロールの
memberReferences、kind、namespace、またはnameを更新します。要求パラメーター
要求の body には、
oldRoleオブジェクトとnewRoleオブジェクトが含まれています。Expand 名前 説明 型 要否 body作成される新しいロールの
memberReferences、group、namespace、name。リクエストの本文
必須
要求の body の例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
200 OK
200 OKCopy to Clipboard Copied! Toggle word wrap Toggle overflow - [DELETE] /api/permission/roles/<kind>/<namespace>/<name>?memberReferences=<VALUE>
Developer Hub のロールから、指定されたユーザーまたはグループを削除します。
Expand 表4.2 要求パラメーター 名前 説明 型 要否 kindエンティティーの種類
String
Required
namespaceエンティティーの namespace
String
Required
nameエンティティーの名前
String
Required
memberReferences関連するグループの情報
String
Required
応答の例
204
204Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [DELETE] /api/permission/roles/<kind>/<namespace>/<name>
Developer Hub から、指定されたロールを削除します。
Expand 表4.3 要求パラメーター 名前 説明 型 要否 kindエンティティーの種類
String
Required
namespaceエンティティーの namespace
String
Required
nameエンティティーの名前
String
Required
応答の例
204
204Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.3.2. 権限ポリシー リンクのコピーリンクがクリップボードにコピーされました!
RBAC REST API は、Red Hat Developer Hub で権限ポリシーを管理するために、次のエンドポイントをサポートします。
- [GET] /api/permission/policies
すべてのユーザーの権限ポリシーリストを返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /api/permission/policies/<kind>/<namespace>/<name>
指定されたエンティティー参照に関連する権限ポリシーを返します。
Expand 表4.4 要求パラメーター 名前 説明 型 要否 kindエンティティーの種類
String
Required
namespaceエンティティーの namespace
String
Required
nameエンティティーに関連する名前
String
Required
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [POST] /api/permission/policies
指定されたエンティティーの権限ポリシーを作成します。
Expand 表4.5 要求パラメーター 名前 説明 型 要否 entityReferencekind、namespace、nameを含むエンティティーの参照値String
Required
permission特定のプラグイン、リソースタイプ、または名前からの権限
String
Required
policy権限のポリシーアクション (
create、read、update、delete、useなど)String
Required
effectポリシーを許可するかどうか
String
Required
要求の body の例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
201 Created
201 CreatedCopy to Clipboard Copied! Toggle word wrap Toggle overflow - [PUT] /api/permission/policies/<kind>/<namespace>/<name>
指定されたエンティティーの権限ポリシーを更新します。
要求パラメーター
要求の body には、
oldPolicyオブジェクトとnewPolicyオブジェクトが含まれています。Expand 名前 説明 型 要否 permission特定のプラグイン、リソースタイプ、または名前からの権限
String
Required
policy権限のポリシーアクション (
create、read、update、delete、useなど)String
Required
effectポリシーを許可するかどうか
String
Required
要求の body の例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
200
200Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [DELETE] /api/permission/policies/<kind>/<namespace>/<name>?permission={value1}&policy={value2}&effect={value3}
指定されたエンティティーに追加された権限ポリシーを削除します。
Expand 表4.6 要求パラメーター 名前 説明 型 要否 kindエンティティーの種類
String
Required
namespaceエンティティーの namespace
String
Required
nameエンティティーに関連する名前
String
Required
permission特定のプラグイン、リソースタイプ、または名前からの権限
String
Required
policy権限のポリシーアクション (
create、read、update、delete、useなど)String
Required
effectポリシーを許可するかどうか
String
Required
応答の例
204 No Content
204 No ContentCopy to Clipboard Copied! Toggle word wrap Toggle overflow - [DELETE] /api/permission/policies/<kind>/<namespace>/<name>
指定されたエンティティーに追加されているすべての権限ポリシーを削除します。
Expand 表4.7 要求パラメーター 名前 説明 型 要否 kindエンティティーの種類
String
Required
namespaceエンティティーの namespace
String
Required
nameエンティティーに関連する名前
String
Required
応答の例
204 No Content
204 No ContentCopy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /api/permission/plugins/policies
すべての静的プラグインの権限ポリシーを返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.3.3. 条件付きポリシー リンクのコピーリンクがクリップボードにコピーされました!
RBAC REST API は、Red Hat Developer Hub で条件付きポリシーを管理するための次のエンドポイントをサポートしています。
- [GET] /api/permission/plugins/condition-rules
Developer Hub で有効になっている利用可能なプラグインの利用可能な条件ルールパラメータースキーマを返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /api/permission/roles/conditions/:id
指定された ID の条件を返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /api/permission/roles/conditions
全ロールの全条件のリストを返します。
応答例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [POST] /api/permission/roles/conditions
指定されたロールの条件付きポリシーを作成します。
Expand 表4.8 要求パラメーター 名前 説明 型 要否 result常に
CONDITIONALの値を持つString
Required
roleEntityRefRBAC ロールへの文字列エンティティー参照 (
role:default/devなど)String
Required
pluginId対応するプラグイン ID (
catalogなど)String
Required
permissionMapping権限アクションの配列 (
['read', 'update', 'delete']など)String array
Required
resourceTypeプラグインによって提供されるリソースタイプ (
catalog-entityなど)String
Required
conditions条件によって結合されたパラメーターまたは配列パラメーターを含む条件 JSON
JSON
Required
nameロールの名前
String
Required
metadata.descriptionロールの説明
String
任意
要求の body の例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答例 (JSON)
{ "id": 1 }{ "id": 1 }Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [PUT] /permission/roles/conditions/:id
指定された ID の条件ポリシーを更新します。
Expand 表4.9 要求パラメーター 名前 説明 型 要否 result常に
CONDITIONALの値を持つString
Required
roleEntityRefRBAC ロールへの文字列エンティティー参照 (
role:default/devなど)String
Required
pluginId対応するプラグイン ID (
catalogなど)String
Required
permissionMapping権限アクションの配列 (
['read', 'update', 'delete']など)String array
Required
resourceTypeプラグインによって提供されるリソースタイプ (
catalog-entityなど)String
Required
conditions条件によって結合されたパラメーターまたは配列パラメーターを含む条件 JSON
JSON
Required
nameロールの名前
String
Required
metadata.descriptionロールの説明
String
任意
要求の body の例 (JSON)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
200
200Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [DELETE] /api/permission/roles/conditions/:id
指定された ID の条件付きポリシーを削除します。
応答の例
204
204Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.3.4. ユーザー統計 リンクのコピーリンクがクリップボードにコピーされました!
licensed-users-info-backend プラグインは、ログインしたユーザーに関連するデータを取得するためのさまざまな REST API エンドポイントを公開します。
licensed-users-info-backend プラグインには追加の設定は必要ありません。RBAC バックエンドプラグインが有効になっていると、エンドポイントは policy.entity.read 権限によって保護されているため、エンドポイントにアクセスするには管理者ロールを割り当てる必要があります。
ユーザー統計エンドポイントのベース URL は http://SERVER:PORT/api/licensed-users-info です (例: http://localhost:7007/api/licensed-users-info)。
- [GET] /users/quantity
ログインしているユーザーの合計数を返します。
要求の例
curl -X GET "http://localhost:7007/api/licensed-users-info/users/quantity" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $token"
curl -X GET "http://localhost:7007/api/licensed-users-info/users/quantity" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $token"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
{ "quantity": "2" }{ "quantity": "2" }Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /users
ログインしているユーザーとその詳細のリストを返します。
要求の例
curl -X GET "http://localhost:7007/api/licensed-users-info/users" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $token"
curl -X GET "http://localhost:7007/api/licensed-users-info/users" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $token"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [GET] /users
ログインしているユーザーのリストを CSV 形式で返します。
要求の例
curl -X GET "http://localhost:7007/api/licensed-users-info/users" \ -H "Content-Type: text/csv" \ -H "Authorization: Bearer $token"
curl -X GET "http://localhost:7007/api/licensed-users-info/users" \ -H "Content-Type: text/csv" \ -H "Authorization: Bearer $token"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 応答の例
userEntityRef,displayName,email,lastTimeLogin user:default/dev,John Leavy,dev@redhat.com,"Thu, 22 Aug 2024 16:27:41 GMT"
userEntityRef,displayName,email,lastTimeLogin user:default/dev,John Leavy,dev@redhat.com,"Thu, 22 Aug 2024 16:27:41 GMT"Copy to Clipboard Copied! Toggle word wrap Toggle overflow