Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O deny efeito é usado para impedir uma solicitação de recurso que não corresponde aos padrões definidos por meio de uma definição de política e falha na solicitação.
Negar avaliação
Ao criar ou atualizar um recurso correspondente no modo do Resource Manager, negar impede que a solicitação seja enviada antes ao Provedor de Recursos. A solicitação é retornada como um 403 (Forbidden). No portal, Forbidden pode ser exibido como um status de implantação que foi impedido pela atribuição de política. Para um modo provedor de recursos, o provedor de recursos gerencia a avaliação do recurso.
Durante a avaliação dos recursos existentes, os recursos que correspondem a uma deny definição de política são marcados como não compatíveis.
Negar propriedades
No modo do Resource Manager, o efeito deny não tem propriedades adicionais para uso na condição then da definição de política.
No modo provedor de recursos de Microsoft.Kubernetes.Data, o efeito deny tem as subpropriedades de details a seguir. O uso de templateInfo é necessário para novas definições de política ou para definições de política atualizadas, pois constraintTemplate está obsoleto.
-
templateInfo(obrigatório)- Não pode ser usado com
constraintTemplate. -
sourceType(obrigatório)Define o tipo de origem para o modelo de restrição. Valores permitidos:
PublicURLouBase64Encoded.Se
PublicURLestiver associado à propriedadeurl, ele fornecerá a localização do modelo de restrição. A localização deve ser acessível publicamente.Aviso
Não use URIs de SAS ou tokens em
urlou qualquer outra coisa que possa expor um segredo.Caso
Base64Encodedesteja emparelhado com a propriedadecontent, fornecerá o modelo de restrição codificado em base 64. Consulte Criar definição de política a partir do modelo de restrição para criar uma definição personalizada de um modelo de restrição do Gatekeeper V3 (Open Policy Agent) existente.
- Não pode ser usado com
-
constraint(opcional)- Não pode ser usado com
templateInfo. - A implementação de CRD do modelo de restrição. Usa parâmetros passados via
valuescomo{{ .Values.<valuename> }}. No exemplo 2 abaixo, esses valores são{{ .Values.excludedNamespaces }}e{{ .Values.allowedContainerImagesRegex }}.
- Não pode ser usado com
-
constraintTemplate(preterido)- Não pode ser usado com
templateInfo. - Deve ser substituído
templateInfoao criar ou atualizar uma definição de política. - O modelo de restrição CustomResourceDefinition (CRD) que define novas restrições. O modelo define a lógica Rego, o esquema de restrição e os parâmetros de restrição que são passados por meio de
valuesdo Azure Policy. Para obter mais informações, vá para restrições do Gatekeeper.
- Não pode ser usado com
-
constraintInfo(opcional)- Não pode ser usado com
constraint,constraintTemplate,apiGroupsoukinds. - Se
constraintInfonão for fornecido, a restrição poderá ser gerada detemplateInfoe política. -
sourceType(obrigatório)Define o tipo de fonte para o modelo de restrição. Valores permitidos:
PublicURLouBase64Encoded.Caso
PublicURLesteja emparelhado com a propriedadeurl, fornece a localização da restrição. A localização deve ser acessível publicamente.Aviso
Não use URIs de SAS ou tokens em
urlou qualquer outra coisa que possa expor um segredo.
- Não pode ser usado com
-
namespaces(opcional)- Um conjunto de namespaces do Kubernetes para o qual limitar a avaliação de política.
- Um valor vazio ou ausente faz com que a avaliação da política inclua todos os namespaces, exceto os definidos em
excludedNamespaces.
-
excludedNamespaces(obrigatório)- Uma matriz dos namespaces dos Kubernetes a serem excluídos da avaliação de política.
-
labelSelector(obrigatório)- Um objeto que inclui propriedades do
matchLabels(objeto) ematchExpression(matriz) para permitir a especificação de quais recursos do Kubernetes devem ser incluídos na avaliação de política que correspondeu às etiquetas e seletores fornecidos. - Um valor vazio ou ausente faz com que a avaliação da política inclua todos os rótulos e seletores, exceto namespaces definidos em
excludedNamespaces.
- Um objeto que inclui propriedades do
-
apiGroups(necessário ao usar templateInfo)- Uma matriz que inclui os grupos da API correspondentes. Uma matriz vazia (
[""]) é o grupo de API principal. - A definição
["*"]para apiGroups não é permitida.
- Uma matriz que inclui os grupos da API correspondentes. Uma matriz vazia (
-
kinds(necessário ao usar templateInfo)- Uma matriz que inclui o tipo de objeto Kubernetes ao qual limitar a avaliação.
- A definição
["*"]de tipos não é permitida.
-
values(opcional)- Define todos os parâmetros e valores a serem passados para a Restrição. Cada valor deve existir no template de restrição CRD.
Exemplo de negação
Exemplo 1: usando o deny efeito para modos do Resource Manager.
"then": {
"effect": "deny"
}
Exemplo 2: Usando o efeito deny para um modo de provedor de recursos de Microsoft.Kubernetes.Data. As informações adicionais em details.templateInfo declaram o uso de PublicURL e definem url para o local do modelo de constraint a ser usado no Kubernetes para limitar as imagens de contêiner permitidas.
"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"
]
}
}
Próximas etapas
- Revise os exemplos em Exemplos do Azure Policy.
- Revise a estrutura de definição do Azure Policy.
- Entenda como criar políticas de forma programática.
- Saiba como obter dados de conformidade.
- Saiba como corrigir recursos não compatíveis.
- Examine os grupos de gerenciamento do Azure.