Criação de políticas personalizadas
Você pode criar políticas personalizadas para complementar políticas definidas pelo sistema e implementar um controle de acesso mais refinado.
Você pode criar políticas personalizadas de uma das duas maneiras a seguir:
- Editor visual: selecione serviços de nuvem, ações, recursos e condições de solicitação sem a necessidade de conhecer a sintaxe da política.
- JSON: edite políticas JSON do zero ou com base em uma política existente.
Veja a seguir como criar uma política personalizada que permite aos usuários modificar zonas do DNS no editor visual e na visualização JSON.
Para obter detalhes, consulte Criação de uma política personalizada. Alguns exemplos de políticas de DNS personalizadas comuns são fornecidos.
Exemplos de políticas personalizadas
- Exemplo 1: autorizar os usuários a criar zonas, adicionar conjuntos de registros e exibir as zonas e os conjuntos de registros.
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "dns:zone:create", "dns:recordset:create", "dns:zone:list" "dns:recordset:list" ] }, { "Effect": "Allow", "Action": [ "vpc:*:get*, "vpc:*:list*" ] } ] }
- Exemplo 2: proibir que usuários excluam recursos do DNS.
Uma política de negação deve ser usada em conjunto com outras políticas. Se as permissões concedidas a um usuário contiverem "Allow" e "Deny", as permissões "Deny" terão precedência sobre as permissões "Allow".
O método a seguir pode ser usado se você precisar atribuir permissões da política DNS FullAccess a um usuário, mas também proibir o usuário de excluir recursos do DNS. Crie uma política personalizada para proibir a exclusão de recursos e atribua ambas as políticas ao grupo ao qual o usuário pertence. Em seguida, o usuário pode executar todas as operações no DNS, exceto a exclusão de recursos. Veja a seguir um exemplo de política de negação:
{ "Version": "1.1", "Statement": [ { "Effect": "Deny", "Action": [ "dns:*:delete*" ] } ] }
- Exemplo 3: definir as permissões para vários serviços em uma política
Uma política personalizada pode conter as ações de vários serviços que todos são do tipo global ou de nível de projeto. A seguir está uma política com várias ações:
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "dns:zone:update", "dns:zone:list" ] }, { "Effect": "Allow", "Action": [ "vpc:subnets:create", "vpc:vips:update" ] } ] }