Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der deny Effekt wird verwendet, um eine Ressourcenanforderung zu verhindern, die nicht mit definierten Standards über eine Richtliniendefinition übereinstimmt und die Anforderung fehlschlägt.
Bewertung verweigern
Wenn Sie eine übereinstimmende Ressource im Ressourcen-Manager-Modus erstellen oder aktualisieren, wird die Anforderung verhindert, bevor sie an den Ressourcenanbieter gesendet wird. Für die Anforderung wird 403 (Forbidden) zurückgegeben. Im Portal kann Forbidden als ein Bereitstellungsstatus angezeigt werden, der durch die Richtlinienzuweisung verhindert wurde. Für einen Ressourcenanbietermodus verwaltet der Ressourcenanbieter die Auswertung der Ressource.
Bei der Auswertung vorhandener Ressourcen werden Ressourcen, die einer deny Richtliniendefinition entsprechen, als nicht konform gekennzeichnet.
Eigenschaften verweigern
Für einen Ressourcen-Manager-Modus verfügt der deny Effekt nicht über weitere Eigenschaften für die Verwendung in der then Bedingung der Richtliniendefinition.
Für einen Ressourcenanbietermodus von Microsoft.Kubernetes.Data, hat der deny Effekt die folgenden Untereigenschaften von details. Die Verwendung von templateInfo ist für neue oder aktualisierte Richtliniendefinitionen erforderlich, da constraintTemplate sie veraltet sind.
-
templateInfo(erforderlich)- Kann nicht mit
constraintTemplateverwendet werden. -
sourceType(erforderlich)Definiert den Quelltyp für die Einschränkungsvorlage. Zulässige Werte:
PublicURLoderBase64Encoded.Wenn
PublicURL, gepaart mit Eigenschafturl, um die Position der Einschränkungsvorlage bereitzustellen. Auf den Speicherort muss öffentlich zugegriffen werden können.Warnung
Verwenden Sie keine SAS-URIs oder Token in
urloder andere Elemente, die ein Geheimnis offenlegen könnten.Wenn
Base64Encoded, gepaart mit Eigenschaftcontent, um die base64-codierte Einschränkungsvorlage bereitzustellen. Siehe Erstellen einer Richtliniendefinition aus Einschränkungsvorlage zum Erstellen einer benutzerdefinierten Definition aus einer vorhandenen Open Policy Agent (OPA) Gatekeeper v3-Einschränkungsvorlage.
- Kann nicht mit
-
constraint(optional)- Kann nicht mit
templateInfoverwendet werden. - Die CRD-Implementierung der Einschränkungsvorlage. Verwendet Parameter, die als
values{{ .Values.<valuename> }}übergeben werden. In Beispiel 2 unten sind{{ .Values.excludedNamespaces }}diese Werte und{{ .Values.allowedContainerImagesRegex }}.
- Kann nicht mit
-
constraintTemplate(veraltet)- Kann nicht mit
templateInfoverwendet werden. - Muss beim Erstellen oder Aktualisieren einer Richtliniendefinition durch ersetzt
templateInfowerden. - Die Einschränkungsvorlage CustomResourceDefinition (CRD), die neue Einschränkungen definiert. Die Vorlage definiert die Rego-Logik, das Einschränkungsschema und die Einschränkungsparameter, die von
valuesAzure Policy übergeben werden. Weitere Informationen zu Gatekeeper-Einschränkungen.
- Kann nicht mit
-
constraintInfo(optional)- Kann nicht mit
constraint,constraintTemplate,apiGroupsoderkindsverwendet werden. - Wenn
constraintInfodies nicht möglich ist, kann die Einschränkung aus und vontemplateInfoder Richtlinie generiert werden. -
sourceType(erforderlich)Definiert den Typ der Quelle für die Einschränkung. Zulässige Werte:
PublicURLoderBase64Encoded.Wenn
PublicURL, gepaart mit Eigenschafturl, um die Position der Einschränkung bereitzustellen. Auf den Speicherort muss öffentlich zugegriffen werden können.Warnung
Verwenden Sie keine SAS-URIs oder Token in
urloder andere Elemente, die ein Geheimnis offenlegen könnten.
- Kann nicht mit
-
namespaces(optional)- Ein Array von Kubernetes-Namespaces , auf die die Richtlinienauswertung beschränkt werden soll.
- Ein leerer oder fehlender Wert bewirkt, dass die Richtlinienauswertung alle Namespaces enthält, mit Ausnahme der in
excludedNamespaces.
-
excludedNamespaces(erforderlich)- Ein Array von Kubernetes-Namespaces , die von der Richtlinienauswertung ausgeschlossen werden sollen.
-
labelSelector(erforderlich)- Ein Objekt, das (Objekt) und
matchExpression(Array)-Eigenschaften enthältmatchLabels, um anzugeben, welche Kubernetes-Ressourcen für die Richtlinienauswertung einbezogen werden sollen, die den bereitgestellten Bezeichnungen und Selektoren entsprechen. - Ein leerer oder fehlender Wert bewirkt, dass die Richtlinienauswertung alle Bezeichnungen und Selektoren enthält, außer Namespaces, die in
excludedNamespacesdefiniert sind.
- Ein Objekt, das (Objekt) und
-
apiGroups(erforderlich bei Verwendung von templateInfo)- Ein Array , das die API-Gruppen enthält, die übereinstimmen sollen. Ein leeres Array (
[""]) ist die Kern-API-Gruppe. - Die Definition
["*"]für apiGroups ist unzulässig.
- Ein Array , das die API-Gruppen enthält, die übereinstimmen sollen. Ein leeres Array (
-
kinds(erforderlich bei Verwendung von templateInfo)- Ein Array , das die Art des Kubernetes-Objekts enthält, auf das die Auswertung beschränkt werden soll.
- Das Definieren
["*"]für Typen ist unzulässig.
-
values(optional)- Definiert alle Parameter und Werte, die an die Einschränkung übergeben werden sollen. Jeder Wert muss in der Einschränkungsvorlage CRD vorhanden sein.
Beispiel "Ablehnen"
Beispiel 1: Verwenden des Effekts für Ressourcen-Manager-Modi deny .
"then": {
"effect": "deny"
}
Beispiel 2: Verwenden des deny Effekts für einen Ressourcenanbietermodus von Microsoft.Kubernetes.Data. Die zusätzlichen Informationen in details.templateInfo deklarieren die Verwendung und PublicURL legt url sie auf den Speicherort der Einschränkungsvorlage fest, die in Kubernetes verwendet werden soll, um die zulässigen Containerimages einzuschränken.
"then": {
"effect": "deny",
"details": {
"templateInfo": {
"sourceType": "PublicURL",
"url": "https://store.policy.core.windows.net/kubernetes/container-allowed-images/v1/template.yaml",
},
"values": {
"imageRegex": "[parameters('allowedContainerImagesRegex')]"
},
"apiGroups": [
""
],
"kinds": [
"Pod"
]
}
}
Nächste Schritte
- Sehen Sie sich die Beispiele unter Azure Policy-Beispiele an.
- Lesen Sie die Informationen unter Struktur von Azure Policy-Definitionen.
- Informieren Sie sich über das programmgesteuerte Erstellen von Richtlinien.
- Informieren Sie sich über das Abrufen von Konformitätsdaten.
- Erfahren Sie, wie Sie nicht konforme Ressourcen korrigieren können.
- Lesen Sie den Artikel zu Azure-Verwaltungsgruppen.