kube-apiserver Admission (v1) [page]deterministic
## Resource Types
- [AdmissionReview](#admission-k8s-io-v1-AdmissionReview)
## `AdmissionReview` {#admission-k8s-io-v1-AdmissionReview}
<p>AdmissionReview describes an admission review request/response.</p>
<table class="table"> <thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> <tbody> <tr><td><code>apiVersion</code><br/>string</td><td><code>admission.k8s.io/v1</code></td></tr> <tr><td><code>kind</code><br/>string</td><td><code>AdmissionReview</code></td></tr> <tr><td><code>request</code><br/> <a href="#admission-k8s-io-v1-AdmissionRequest"><code>AdmissionRequest</code></a> </td> <td> <p>request describes the attributes for the admission request.</p> </td> </tr> <tr><td><code>response</code><br/> <a href="#admission-k8s-io-v1-AdmissionResponse"><code>AdmissionResponse</code></a> </td> <td> <p>response describes the attributes for the admission response.</p> </td> </tr> </tbody> </table>
## `AdmissionRequest` {#admission-k8s-io-v1-AdmissionRequest}
Appears in:
- [AdmissionReview](#admission-k8s-io-v1-AdmissionReview)
<p>AdmissionRequest describes the admission.Attributes for the admission request.</p>
<table class="table"> <thead><tr><th width="30%">Field</th><th>Description</th></tr></thead> <tbody> <tr><td><code>uid</code><br/> <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/types#UID"><code>k8s.io/apimachinery/pkg/types.UID</code></a> </td> <td> <p>uid is an identifier for the individual request/response. It allows us to distinguish instances of requests which are otherwise identical (parallel requests, requests when earlier requests did not modify etc) The UID is meant to track the round trip (request/response) between the KAS and the WebHook, not the user request. It is suitable for correlating log entries between the webhook and apiserver, for either auditing or debugging.</p> </td> </tr> <tr><td><code>kind</code><br/> <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#GroupVersionKind"><code>meta/v1.GroupVersionKind</code></a> </td> <td> <p>kind is the fully-qualified type of object being submitted (for example, v1.Pod or autoscaling.v1.Scale)</p> </td> </tr> <tr><td><code>resource</code><br/> <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#GroupVersionResource"><code>meta/v1.GroupVersionResource</code></a> </td> <td> <p>resource is the fully-qualified resource being requested (for example, v1.pods)</p> </td> </tr> <tr><td><code>subResource</code><br/> <code>string</code> </td> <td> <p>subResource is the subresource being requested, if any (for example, "status" or "scale")</p> </td> </tr> <tr><td><code>requestKind</code><br/> <a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#GroupVersionKind"><code>meta/v1.GroupVersionKind</code></a> </td> <td> <p>requestKind is the fully-qualified type of the original API request (for example, v1.Pod or autoscaling.v1.Scale). If this is specified and differs from the value in "kind", an equivalent match and conversion was performed.</p> <p>For example, if deployments can be modified via apps/v1 and apps/v1beta1, and a webhook registered a rule of <code>apiGroups:["apps"], apiVersions:["v1"], resources: ["deployments"]</code> and <code>matchPolicy: Equivalent</code>, an API request to apps/v1beta1 deployments would be converted and sent to the webhook with <code>kind: {group:"apps", version:"v1", kind:"Deployment"}</code> (matching the rule the webhook registered for), and <code>requestKind: {group:"apps", version:"v1beta1", kind:"Deployment"}</code> (indicating the kind of the original API request).</p> <p>See documentation for the "matchPolicy" field in the webhook configuration type for more details.</p> </td> </tr> <tr><td><code>requestResource</code><br/> <a href="https://pkg.go.dev/k8s.io/apimachinery/p …(trimmed)