Gerenciamento de permissões
Se você precisar atribuir permissões diferentes aos funcionários de sua empresa para acessar seus recursos do RDS, o Identity and Access Management (IAM) é uma boa opção para o gerenciamento de permissões refinado. O IAM fornece autenticação de identidade, gerenciamento de permissões e controle de acesso, ajudando você a proteger o acesso aos seus recursos da Huawei Cloud.
Com o IAM, você pode usar sua conta da Huawei Cloud para criar usuários do IAM para seus funcionários e atribuir permissões aos usuários para controlar seu acesso a tipos de recursos específicos. Por exemplo, alguns desenvolvedores de software em sua empresa precisam usar recursos do RDS, mas não devem excluí-los ou executar operações de alto risco. Para alcançar esse resultado, você pode criar usuários do IAM para os desenvolvedores de software e conceder a eles apenas as permissões necessárias para usar os recursos do RDS.
Se sua conta da Huawei Cloud não precisar de usuários individuais do IAM para gerenciamento de permissões, você pode pular este capítulo.
O IAM pode ser usado gratuitamente. Você paga apenas pelos recursos em sua conta. Para obter mais informações sobre o IAM, consulte Visão geral de serviço do IAM.
Permissões do RDS
Por padrão, os novos usuários do IAM não têm permissões atribuídas. Você precisa adicionar um usuário a um ou mais grupos e anexar políticas de permissões ou funções a esses grupos. Os usuários herdam permissões dos grupos aos quais são adicionados e podem executar operações especificadas em serviços de nuvem com base nas permissões.
O RDS é um serviço no nível do projeto implantado e acessado em regiões físicas específicas. Para atribuir permissões do RDS a um grupo de usuários, especifique o escopo como projetos específicos da região e selecione os projetos para que as permissões entrem em vigor. Se All projects estiver selecionado, as permissões entrarão em vigor para o grupo de usuários em todos os projetos específicos da região. Ao acessar o RDS, os usuários precisam mudar para uma região onde foram autorizados a usar o RDS.
- Funções: Um tipo de mecanismo de autorização de granulação grosseira que define permissões relacionadas às responsabilidades do usuário. Esse mecanismo fornece apenas um número limitado de funções de nível de serviço para autorização. Ao usar funções para conceder permissões, você também precisa atribuir outras funções das quais as permissões dependem para entrar em vigor. No entanto, as funções não são adequadas para autorização refinada e controle de acesso seguro.
- Políticas: Um tipo de mecanismo de autorização refinado que define as permissões necessárias para realizar operações em recursos de nuvem específicos sob determinadas condições. Esse mecanismo permite uma autorização baseada em políticas mais flexível, atendendo aos requisitos de controle de acesso seguro. Por exemplo, você pode conceder aos usuários do IAM somente as permissões para gerenciar um determinado tipo de recursos de banco de dados. A maioria das políticas define permissões com base em APIs. Para as ações de API suportadas pelo RDS, consulte Políticas de permissões e ações suportadas.
Tabela 1 lista todas as funções e políticas definidas pelo sistema suportadas pelo RDS.
Nome da política/função do sistema |
Descrição |
Categoria |
Dependências |
---|---|---|---|
RDS FullAccess |
Permissões completas para o Relational Database Service |
Política definida pelo sistema |
Nenhuma |
RDS ReadOnlyAccess |
Permissões somente leitura para o serviço de banco de dados relacional |
Política definida pelo sistema |
Nenhuma |
RDS ManageAccess |
Permissões de administrador de banco de dados para todas as operações, exceto a exclusão de recursos do RDS |
Política definida pelo sistema |
Nenhuma |
RDS Administrator |
Permissões de administrador para o RDS |
Função definida pelo sistema |
As funções de Tenant Guest E Server Administrator precisam ser atribuídas no mesmo projeto. |
Tabela 2 lista as operações comuns suportadas por cada política definida pelo sistema do RDS. Escolha as políticas de sistema apropriadas de acordo com esta tabela.
Operação |
RDS FullAccess |
RDS ReadOnlyAccess |
RDS ManageAccess |
RDS Administrator |
---|---|---|---|---|
Criação de uma instância de banco de dados do RDS |
√ |
X |
√ |
√ |
Exclusão de uma instância de banco de dados do RDS |
√ |
X |
X |
√ |
Consulta de uma lista de instâncias de banco de dados do RDS |
√ |
√ |
√ |
√ |
Operação |
Ações |
Observações |
---|---|---|
Criação de instâncias de banco de dados |
rds:instance:create rds:param:list |
Para selecionar uma VPC, uma sub-rede e um grupo de segurança, configure as seguintes ações: vpc:vpcs:list vpc:vpcs:get vpc:subnets:get vpc:securityGroups:get Para criar uma instância encriptada, configure a permissão de KMS Administrator para o projeto. |
Alteração de especificações de instância de banco de dados |
rds:instance:modifySpec |
Nenhuma |
Expansão de espaço de armazenamento |
rds:instance:extendSpace |
Nenhuma |
Alteração de um tipo de instância de banco de dados de simples para principal/em espera |
rds:instance:singleToHa |
Se a única instância de banco de dados original estiver encriptada, será necessário configurar a permissão de administrador KMS no projeto. |
Reinicialização de uma instância de banco de dados |
rds:instance:restart |
Nenhuma |
Exclusão de instâncias de banco de dados |
rds:instance:delete |
Nenhuma |
Consulta de uma lista de instâncias de banco de dados |
rds:instance:list |
Nenhuma |
Consulta de detalhes da instância de banco de dados |
rds:instance:list |
Se a VPC, a sub-rede e o grupo de segurança forem exibidos na lista de instâncias de banco de dados, será necessário configurar vpc:*:get and vpc:*:list. |
Alteração da senha de uma instância de banco de dados |
rds:password:update |
Nenhuma |
Alteração de uma porta do banco de dados |
rds:instance:modifyPort |
Nenhuma |
Alteração de um endereço IP flutuante |
rds:instance:modifyIp |
Para consultar a lista de endereços IP não utilizados, configure as seguintes ações: vpc:subnets:get vpc:ports:get |
Alteração de nomes de instâncias de banco de dados |
rds:instance:modify |
Nenhuma |
Alteração de uma janela de manutenção |
rds:instance:modify |
Nenhuma |
Realização de um switchover manual |
rds:instance:switchover |
Nenhuma |
Alteração do modo de replicação |
rds:instance:modifySynchronizeModel |
Nenhuma |
Alteração da prioridade de failover |
rds:instance:modifyStrategy |
Nenhuma |
Alteração de um grupo de segurança |
rds:instance:modifySecurityGroup |
Nenhuma |
Vinculação ou desvinculação de um EIP |
rds:instance:modifyPublicAccess |
Para consultar endereços IP públicos, configure as seguintes ações: vpc:publicIps:get vpc:publicIps:list |
Modificação da política de reciclagem |
rds:instance:setRecycleBin |
Nenhuma |
Consulta da política de reciclagem |
rds:instance:list |
Nenhuma |
Habilitação ou desabilitação do SSL |
rds:instance:modifySSL |
Nenhuma |
Habilitação ou desabilitação do agendador de eventos |
rds:instance:modifyEvent |
Nenhuma |
Configuração de separação de leitura/gravação |
rds:instance:modifyProxy |
Nenhuma |
Solicitação de um nome de domínio privado |
rds:instance:createDns |
Nenhuma |
Migração de uma instância de banco de dados em espera para outra AZ |
rds:instance:create |
A migração da instância de banco de dados em espera envolve operações no endereço IP na sub-rede. Para instâncias de banco de dados encriptadas, é necessário configurar a permissão de KMS Administrator no projeto. |
Restauração de tabelas para um ponto especificado no tempo |
rds:instance:tableRestore |
Nenhuma |
Configuração de permissão de TDE |
rds:instance:tde |
Usado apenas para instâncias de banco de dados do RDS for SQL Server. |
Alteração da permissão do host |
rds:instance:modifyHost |
Nenhuma |
Consulta de hosts da conta de banco de dados correspondente |
rds:instance:list |
Nenhuma |
Obtenção de uma lista de modelos de parâmetros |
rds:param:list |
Nenhuma |
Criação de um modelo de parâmetro |
rds:param:create |
Nenhuma |
Modificação de parâmetros em um modelo de parâmetro |
rds:param:modify |
Nenhuma |
Aplicação de um modelo de parâmetro |
rds:param:apply |
Nenhuma |
Modificação de parâmetros de uma instância de banco de dados especificada |
rds:param:modify |
Nenhuma |
Obtenção do modelo de parâmetro de uma instância de banco de dados especificada |
rds:param:list |
Nenhuma |
Obtenção de parâmetros de um modelo de parâmetro especificado |
rds:param:list |
Nenhuma |
Exclusão de um modelo de parâmetro |
rds:param:delete |
Nenhuma |
Redefinição de um modelo de parâmetro |
rds:param:reset |
Nenhuma |
Compara de modelos de parâmetros |
rds:param:list |
Nenhuma |
Salvação de parâmetros em um modelo de parâmetro |
rds:param:save |
Nenhuma |
Consulta de um tipo de modelo de parâmetro |
rds:param:list |
Nenhuma |
Definição de uma política de backup automático |
rds:instance:modifyBackupPolicy |
Nenhuma |
Consulta de uma política de backup automatizado |
rds:instance:list |
Nenhuma |
Criação de um backup manual |
rds:backup:create |
Nenhuma |
Obtenção de uma lista de backup |
rds:backup:list |
Nenhuma |
Obtenção do link para baixar um arquivo de backup |
rds:backup:download |
Nenhuma |
Exclusão de um backup manual |
rds:backup:delete |
Nenhuma |
Replicação de um backup |
rds:backup:create |
Nenhuma |
Consulta do intervalo de tempo de restauração |
rds:instance:list |
Nenhuma |
Restauração de dados em uma nova instância de banco de dados |
rds:instance:create |
Para selecionar uma VPC, uma sub-rede e um grupo de segurança, configure as seguintes ações: vpc:vpcs:list vpc:vpcs:get vpc:subnets:get vpc:securityGroups:get |
Restauração de dados em uma instância de banco de dados existente ou original |
rds:instance:restoreInPlace |
Nenhuma |
Obtenção da política de limpeza de binlogs |
rds:binlog:get |
Nenhuma |
Mescla de arquivos binlog |
rds:binlog:merge |
Nenhuma |
Download de um arquivo binlog |
rds:binlog:download |
Nenhuma |
Exclusão de um arquivo binlog |
rds:binlog:delete |
Nenhuma |
Configuração de uma política de limpeza de binlogs |
rds:binlog:setPolicy |
Nenhuma |
Obtenção de uma lista de arquivos de backup do banco de dados |
rds:backup:list |
Nenhuma |
Obtenção de uma lista de banco de dados de backup em um ponto de tempo especificado |
rds:backup:list |
Nenhuma |
Consulta de um log de erros de banco de dados |
rds:log:list |
Nenhuma |
Consulta de um log lento do banco de dados |
rds:log:list |
Nenhuma |
Download de um log de erros do banco de dados |
rds:log:download |
Nenhuma |
Download de um log lento do banco de dados |
rds:log:download |
Nenhuma |
Habilitação ou desabilitação da função de log de auditoria |
rds:auditlog:operate |
Nenhuma |
Obtenção de uma lista de log de auditoria |
rds:auditlog:list |
Nenhuma |
Consulta da política de log de auditoria |
rds:auditlog:list |
Nenhuma |
Obtenção do link para baixar um log de auditoria |
rds:auditlog:download |
Nenhuma |
Obtenção de um log de switchover |
rds:log:list |
Nenhuma |
Criação de um banco de dados |
rds:database:create |
Nenhuma |
Consulta de detalhes sobre bancos de dados |
rds:database:list |
Nenhuma |
Consulta de bancos de dados autorizados de um usuário especificado |
rds:database:list |
Nenhuma |
Exclusão de uma base de dados |
rds:database:drop |
Nenhuma |
Criação de uma conta de bancos de dados |
rds:databaseUser:create |
Nenhuma |
Consulta de detalhes sobre contas de banco de dados |
rds:databaseUser:list |
Nenhuma |
Consulta de contas autorizadas de um banco de dados especificado |
rds:databaseUser:list |
Nenhuma |
Exclusão de uma conta de banco de dados |
rds:databaseUser:drop |
Nenhuma |
Autorização de uma conta de banco de dados |
rds:databasePrivilege:grant |
Nenhuma |
Revogação de permissões de uma conta de banco de dados |
rds:databasePrivilege:revoke |
Nenhuma |
Visualização de uma lista do centro de tarefas |
rds:task:list |
Nenhuma |
Exclusão de uma tarefa do centro de tarefas |
rds:task:delete |
Nenhuma |
Adição de nós |
rds:instance:expandCluster |
Nenhuma |
Configuração do dimensionamento automático |
rds:instance:extendSpace |
Para ativar o escalonamento automático, configure as seguintes ações para os usuários do IAM em vez de sua conta da Huawei Cloud:
|
Parada ou inicialização de uma instância de banco de dados |
rds:instance:operateServer |
Nenhuma |