|
この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。 |
|
これは未公開の文書です Admission Controller 1.34-dev. |
GatekeeperポリシーはSUSE Security Admission Controllerを使用して配布する
ポリシーは、プッシュされ、最終的にKubernetesクラスター内のSUSE Security Admission Controller `policy-server`によって実行されるように、注釈が付けられる必要があります。
Gatekeeperポリシーの注釈と配布は、Open Policy Agentのポリシーを配布するのと似ています。
ポリシーの注釈付け
ポリシーのディレクトリに次の内容の`metadata.yaml`ファイルを書くつもりです:
rules:
- apiGroups: [""]
apiVersions: ["*"]
resources: ["*"]
operations: ["CREATE"]
mutating: false
contextAware: false
executionMode: gatekeeper
annotations:
io.kubewarden.policy.title: no-default-namespace
io.kubewarden.policy.version: 0.1.0 # should match the OCI tag
io.kubewarden.policy.description: This policy will reject any resource created inside the default namespace
io.kubewarden.policy.author: The Admission Controller Authors
io.kubewarden.policy.url: https://github.com/kubewarden/some-policy
io.kubewarden.policy.source: https://github.com/kubewarden/some-policy
io.kubewarden.policy.license: Apache-2.0
io.kubewarden.policy.usage: |
This policy is just an example.
You can write interesting descriptions about the policy here.
すべてがOpen Policy Agentバージョンのメタデータと同じであることがわかりますが、`executionMode: gatekeeper`部分だけは異なります。
ポリシーに注釈を付けてください:
$ kwctl annotate policy.wasm --metadata-path metadata.yaml --output-path annotated-policy.wasm
ポリシーをプッシュする
ポリシーをOCIレジストリにプッシュしてください:
$ kwctl push annotated-policy.wasm registry.my-company.com/kubewarden/no-default-namespace-gatekeeper:v0.0.1
Policy successfully pushed
Kubernetesにデプロイする
最初にポリシーを`kwctl`ローカルストアにプルする必要があります:
$ kwctl pull registry://registry.my-company.com/kubewarden/no-default-namespace-gatekeeper:v0.0.1
pulling policy...
これで、スキャフォールド`ClusterAdmissionPolicy`リソースを作成できます:
$ kwctl scaffold manifest registry://registry.my-company.com/kubewarden/no-default-namespace-gatekeeper:v0.0.1 --type ClusterAdmissionPolicy
---
apiVersion: policies.kubewarden.io/v1alpha2
kind: ClusterAdmissionPolicy
metadata:
name: generated-policy
spec:
module: "registry://registry.my-company.com/kubewarden/no-default-namespace-gatekeeper:v0.0.1"
settings: {}
rules:
- apiGroups:
- ""
apiVersions:
- "*"
resources:
- "*"
operations:
- CREATE
mutating: false
この`ClusterAdmissionPolicy`リソースを使用して、Kubernetesクラスターにポリシーをデプロイする。