사용자와 연결된 그룹에 대한 새 역할 바인딩을 생성합니다
POST /accounts/{account_id}/core/v1/users/{user_id}/groups/{group_id}/roleBindings
생성할 역할 바인딩 API 리소스에 대해 원하는 값을 나타냅니다.
매개변수
| 이름 | 유형 | 에서 | 필수 요소입니다 | 설명 |
|---|---|---|---|---|
account_id |
문자열 |
경로 |
참 |
포함하는 계정 리소스의 ID
|
user_id |
문자열 |
경로 |
참 |
포함하는 사용자 리소스의 ID |
group_id |
문자열 |
경로 |
참 |
포함하는 그룹 리소스의 ID |
요청 본문
생성할 역할 바인딩 API 리소스에 대해 원하는 값을 나타냅니다.
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
리소스의 미디어 유형입니다. 정의된 값은 다음과 같습니다.
|
버전 |
문자열 |
참 |
리소스 버전입니다. 정의된 값은 다음과 같습니다.
|
userID |
문자열 |
거짓 |
사용자 리소스 ID가 포함된 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
groupID |
문자열 |
거짓 |
그룹 리소스 ID가 포함된 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
accountID |
문자열 |
참 |
계정 리소스의 ID가 포함된 JSON 문자열입니다. 생성 시 요청 URI의 계정 ID와 일치해야 합니다. 정의된 값은 다음과 같습니다.
|
역할 |
문자열 |
참 |
정의된 네 가지 역할 중 하나를 포함하는 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
roleConstraints |
배열[string] |
거짓 |
역할 할당 범위를 지정하는 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:." ] |
메타데이터 |
거짓 |
리소스와 연결된 클라이언트 및 서비스 지정 메타데이터입니다. 정의된 값은 다음과 같습니다.
|
요청 예시
{
"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.
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
리소스의 미디어 유형입니다. 정의된 값은 다음과 같습니다.
|
버전 |
문자열 |
참 |
리소스 버전입니다. 정의된 값은 다음과 같습니다.
|
ID입니다 |
문자열 |
참 |
리소스의 전역 고유 식별자입니다. 정의된 값은 다음과 같습니다.
|
principalType |
문자열 |
참 |
이 바인딩이 연결된 주체의 유형을 나타내는 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
userID |
문자열 |
참 |
사용자 리소스 ID가 포함된 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
groupID |
문자열 |
참 |
그룹 리소스 ID가 포함된 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
accountID |
문자열 |
참 |
계정 리소스의 ID가 포함된 JSON 문자열입니다. 생성 시 요청 URI의 계정 ID와 일치해야 합니다. 정의된 값은 다음과 같습니다.
|
역할 |
문자열 |
참 |
정의된 네 가지 역할 중 하나를 포함하는 JSON 문자열입니다. 정의된 값은 다음과 같습니다.
|
roleConstraints |
배열[string] |
거짓 |
역할 할당 범위를 지정하는 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:." ] |
메타데이터 |
참 |
리소스와 연결된 클라이언트 및 서비스 지정 메타데이터입니다. 정의된 값은 다음과 같습니다.
|
응답 예
{
"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
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
|
제목 |
문자열 |
참 |
|
세부 정보 |
문자열 |
참 |
|
상태 |
문자열 |
참 |
|
correlationID |
문자열 |
거짓 |
응답 예
{
"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
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
|
제목 |
문자열 |
참 |
|
세부 정보 |
문자열 |
참 |
|
상태 |
문자열 |
참 |
|
correlationID |
문자열 |
거짓 |
|
invalidFields |
배열["invalidFields"] |
거짓 |
유효하지 않은 요청 본문 필드 목록 |
응답 예
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
응답
Status: 409, Conflict
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
|
제목 |
문자열 |
참 |
|
세부 정보 |
문자열 |
참 |
|
상태 |
문자열 |
참 |
|
correlationID |
문자열 |
거짓 |
|
invalidFields |
배열["invalidFields"] |
거짓 |
유효하지 않은 요청 본문 필드 목록 |
응답 예
{
"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
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
|
제목 |
문자열 |
참 |
|
세부 정보 |
문자열 |
참 |
|
상태 |
문자열 |
참 |
|
correlationID |
문자열 |
거짓 |
응답 예
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
오류
Status: 404, Not found
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
유형 |
문자열 |
참 |
|
제목 |
문자열 |
참 |
|
세부 정보 |
문자열 |
참 |
|
상태 |
문자열 |
참 |
|
correlationID |
문자열 |
거짓 |
예시 오류 응답
{
"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
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
이름 |
문자열 |
참 |
|
값 |
문자열 |
참 |
type_astra_메타데이터_업데이트
리소스와 연결된 클라이언트 및 서비스 지정 메타데이터입니다. 정의된 값은 다음과 같습니다.
-
Astra 메타데이터 스키마를 준수합니다. 생성 시 지정하지 않으면 레이블이 없는 메타데이터 객체가 생성됩니다. 업데이트 시 지정하지 않으면 메타데이터 객체의 레이블인 creationTimestamp와 createdBy는 수정 없이 유지됩니다.
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
라벨 |
거짓 |
||
CreationTimestamp 를 클릭합니다 |
문자열 |
거짓 |
|
modificationTimestamp |
문자열 |
거짓 |
|
생성 시 |
문자열 |
거짓 |
|
modifiedBy |
문자열 |
거짓 |
invalidParams
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
이름 |
문자열 |
참 |
잘못된 쿼리 매개변수의 이름 |
이유 |
문자열 |
참 |
쿼리 매개변수가 유효하지 않은 이유 |
invalidFields
| 이름 | 유형 | 필수 요소입니다 | 설명 |
|---|---|---|---|
이름 |
문자열 |
참 |
유효하지 않은 요청 본문 필드의 이름 |
이유 |
문자열 |
참 |
요청 본문 필드가 유효하지 않은 이유 |