Se as políticas do sistema não atenderem aos seus requisitos de acesso, crie políticas personalizadas para conceder aos usuários do RAM controle preciso sobre clusters, operações, endereços IP ou configurações de criptografia específicos do PolarDB.
Pré-requisitos
Antes de começar, verifique se você tem:
Uma conta Alibaba Cloud. Caso não tenha, cadastre-se primeiro.
Familiaridade com a especificação de recursos do PolarDB em políticas do RAM. Consulte Usar o RAM para autorização de recursos.
Para personalizar permissões ou conceder permissões específicas em tabelas, use o recurso de gerenciamento de permissões do Database Management Service (DMS). Consulte Gerenciar permissões de usuário em bancos de dados MySQL .
Estrutura da política
Uma política do RAM é um documento JSON que define quem pode executar quais ações, em quais recursos e sob quais condições. Cada política contém um ou mais objetos Statement, cada um com:
|
Campo |
Obrigatório |
Descrição |
|
|
Sim |
As operações de API a permitir ou negar (ex.: |
|
|
Sim |
Os recursos do PolarDB aos quais a instrução se aplica — um ARN de cluster específico ou |
|
|
Sim |
|
|
|
Não |
Restrições adicionais, como IP de source ou requisitos de criptografia |
Para detalhes sobre a sintaxe da política, consulte Estrutura e sintaxe da política.
Crie e anexe uma política personalizada
Crie uma política personalizada usando um dos exemplos abaixo como ponto de partida. Consulte Criar políticas personalizadas.
Anexe a política ao usuário do RAM. Consulte Conceder permissões a um usuário do RAM.
Exemplos de políticas
Restringir acesso a clusters específicos
Use esta política quando houver vários clusters do PolarDB e você quiser que um usuário do RAM gerencie apenas um subconjunto — por exemplo, os clusters i-001 e i-002.
Indicado para: administradores de cluster que precisam de controle total sobre clusters designados.
{
"Statement": [
{
"Action": "polardb:*",
"Effect": "Allow",
"Resource": [
"acs:polardb:*:*:*/i-001",
"acs:polardb:*:*:*/i-002"
]
},
{
"Action": "polardb:Describe*",
"Effect": "Allow",
"Resource": "*"
}
],
"Version": "1"
}
Resourcena primeira instrução:acs:polardb:*:*:*/i-001direciona a um cluster específico pelo ID (o último segmento do ARN). O acesso total de gerenciamento aplica-se apenas ai-001ei-002.**
Action: polardb:Describe*emResource: "*"**: Necessário para que o usuário do RAM visualize qualquer cluster no console do PolarDB. Sem isso, a lista de clusters no console aparece vazia.
O usuário do RAM autorizado consegue visualizar todos os clusters e recursos, mas só pode gerenciar os dois clusters cujos IDs são i-001 e i-002. Ainda é possível gerenciar esses dois clusters por meio de operações de API, interfaces de linha de comando (CLIs) ou kits de desenvolvimento de software (SDKs).
Restringir acesso a recursos específicos
Use esta política para limitar um usuário do RAM a um conjunto fixo de operações em todos os clusters do PolarDB — como um administrador de backups ou um responsável por segurança.
Recomendado para: controle de acesso baseado em funções, em que o usuário do RAM precisa de operações limitadas, como gerenciamento de backup ou configuração de lista de permissões.
{
"Statement": [
{
"Action": [
"polardb:Describe*",
"polardb:CreateBackup",
"polardb:DeleteBackup",
"polardb:ModifyDBClusterAccessWhitelist"
],
"Resource": "*",
"Effect": "Allow"
}
],
"Version": "1"
}
Essa política permite que o usuário do RAM consulte informações de clusters e backups, crie e exclua backups e modifique listas de permissões para todos os clusters do PolarDB na conta. Todas as outras operações são negadas por padrão.
Para ajustar as operações permitidas, substitua ou expanda a lista Action com nomes específicos de operações de API. Consulte Serviços compatíveis com o RAM para obter a lista completa de operações de API do PolarDB que suportam autorização via RAM.
Restringir acesso por endereço IP
Use esta política para garantir que um usuário do RAM acesse os clusters do PolarDB apenas a partir de endereços IP específicos — por exemplo, de uma rede corporativa ou de um bastion host.
Indicado para: ambientes sensíveis à segurança, em que o acesso ao cluster deve ser restrito a locais de rede conhecidos.
{
"Version": "1",
"Statement": [
{
"Action": "*",
"Effect": "Allow",
"Resource": "*",
"Condition": {
"IpAddress": {
"acs:SourceIp": [
"xxx.xxx.x.x"
]
}
}
}
]
}
acs:SourceIp: Substituaxxx.xxx.x.xpelo endereço IP ou bloco CIDR permitido.Effect: O usuário do RAM pode gerenciar todos os clusters do PolarDB na conta, mas somente a partir dos endereços IP especificados. Solicitações originadas de qualquer outro endereço serão negadas.
Restringir status do TDE
Use esta política para limitar o status do TDE pelos usuários do RAM durante a criação de clusters — por exemplo, para impor uma política de criptografia em repouso visando conformidade.
Indicado para: responsáveis por conformidade ou equipes de segurança que aplicam padrões obrigatórios de criptografia.
{
"Version": "1",
"Statement": [
{
"Effect": "Deny",
"Action": "polardb:*",
"Resource": "*",
"Condition": {
"Bool": {
"polardb:EncryptionRequired": [
"false"
]
}
}
}
]
}
Effect: Deny: Bloqueia qualquer ação do PolarDB em quepolardb:EncryptionRequiredseja avaliado comofalse. Todas as operações são negadas, a menos que o TDE esteja ativado.
Próximos passos
Usar o RAM para autorização de recursos — entenda o formato do ARN de recursos do PolarDB e como direcionar clusters, regiões ou contas específicos nas suas políticas
Serviços compatíveis com o RAM — lista completa de operações de API do PolarDB que suportam autorização via RAM
Estrutura e sintaxe da política — referência para todos os campos de política, operadores de condição e valores suportados