52장. RoleService
52.1. ComputeEffectiveAccessScope 링크 복사링크가 클립보드에 복사되었습니다!
POST /v1/computeeffectiveaccessscope
ComputeEffectiveAccessScope
52.1.1. 설명 링크 복사링크가 클립보드에 복사되었습니다!
요청의 규칙에 따라 효과적인 액세스 범위를 반환합니다. 클러스터 및 네임스페이스를 변경할 수 있기 때문에 아무것도 유지하지 않습니다. POST는 잠재적으로 큰 페이로드로 인해 선택됩니다. 응답을 슬림하고 자세히 유지하는 데는 이점이 있습니다. 선택한 클러스터 및 네임스페이스의 ID만 포함된 경우 응답 대기 시간 및 처리 시간이 낮지만 호출자는 일관성 문제에 영향을 받는 세계의 관점으로 응답을 오버레이해야 합니다. 관련 메타데이터를 사용하여 모든 클러스터 및 네임스페이스를 나열하는 것은 호출자에 편리하지만 보조 데이터가 있는 메시지를 bloat합니다. 호출자가 가지고 싶은 세부 사항의 수준을 결정하도록 합니다. - 포함된 하위 트리의 루트만 ID에 따라 나열되는 경우 최소입니다. 클러스터는 INCLUDED(네임스페이스가 포함되지만 나열되지 않음) 또는 CryostatIAL(최소 하나의 네임스페이스가 명시적으로 포함됨)일 수 있습니다. 네임스페이스는 INCLUDED일 수 있습니다. - 알려진 모든 클러스터와 네임스페이스가 해당 ID와 이름이 있는 경우 표준 [default]입니다. 클러스터는 INCLUDED(모든 네임스페이스는 INCLUDED로 명시적으로 나열됨), CryostatIAL(모든 네임스페이스는 명시적으로 나열되며, 일부 네임스페이스는 명시적으로 나열되며 일부 네임스페이스는 EXCLUDED로 나열됨), EXCLUDED(모든 네임스페이스는 EXCLUDED로 명시적으로 나열됩니다). 네임스페이스는 INCLUDED 또는 EXCLUDED 중 하나일 수 있습니다. - 모든 클러스터와 네임스페이스가 메타데이터로 보강되는 경우 High입니다.
52.1.2. 매개 변수 링크 복사링크가 클립보드에 복사되었습니다!
52.1.2.1. 본문 매개변수 링크 복사링크가 클립보드에 복사되었습니다!
| 이름 | 설명 | 필수 항목 | 기본 | 패턴 |
|---|---|---|---|---|
| body | X |
52.1.2.2. 쿼리 매개변수 링크 복사링크가 클립보드에 복사되었습니다!
| 이름 | 설명 | 필수 항목 | 기본 | 패턴 |
|---|---|---|---|---|
| 세부 정보 | - | STANDARD |
52.1.3. 반환 유형 링크 복사링크가 클립보드에 복사되었습니다!
52.1.4. 콘텐츠 유형 링크 복사링크가 클립보드에 복사되었습니다!
- application/json
52.1.5. 응답 링크 복사링크가 클립보드에 복사되었습니다!
| 코드 | 메시지 | datatype |
|---|---|---|
| 200 | 성공적인 응답입니다. | |
| 0 | 예기치 않은 오류 응답 |
52.1.6. Samples 링크 복사링크가 클립보드에 복사되었습니다!
52.1.7. 공통 오브젝트 참조 링크 복사링크가 클립보드에 복사되었습니다!
52.1.7.1. ComputeEffectiveAccessScopeRequestPayload 링크 복사링크가 클립보드에 복사되었습니다!
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| simpleRules |
52.1.7.2. ProtobufAny 링크 복사링크가 클립보드에 복사되었습니다!
any 는 직렬화된 메시지의 유형을 설명하는 URL과 함께 임의의 직렬화된 프로토콜 버퍼 메시지를 포함합니다.
protobuf 라이브러리는 유틸리티 함수 또는 Any 유형의 추가 생성 메서드 형태로 모든 값의 팩/unpack을 지원합니다.
예 1: 팩 및 C++에서 메시지의 압축을 풉니다.
Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
...
}
예 2: Java에서 메시지 팩 및 압축을 풉니다.
Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
any.Unpack(foo)
...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
...
}
protobuf 라이브러리에서 제공하는 pack 메서드는 기본적으로 유형 URL로 'type.googleapis.com/full.type.name'을 사용하고 압축 해제 방법은 유형 URL에서 마지막 '/' 후에만 정규화된 유형 이름을 사용합니다(예: "foo.bar.com/x/y.z")는 유형 이름 "y.z"를 생성합니다.
52.1.7.2.1. JSON 표현 링크 복사링크가 클립보드에 복사되었습니다!
Any 값의 JSON 표현에서는 형식 URL을 포함하는 추가 필드 @type 과 함께 deserialized 포함 메시지의 정규식을 사용합니다. 예제:
package google.profile;
message Person {
string first_name = 1;
string last_name = 2;
}
{
"@type": "type.googleapis.com/google.profile.Person",
"firstName": <string>,
"lastName": <string>
}
포함된 메시지 유형이 잘 알려져 있고 사용자 지정 JSON 표현이 있는 경우 해당 표현에 @type 필드 외에도 사용자 지정 JSON이 포함된 필드 값을 추가합니다. 예(메시지 [google.protobuf.Duration][]).
{
"@type": "type.googleapis.com/google.protobuf.Duration",
"value": "1.212s"
}
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| typeUrl | 문자열 |
직렬화된 프로토콜 버퍼 메시지의 유형을 고유하게 식별하는 URL/리소스 이름입니다. 이 문자열에는 하나 이상의 \"/\" 문자가 포함되어야 합니다. URL 경로의 마지막 세그먼트는 | |||
| value | byte[] | 지정된 유형의 유효한 직렬화 프로토콜 버퍼여야 합니다. | byte |
52.1.7.3. RuntimeError 링크 복사링크가 클립보드에 복사되었습니다!
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| error | 문자열 | ||||
| 코드 | 정수 | int32 | |||
| message | 문자열 | ||||
| 세부 정보 |
52.1.7.4. SimpleAccessScopeRules 링크 복사링크가 클립보드에 복사되었습니다!
반복되는 필드의 각 요소는 개별 규칙입니다. 규칙이 논리 OR로 결합됩니다. 리소스 x 를 허용하는 규칙이 있는 경우x 는 액세스 범위에 있습니다.
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| includedClusters |
| ||||
| includedNamespaces | |||||
| clusterLabelSelectors | |||||
| namespaceLabelSelectors |
52.1.7.5. SimpleAccessScopeRulesNamespace 링크 복사링크가 클립보드에 복사되었습니다!
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| clusterName | 문자열 | 두 필드를 모두 설정해야 합니다. | |||
| namespaceName | 문자열 |
52.1.7.6. StorageEffectiveAccessScope 링크 복사링크가 클립보드에 복사되었습니다!
EffectiveAccessScope는 현재 상태에 따라 "범위 내" 클러스터와 네임스페이스를 설명합니다. 기본적으로 AccessScope가 현재 알려진 클러스터 및 네임스페이스에 적용되는 경우 결과는 EffectiveAccessScope입니다.
EffectiveAccessScope는 포함 및 제외된 노드가 있는 트리를 나타냅니다. 노드가 포함된 경우 모든 하위 노드가 포함됩니다.
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| 클러스터 |
52.1.7.7. StorageEffectiveAccessScopeCluster 링크 복사링크가 클립보드에 복사되었습니다!
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| id | 문자열 | ||||
| name | 문자열 | ||||
| 상태 | UNKNOWN, INCLUDED, EXCLUDED, PARTIAL, | ||||
| labels |
| ||||
| 네임스페이스 |
52.1.7.8. StorageEffectiveAccessScopeNamespace 링크 복사링크가 클립보드에 복사되었습니다!
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| id | 문자열 | ||||
| name | 문자열 | ||||
| 상태 | UNKNOWN, INCLUDED, EXCLUDED, PARTIAL, | ||||
| labels |
|
52.1.7.9. StorageEffectiveAccessScopeState 링크 복사링크가 클립보드에 복사되었습니다!
| 열거 값 |
|---|
| 알 수 없음 |
| INCLUDED |
| 제외됨 |
| 부분적 |
52.1.7.10. StorageSetBasedLabelSelector 링크 복사링크가 클립보드에 복사되었습니다!
SetBasedLabelSelector는 설정 기반 레이블 요구 사항만 허용합니다.
사용 가능한 다음 태그: 3
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| 요구사항 |
52.1.7.11. StorageSetBasedLabelSelectorOperator 링크 복사링크가 클립보드에 복사되었습니다!
| 열거 값 |
|---|
| 알 수 없음 |
| IN |
| NOT_IN |
| EXISTS |
| NOT_EXISTS |
52.1.7.12. StorageSetBasedLabelSelectorRequirement 링크 복사링크가 클립보드에 복사되었습니다!
Next available tag: 4
| 필드 이름 | 필수 항목 | Cryostat | 유형 | 설명 | 형식 |
|---|---|---|---|---|---|
| key | 문자열 | ||||
| op | UNKNOWN, IN, NOT_IN, EXISTS, NOT_EXISTS, | ||||
| 값 |
|