5장. ValidatingAdmissionPolicy [admissionregistration.k8s.io/v1]
- 설명
- ValidatingAdmissionPolicy는 오브젝트를 변경하지 않고 수락하거나 거부하는 승인 검증 정책의 정의를 설명합니다.
- 유형
-
object
5.1. 사양
속성 | 유형 | 설명 |
---|---|---|
|
| APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 자세한 내용은 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 표준 오브젝트 메타데이터; 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata. | |
|
| ValidatingAdmissionPolicySpec은 AdmissionPolicy의 원하는 동작의 사양입니다. |
|
| ValidatingAdmissionPolicyStatus는 승인 검증 정책의 상태를 나타냅니다. |
5.1.1. .spec
- 설명
- ValidatingAdmissionPolicySpec은 AdmissionPolicy의 원하는 동작의 사양입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| auditAnnotations에는 API 요청의 감사 이벤트에 대한 감사 주석을 생성하는 데 사용되는 CEL 표현식이 포함되어 있습니다. 검증 및 auditAnnotations는 모두 비어 있지 않을 수 있습니다. 검증 또는 감사Annotations가 필요합니다. |
|
| AuditAnnotation은 API 요청에 대한 감사 주석을 생성하는 방법을 설명합니다. |
|
| failurePolicy는 승인 정책의 실패를 처리하는 방법을 정의합니다. CEL 표현식 구문 분석 오류, 유형 검사 오류, 런타임 오류 및 유효하지 않은 정책 정의 또는 바인딩에서 오류가 발생할 수 있습니다. spec.paramKind가 존재하지 않는 종류인 경우 정책이 유효하지 않습니다. spec.paramRef.name이 존재하지 않는 리소스를 참조하는 경우 바인딩이 유효하지 않습니다. failurePolicy는 false로 평가되는 검증을 처리하는 방법을 정의하지 않습니다. failurePolicy가 Fail로 설정된 경우 ValidatingAdmissionPolicyBinding validationActions는 실패 적용 방법을 정의합니다. 허용되는 값은 Ignore 또는 Fail입니다. 기본값은 Fail입니다.
가능한 enum 값: - |
|
| MatchConditions는 요청의 유효성을 검사하려면 충족해야 하는 조건 목록입니다. 일치 조건은 규칙, namespaceSelector 및 objectSelector와 이미 일치하는 요청을 필터링합니다. 일치하는 matchConditions의 빈 목록은 모든 요청과 일치합니다. 허용되는 최대 64개의 일치 조건이 있습니다.
매개변수 오브젝트가 제공되면 검증 표현식과 동일한 방식으로 정확히 일치하는 논리는 (순차로) 1입니다. ANY matchCondition이 Cryostat로 평가되면 정책을 건너뜁니다. 2. ALL matchConditions가 TRUE로 평가되면 정책이 평가됩니다. 3. matchCondition이 오류(단지 없음)로 평가되는 경우 - failurePolicy=Fail이 없으면 요청을 거부합니다. 실패Policy=Ignore인 경우 정책을 건너뜁니다. |
|
| MatchCondition은 Webhook로 요청을 전송하려면 충족되어야 하는 조건을 나타냅니다. |
|
| MatchResources는 일치 기준을 충족하는지 여부에 따라 오브젝트에 대한 허용 제어 정책을 실행할지 여부를 결정합니다. exclude 규칙은 include 규칙보다 우선합니다(리소스가 둘 다 일치하는 경우 제외됨) |
|
| ParamKind는 그룹 종류와 버전의 튜플입니다. |
|
| 검증에는 검증을 적용하는 데 사용되는 CEL 표현식이 포함됩니다. 검증 및 감사Annotations가 모두 비어 있지 않을 수 있습니다. 최소 하나의 유효성 검사 또는 감사 주석이 필요합니다. |
|
| validation은 검증을 적용하는 데 사용되는 CEL 표현식을 지정합니다. |
|
|
변수에는 다른 표현식의 구성에 사용할 수 있는 변수 정의가 포함되어 있습니다. 각 변수는 이름이 지정된 CEL 표현식으로 정의됩니다. 여기에 정의된 변수는 나머지 정책보다 먼저 MatchConditions 변수의 표현식은 목록의 앞부분에서 정의한 다른 변수를 참조할 수 있지만 이후의 변수는 참조할 수 없습니다. 따라서 첫 번째 모양과 acyclic의 순서에 따라 변수를 정렬해야 합니다. |
|
| 변수는 구성에 사용되는 변수의 정의입니다. 변수는 이름이 지정된 표현식으로 정의됩니다. |
5.1.2. .spec.auditAnnotations
- 설명
- auditAnnotations에는 API 요청의 감사 이벤트에 대한 감사 주석을 생성하는 데 사용되는 CEL 표현식이 포함되어 있습니다. 검증 및 auditAnnotations는 모두 비어 있지 않을 수 있습니다. 검증 또는 감사Annotations가 필요합니다.
- 유형
-
array
5.1.3. .spec.auditAnnotations[]
- 설명
- AuditAnnotation은 API 요청에 대한 감사 주석을 생성하는 방법을 설명합니다.
- 유형
-
object
- 필수 항목
-
key
-
valueExpression
-
속성 | 유형 | 설명 |
---|---|---|
|
| key는 감사 주석 키를 지정합니다. ValidatingAdmissionPolicy의 감사 주석 키는 고유해야 합니다. 키는 63바이트를 초과할 수 없는 정규화된 이름([A-Za-z0-9][-A-Za-z0-9_.]*이어야 합니다. 키는 ValidatingAdmissionPolicy의 리소스 이름과 결합하여 "{ValidatingAdmissionPolicy name}/{key}" 감사 주석 키를 구성합니다. 승인 Webhook에서 이 ValidatingAdmissionPolicy 및 동일한 감사 주석 키와 동일한 리소스 이름을 사용하는 경우 주석 키가 동일합니다. 이 경우 키로 작성된 첫 번째 주석은 감사 이벤트에 포함되며 동일한 키가 있는 모든 후속 주석이 삭제됩니다. 필수 항목입니다. |
|
| valueExpression은 감사 주석 값을 생성하기 위해 CEL에서 평가하는 표현식을 나타냅니다. 이 표현식은 문자열 또는 null 값으로 평가되어야 합니다. 표현식이 문자열로 평가되면 audit 주석이 문자열 값과 함께 포함됩니다. 표현식이 null 또는 빈 문자열로 평가되면 audit 주석이 생략됩니다. valueExpression 길이는 5kb를 초과할 수 없습니다. valueExpression의 결과가 길이 10kb를 초과하는 경우 10kb로 잘립니다. 여러 ValidatingAdmissionPolicyBinding 리소스가 API 요청과 일치하는 경우 각 바인딩에 대해 valueExpression이 평가됩니다. valueExpressions로 생성된 모든 고유 값은 쉼표로 구분된 목록으로 결합됩니다. 필수 항목입니다. |
5.1.4. .spec.matchConditions
- 설명
MatchConditions는 요청의 유효성을 검사하려면 충족해야 하는 조건 목록입니다. 일치 조건은 규칙, namespaceSelector 및 objectSelector와 이미 일치하는 요청을 필터링합니다. 일치하는 matchConditions의 빈 목록은 모든 요청과 일치합니다. 허용되는 최대 64개의 일치 조건이 있습니다.
매개변수 오브젝트가 제공되면 검증 표현식과 동일한 방식으로
params
처리를 통해 액세스할 수 있습니다.정확히 일치하는 논리는 (순차로) 1입니다. ANY matchCondition이 Cryostat로 평가되면 정책을 건너뜁니다. 2. ALL matchConditions가 TRUE로 평가되면 정책이 평가됩니다. 3. matchCondition이 오류(단지 없음)로 평가되는 경우 - failurePolicy=Fail이 없으면 요청을 거부합니다. 실패Policy=Ignore인 경우 정책을 건너뜁니다.
- 유형
-
array
5.1.5. .spec.matchConditions[]
- 설명
- MatchCondition은 Webhook로 요청을 전송하려면 충족되어야 하는 조건을 나타냅니다.
- 유형
-
object
- 필수 항목
-
name
-
expression
-
속성 | 유형 | 설명 |
---|---|---|
|
| 표현식은 CEL에 의해 평가될 표현식을 나타냅니다. bool로 평가해야 합니다. CEL 표현식은 CEL 변수로 구성된 AdmissionRequest 및 Authorizer의 콘텐츠에 액세스할 수 있습니다. 'object' - 들어오는 요청에서 오브젝트입니다. 값은 DELETE 요청에 대해 null입니다. 'oldObject' - 기존 오브젝트입니다. 값은 CREATE 요청에 대해 null입니다. 'request' - 승인 요청의 속성(/pkg/apis/admission/types.go#AdmissionRequest). 'authorizer' - A CEL Authorizer. 를 사용하여 요청의 주체(사용자 또는 서비스 계정)에 대한 권한 부여 검사를 수행할 수 있습니다. https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz 'authorizer.requestResource' - 'authorizer'에서 구성하고 요청 리소스로 구성된 CEL 리소스Check를 참조하십시오. CEL에 대한 문서: https://kubernetes.io/docs/reference/using-api/cel/ 필수 항목입니다. |
|
| name은 MatchConditions의 전략적 병합과 로깅 목적으로 식별자를 제공하는 데 사용되는 이 일치 조건의 식별자입니다. 적절한 이름은 관련 표현식을 설명해야 합니다. 이름은 영숫자, '-', '' 또는 '.'로 구성된 정규화된 이름이어야 하며 영숫자 문자로 시작하고 끝나야 합니다. 'MyName' 또는 'my.name' 또는 '123-abc', validation에 사용되는 regex는 '([A-Za-z0-9][-A-Za-z0-9]*)?[A-Za-z0-9]') 선택적 DNS 하위 도메인 접두사 및 '/'(예: 'example.com/MyName')입니다. 필수 항목입니다. |
5.1.6. .spec.matchConstraints
- 설명
- MatchResources는 일치 기준을 충족하는지 여부에 따라 오브젝트에 대한 허용 제어 정책을 실행할지 여부를 결정합니다. exclude 규칙은 include 규칙보다 우선합니다(리소스가 둘 다 일치하는 경우 제외됨)
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| ExcludeResourceRules는 ValidatingAdmissionPolicy가 중요하지 않아야 하는 resources/subresource에 대한 작업을 설명합니다. exclude 규칙은 include 규칙보다 우선합니다(리소스가 둘 다 일치하는 경우 제외됨) |
|
| NamedRuleWithOperations는 ResourceNames가 있는 Operations 및 Resources의 튜플입니다. |
|
| matchPolicy는 "MatchResources" 목록이 들어오는 요청과 일치하도록 사용되는 방법을 정의합니다. 허용되는 값은 "Exact" 또는 "Equivalent"입니다.
- exact: 지정된 규칙과 정확히 일치하는 경우에만 요청과 일치합니다. 예를 들어 apps/v1, apps/v1beta1 및 extensions/v1beta1을 통해 배포를 수정할 수 있지만 extensions/v1beta1이 포함되지만
- equivalent: 다른 API 그룹 또는 버전을 통해도 규칙에 나열된 리소스를 수정하는 경우 요청과 일치합니다. 예를 들어, apps/v1beta1을 통해 배포를 수정할 수 있고 extensions/v1beta1, extensions/v1beta1 및 "rules"가 포함된 기본값은 "Equivalent"입니다.
가능한 enum 값: - |
| namespaceSelector는 해당 오브젝트의 네임스페이스가 선택기와 일치하는지 여부에 따라 오브젝트에서 승인 제어 정책을 실행할지 여부를 결정합니다. 오브젝트 자체가 네임스페이스인 경우 object.metadata.labels에서 일치가 수행됩니다. 오브젝트가 다른 클러스터 범위 리소스인 경우 정책을 건너뛰지 않습니다. 예를 들어, 네임스페이스가 "0" 또는 "1"의 "runlevel" 또는 "1"과 연결되어 있지 않은 모든 오브젝트에 Webhook를 실행하려면 다음과 같이 선택기를 설정합니다. "namespaceSelector": { "matchExpressions": [ { "key": "runlevel", "operator": "NotIn", "NotIn", "values": [ "0", "1" ] }} 대신 네임스페이스가 "prod" 또는 "staging"의 "environment" 또는 "staging"과 연결된 모든 오브젝트에 대해서만 정책을 실행하려면 다음과 같이 선택기를 설정합니다. "namespaceSelector": { "matchExpressions": [ { "key": "environment", "operator": "In", "values": [ "prod", "staging" ] }} 라벨 선택기에 대한 자세한 내용은 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 을 참조하십시오. 기본값은 모든 것과 일치하는 빈 LabelSelector입니다. | |
| ObjectSelector는 오브젝트에 일치하는 라벨이 있는지 여부에 따라 검증을 실행할지 여부를 결정합니다. objectSelector는 cel 검증으로 전송되는 oldObject 및 newObject 둘 다에 대해 평가되며 오브젝트 중 하나가 선택기와 일치하는 경우 일치하는 것으로 간주됩니다. null 오브젝트(삭제의 경우oldObject 또는 newObject) 또는 라벨이 있을 수 없는 오브젝트(예: DeploymentRollback 또는 PodProxyOptions 오브젝트)는 일치하는 것으로 간주되지 않습니다. 최종 사용자는 레이블을 설정하여 승인 Webhook를 건너뛸 수 있으므로 Webhook가 옵트인인 경우에만 오브젝트 선택기를 사용합니다. 기본값은 모든 것과 일치하는 빈 LabelSelector입니다. | |
|
| ResourceRules는 ValidatingAdmissionPolicy와 일치하는 resources/subresource에 대한 작업을 설명합니다. 정책과 모든 규칙과 일치하는 경우 작업이 중요합니다. |
|
| NamedRuleWithOperations는 ResourceNames가 있는 Operations 및 Resources의 튜플입니다. |
5.1.7. .spec.matchConstraints.excludeResourceRules
- 설명
- ExcludeResourceRules는 ValidatingAdmissionPolicy가 중요하지 않아야 하는 resources/subresource에 대한 작업을 설명합니다. exclude 규칙은 include 규칙보다 우선합니다(리소스가 둘 다 일치하는 경우 제외됨)
- 유형
-
array
5.1.8. .spec.matchConstraints.excludeResourceRules[]
- 설명
- NamedRuleWithOperations는 ResourceNames가 있는 Operations 및 Resources의 튜플입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| APIGroups는 리소스가 속한 API 그룹입니다. ''는 모든 그룹입니다. ''이 있는 경우 슬라이스 길이는 하나여야 합니다. 필수 항목입니다. |
|
| APIVersions는 리소스가 속한 API 버전입니다. ''는 모든 버전입니다. ''이 있는 경우 슬라이스 길이는 하나여야 합니다. 필수 항목입니다. |
|
| 작업은 승인 후크가 모든 작업 및 추가된 향후 승인 작업에 대해 - CREATE, UPDATE, DELETE, CONNECT 또는 *에 대한 관심 있는 작업입니다. '*'가 있는 경우 슬라이스의 길이는 하나여야 합니다. 필수 항목입니다. |
|
| resourceNames는 규칙이 적용되는 선택적 이름 목록입니다. 빈 세트는 모든 것이 허용됨을 의미합니다. |
|
| 리소스는 이 규칙이 적용되는 리소스 목록입니다. 예를 들어 'pods'는 Pod를 의미합니다. 'pods/log'는 Pod의 로그 하위 리소스를의미합니다. 'pods/'는 모든 리소스를 의미하지만 하위 리소스는 아닙니다. 'pods/'는 Pod의 모든 하위 리소스를의미합니다. '/*'는 모든 스케일 하위 리소스를 의미합니다./*는 모든 리소스 및 해당 하위 리소스를 의미합니다. 와일드카드가 있는 경우 검증 규칙은 리소스가 서로 겹치지 않도록 합니다. enclosing 오브젝트에 따라 하위 리소스가 허용되지 않을 수 있습니다. 필수 항목입니다. |
|
| scope는 이 규칙의 범위를 지정합니다. 유효한 값은 "Cluster", "Namespaced", "" "Cluster"는 클러스터 범위 리소스만 이 규칙과 일치함을 의미합니다. 네임스페이스 API 오브젝트는 클러스터 범위입니다. "네임스페이스됨"은 네임스페이스가 지정된 리소스만 이 규칙과 일치함을 의미합니다. ""은 범위 제한이 없음을 의미합니다. 하위 리소스는 상위 리소스의 범위와 일치합니다. 기본값은 "*"입니다. |
5.1.9. .spec.matchConstraints.resourceRules
- 설명
- ResourceRules는 ValidatingAdmissionPolicy와 일치하는 resources/subresource에 대한 작업을 설명합니다. 정책과 모든 규칙과 일치하는 경우 작업이 중요합니다.
- 유형
-
array
5.1.10. .spec.matchConstraints.resourceRules[]
- 설명
- NamedRuleWithOperations는 ResourceNames가 있는 Operations 및 Resources의 튜플입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| APIGroups는 리소스가 속한 API 그룹입니다. ''는 모든 그룹입니다. ''이 있는 경우 슬라이스 길이는 하나여야 합니다. 필수 항목입니다. |
|
| APIVersions는 리소스가 속한 API 버전입니다. ''는 모든 버전입니다. ''이 있는 경우 슬라이스 길이는 하나여야 합니다. 필수 항목입니다. |
|
| 작업은 승인 후크가 모든 작업 및 추가된 향후 승인 작업에 대해 - CREATE, UPDATE, DELETE, CONNECT 또는 *에 대한 관심 있는 작업입니다. '*'가 있는 경우 슬라이스의 길이는 하나여야 합니다. 필수 항목입니다. |
|
| resourceNames는 규칙이 적용되는 선택적 이름 목록입니다. 빈 세트는 모든 것이 허용됨을 의미합니다. |
|
| 리소스는 이 규칙이 적용되는 리소스 목록입니다. 예를 들어 'pods'는 Pod를 의미합니다. 'pods/log'는 Pod의 로그 하위 리소스를의미합니다. 'pods/'는 모든 리소스를 의미하지만 하위 리소스는 아닙니다. 'pods/'는 Pod의 모든 하위 리소스를의미합니다. '/*'는 모든 스케일 하위 리소스를 의미합니다./*는 모든 리소스 및 해당 하위 리소스를 의미합니다. 와일드카드가 있는 경우 검증 규칙은 리소스가 서로 겹치지 않도록 합니다. enclosing 오브젝트에 따라 하위 리소스가 허용되지 않을 수 있습니다. 필수 항목입니다. |
|
| scope는 이 규칙의 범위를 지정합니다. 유효한 값은 "Cluster", "Namespaced", "" "Cluster"는 클러스터 범위 리소스만 이 규칙과 일치함을 의미합니다. 네임스페이스 API 오브젝트는 클러스터 범위입니다. "네임스페이스됨"은 네임스페이스가 지정된 리소스만 이 규칙과 일치함을 의미합니다. ""은 범위 제한이 없음을 의미합니다. 하위 리소스는 상위 리소스의 범위와 일치합니다. 기본값은 "*"입니다. |
5.1.11. .spec.paramKind
- 설명
- ParamKind는 그룹 종류와 버전의 튜플입니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| apiVersion은 리소스가 속한 API 그룹 버전입니다. "group/version" 형식으로 되어 있습니다. 필수 항목입니다. |
|
| kind는 리소스가 속한 API 유형입니다. 필수 항목입니다. |
5.1.12. .spec.validations
- 설명
- 검증에는 검증을 적용하는 데 사용되는 CEL 표현식이 포함됩니다. 검증 및 감사Annotations가 모두 비어 있지 않을 수 있습니다. 최소 하나의 유효성 검사 또는 감사 주석이 필요합니다.
- 유형
-
array
5.1.13. .spec.validations[]
- 설명
- validation은 검증을 적용하는 데 사용되는 CEL 표현식을 지정합니다.
- 유형
-
object
- 필수 항목
-
expression
-
속성 | 유형 | 설명 |
---|---|---|
|
| 표현식은 CEL에서 평가할 표현식을 나타냅니다. ref: https://github.com/google/cel-spec CEL 표현식은 CEL 변수 및 기타 유용한 변수로 구성된 API 요청/응답 내용에 액세스할 수 있습니다. - 'object' - 들어오는 요청의 오브젝트입니다. 값은 DELETE 요청에 대해 null입니다. - 'oldObject' - 기존 오브젝트입니다. 값은 CREATE 요청에 대해 null입니다. - 'request' - API 요청의 속성([ref](/pkg/apis/admission/types.go#AdmissionRequest))). - 'params' - Parameter 리소스는 평가되는 정책 바인딩에 의해 참조됩니다. 정책에 ParamKind가 있는 경우에만 채워집니다. - 'namespaceObject' - 들어오는 오브젝트가 속하는 네임스페이스 오브젝트입니다. 값은 클러스터 범위 리소스에 대해 null입니다. - '변수' - 이름에서 lazily 평가된 값까지 복합 변수 맵입니다. 예를 들어 'foo'라는 변수는 'variables.foo'로 액세스할 수 있습니다. - 'authorizer' - CEL Authorizer. 를 사용하여 요청의 주체(사용자 또는 서비스 계정)에 대한 권한 부여 검사를 수행할 수 있습니다. https://pkg.go.dev/k8s.io/apiserver/pkg/cel/library#Authz - 'authorizer.requestResource' - 'authorizer'에서 생성하고 요청 리소스로 구성된 CEL 리소스Check를 참조하십시오.
'set' 또는 'map'의 목록 유형이 있는 배열의 같음은 요소 순서, 즉 [1, 2] == [2, 1]를 무시합니다. x-kubernetes-list-type을 사용하는 배열에 대한 연결에서는 목록 type: - 'set'의 의미 체계를 사용합니다. |
|
| message는 유효성 검사가 실패할 때 표시되는 메시지를 나타냅니다. Expression에 줄 바꿈이 포함된 경우 메시지가 필요합니다. 메시지에 줄 바꿈이 포함되지 않아야 합니다. 설정되지 않은 경우 메시지는 "failed rule: {Rule}"입니다. 예를 들어 "spec.host와 일치하는 호스트가 있는 URL이어야 함"이 표현식에 줄 바꿈이 포함된 경우입니다. 메시지가 필요합니다. 메시지에 줄 바꿈이 포함되지 않아야 합니다. 설정되지 않은 경우 메시지는 "failed Expression: {Expression}"입니다. |
|
|
MessageExpression은 이 규칙이 실패할 때 반환되는 검증 실패 메시지로 평가되는 CEL 표현식을 선언합니다. messageExpression은 실패 메시지로 사용되므로 문자열을 평가해야 합니다. 유효성 검사에 message 및 messageExpression이 모두 있는 경우 유효성 검사가 실패하면 messageExpression이 사용됩니다. messageExpression으로 인해 런타임 오류가 발생하고 런타임 오류가 기록되고 messageExpression 필드가 설정되지 않은 것처럼 검증 실패 메시지가 생성됩니다. messageExpression이 빈 문자열, 공백만 있는 문자열 또는 줄 바꿈이 포함된 문자열 또는 줄 바꿈이 없는 것처럼 유효성 검사 실패 메시지가 생성되고, 메시지Expression이 줄 바꿈만 있는 빈 문자열/문자열을 생성했다는 사실도 기록됩니다. messageExpression은 'authorizer' 및 'authorizer'를 제외한 |
|
| 이유는 이 검증이 실패한 이유에 대한 머신에서 읽을 수 있는 설명을 나타냅니다. 목록에 있는 첫 번째 검증인 경우 이러한 이유와 해당 HTTP 응답 코드가 클라이언트에 대한 HTTP 응답에 사용됩니다. 현재 지원되는 이유는 "Unauthorized", "Forbidden", "Invalid", "RequestEntityTooLarge"입니다. 설정되지 않은 경우 클라이언트에 대한 응답에 StatusReasonInvalid가 사용됩니다. |
5.1.14. .spec.variables
- 설명
변수에는 다른 표현식의 구성에 사용할 수 있는 변수 정의가 포함되어 있습니다. 각 변수는 이름이 지정된 CEL 표현식으로 정의됩니다. 여기에 정의된 변수는 나머지 정책보다 먼저 MatchConditions
를
제외한 정책의 다른 표현식에서 사용할 수 있습니다.변수의 표현식은 목록의 앞부분에서 정의한 다른 변수를 참조할 수 있지만 이후의 변수는 참조할 수 없습니다. 따라서 첫 번째 모양과 acyclic의 순서에 따라 변수를 정렬해야 합니다.
- 유형
-
array
5.1.15. .spec.variables[]
- 설명
- 변수는 구성에 사용되는 변수의 정의입니다. 변수는 이름이 지정된 표현식으로 정의됩니다.
- 유형
-
object
- 필수 항목
-
name
-
expression
-
속성 | 유형 | 설명 |
---|---|---|
|
| 표현식은 변수 값으로 평가될 표현식입니다. CEL 표현식은 유효성 검사의 CEL 표현식과 동일한 식별자에 액세스할 수 있습니다. |
|
|
name은 변수의 이름입니다. 이름은 유효한 CEL 식별자여야 하며 모든 변수 중에서 고유해야 합니다. 변수는 변수를 통해 다른 표현식에서 액세스할 수 있습니다. 예를 들어 name이 "foo"인 경우 변수 |
5.1.16. .status
- 설명
- ValidatingAdmissionPolicyStatus는 승인 검증 정책의 상태를 나타냅니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
| 조건은 정책의 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다. | |
|
| 컨트롤러에서 관찰하는 생성입니다. |
|
| TypeChecking에는 ValidatingAdmissionPolicy의 표현식을 확인하는 유형이 포함됩니다. |
5.1.17. .status.typeChecking
- 설명
- TypeChecking에는 ValidatingAdmissionPolicy의 표현식을 확인하는 유형이 포함됩니다.
- 유형
-
object
속성 | 유형 | 설명 |
---|---|---|
|
| 각 표현식에 대한 경고 유형 확인입니다. |
|
| ExpressionWarning은 특정 표현식을 대상으로 하는 경고 정보입니다. |
5.1.18. .status.typeChecking.expressionWarnings
- 설명
- 각 표현식에 대한 경고 유형 확인입니다.
- 유형
-
array
5.1.19. .status.typeChecking.expressionWarnings[]
- 설명
- ExpressionWarning은 특정 표현식을 대상으로 하는 경고 정보입니다.
- 유형
-
object
- 필수 항목
-
fieldRef
-
경고
-
속성 | 유형 | 설명 |
---|---|---|
|
| 표현식을 참조하는 필드의 경로입니다. 예를 들어 검증의 첫 번째 항목에 대한 참조는 "spec.validations[0]. expression"입니다. |
|
| 사람이 읽을 수 있는 형식의 정보 유형 검사의 내용입니다. 경고의 각 행에는 표현식이 확인되는 유형 및 컴파일러의 유형 확인 오류가 포함됩니다. |