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 Created
Copy 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 OK
Copy 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
204
Copy 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
204
Copy 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 要求パラメーター 名前 説明 型 要否 entityReference
kind
、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 Created
Copy 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
200
Copy 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 Content
Copy 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 Content
Copy 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
roleEntityRef
RBAC ロールへの文字列エンティティー参照 (
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
roleEntityRef
RBAC ロールへの文字列エンティティー参照 (
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
200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - [DELETE] /api/permission/roles/conditions/:id
指定された ID の条件付きポリシーを削除します。
応答の例
204
204
Copy 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