グループ用の新しいロールバインディングを作成する
POST /accounts/{account_id}/core/v1/groups/{group_id}/roleBindings
作成するロールバインディングAPIリソースの希望値を示します。
パラメータ
| Name | を入力します | 入力 | 必須 | 説明 |
|---|---|---|---|---|
account_id |
string |
path(パス) |
True |
包含するアカウントリソースのID
|
group_id |
string |
path(パス) |
True |
包含するグループリソースのID |
要求の本文
作成するロールバインディングAPIリソースの希望値を示します。
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
リソースのメディアタイプ。定義された値は次のとおりです:
|
バージョン |
string |
True |
リソースのバージョン。定義された値は次のとおりです:
|
ユーザーID |
string |
False |
ユーザーリソース ID を含む JSON 文字列。定義されている値は次のとおりです:
|
groupID |
string |
False |
グループリソースIDを含むJSON文字列。定義されている値は次のとおりです:
|
accountID |
string |
True |
アカウントリソースのIDを含むJSON文字列。作成の場合、これはリクエストURI内のアカウントIDと一致する必要があります。定義値は次のとおりです:
|
ロール |
string |
True |
定義された4つのロールのいずれかを含むJSON文字列。定義された値は次のとおりです:
|
roleConstraints |
array[string] |
False |
役割割り当ての範囲を指定するJSON文字列のJSON配列。定義値は次のとおりです:
* + = すべてのリソースへのアクセスを拒否します:"roleConstraints": [] * + = 特定の名前空間リソースへのアクセスのみを許可する:"roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'" ] * + = 特定の名前空間とその配下のすべてへのアクセスを許可する:"roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'.*"] * + = 任意のクラウドの任意のクラスターにある「dev」とラベル付けされたすべての名前空間、およびその配下のすべてへのアクセスを許可します:"roleConstraints": [ "namespaces:kubernetesLabels='dev.example.com/appname=dev'.*" ] * + = すべての名前空間リソースへのアクセスのみを許可します:"roleConstraints": [ "namespaces:*" ] * + = すべての名前空間リソースとその配下のすべてへのアクセスを許可する:"roleConstraints": [ "namespaces:." ] |
メタデータ |
False |
リソースに関連付けられた、クライアントおよびサービス指定のメタデータ。定義された値は次のとおりです:
|
リクエスト例
{
"type": "application/astra-roleBinding",
"version": "1.1",
"userID": "00000000-0000-0000-0000-000000000000",
"groupID": "6f7f5bb3-1320-4861-bd8a-d3a4106d36b1",
"accountID": "9fd87309-067f-48c9-a331-527796c14cf3",
"role": "viewer",
"roleConstraints": [
"*"
]
}
応答
Status: 201, Returns the newly created roleBinding resource in the JSON response body.
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
リソースのメディアタイプ。定義された値は次のとおりです:
|
バージョン |
string |
True |
リソースのバージョン。定義された値は次のとおりです:
|
ID |
string |
True |
リソースのグローバル一意識別子。定義された値は次のとおりです:
|
principalType |
string |
True |
このバインディングが関連付けられているプリンシパルのタイプを表すJSON文字列。定義値は次のとおりです:
|
ユーザーID |
string |
True |
ユーザーリソース ID を含む JSON 文字列。定義されている値は次のとおりです:
|
groupID |
string |
True |
グループリソースIDを含むJSON文字列。定義されている値は次のとおりです:
|
accountID |
string |
True |
アカウントリソースのIDを含むJSON文字列。作成の場合、これはリクエストURI内のアカウントIDと一致する必要があります。定義値は次のとおりです:
|
ロール |
string |
True |
定義された4つのロールのいずれかを含むJSON文字列。定義された値は次のとおりです:
|
roleConstraints |
array[string] |
False |
役割割り当ての範囲を指定するJSON文字列のJSON配列。定義値は次のとおりです:
* + = すべてのリソースへのアクセスを拒否します:"roleConstraints": [] * + = 特定の名前空間リソースへのアクセスのみを許可する:"roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'" ] * + = 特定の名前空間とその配下のすべてへのアクセスを許可する:"roleConstraints": [ "namespaces:id='6fa2f917-f730-41b8-9c15-17f531843b31'.*"] * + = 任意のクラウドの任意のクラスターにある「dev」とラベル付けされたすべての名前空間、およびその配下のすべてへのアクセスを許可します:"roleConstraints": [ "namespaces:kubernetesLabels='dev.example.com/appname=dev'.*" ] * + = すべての名前空間リソースへのアクセスのみを許可します:"roleConstraints": [ "namespaces:*" ] * + = すべての名前空間リソースとその配下のすべてへのアクセスを許可する:"roleConstraints": [ "namespaces:." ] |
メタデータ |
True |
リソースに関連付けられた、クライアントおよびサービス指定のメタデータ。定義された値は次のとおりです:
|
回答例
{
"type": "application/astra-roleBinding",
"version": "1.1",
"id": "a198f052-5cd7-59d3-9f27-9ea32a21fbca",
"principalType": "group",
"userID": "00000000-0000-0000-0000-000000000000",
"groupID": "6f7f5bb3-1320-4861-bd8a-d3a4106d36b1",
"accountID": "9fd87309-067f-48c9-a331-527796c14cf3",
"role": "viewer",
"roleConstraints": [
"*"
],
"metadata": {
"labels": [],
"creationTimestamp": "2022-10-06T20:58:16.305662Z",
"modificationTimestamp": "2022-10-06T20:58:16.305662Z",
"createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
}
}
応答
Status: 401, Unauthorized
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
|
タイトル |
string |
True |
|
詳細 |
string |
True |
|
ステータス |
string |
True |
|
correlationID |
string |
False |
回答例
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
応答
Status: 400, Bad request
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
|
タイトル |
string |
True |
|
詳細 |
string |
True |
|
ステータス |
string |
True |
|
correlationID |
string |
False |
|
invalidFields |
配列["invalidFields"] |
False |
無効なリクエストボディフィールドのリスト |
回答例
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
応答
Status: 409, Conflict
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
|
タイトル |
string |
True |
|
詳細 |
string |
True |
|
ステータス |
string |
True |
|
correlationID |
string |
False |
|
invalidFields |
配列["invalidFields"] |
False |
無効なリクエストボディフィールドのリスト |
回答例
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
応答
Status: 403, Forbidden
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
|
タイトル |
string |
True |
|
詳細 |
string |
True |
|
ステータス |
string |
True |
|
correlationID |
string |
False |
回答例
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
エラー
Status: 404, Not found
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
を入力します |
string |
True |
|
タイトル |
string |
True |
|
詳細 |
string |
True |
|
ステータス |
string |
True |
|
correlationID |
string |
False |
エラー応答の例
{
"type": "https://astra.netapp.io/problems/2",
"title": "Collection not found",
"detail": "The collection specified in the request URI wasn't found.",
"status": "404"
}
用語の意味
定義を参照
type_astra_label
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
名前 |
string |
True |
|
Value |
string |
True |
type_astra_metadata_update
リソースに関連付けられた、クライアントおよびサービス指定のメタデータ。定義された値は次のとおりです:
-
Astra メタデータスキーマに準拠します。作成時に指定しない場合、ラベルのないメタデータオブジェクトが作成されます。更新時に指定されていない場合、メタデータオブジェクトのラベル、creationTimestamp および createdBy は、変更なしで保持されます。
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
ラベル |
False |
||
作成タイムスタンプ |
string |
False |
|
modificationTimestamp |
string |
False |
|
作成者 |
string |
False |
|
modifiedBy |
string |
False |
invalidParams
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
名前 |
string |
True |
無効なクエリパラメータの名前 |
理由 |
string |
True |
クエリパラメータが無効な理由 |
invalidFields
| Name | を入力します | 必須 | 説明 |
|---|---|---|---|
名前 |
string |
True |
無効なリクエストボディフィールドの名前 |
理由 |
string |
True |
リクエスト本文フィールドが無効な理由 |