Usar funções vinculadas ao serviço do Amazon Aurora - Amazon Aurora

Usar funções vinculadas ao serviço do Amazon Aurora

O Amazon Aurora usa funções vinculadas ao serviço do AWS Identity and Access Management (IAM). O perfil vinculado ao serviço é um tipo exclusivo de perfil do IAM vinculado diretamente ao Amazon Aurora. Os perfis vinculados a serviços são predefinidos pelo Amazon Aurora e incluem todas as permissões que o serviço requer para chamar outros serviços da AWS em seu nome.

Uma função vinculada ao serviço facilita o uso do Amazon Aurora porque você não precisa adicionar as permissões necessárias manualmente. O Amazon Aurora define as permissões das funções vinculadas ao serviço e, exceto se definido de outra forma, somente o Amazon Aurora pode assumir suas funções. As permissões definidas incluem a política de confiança e a política de permissões, e essa política não pode ser anexada a nenhuma outra entidade do IAM.

Você pode excluir as funções somente depois de primeiro excluir seus recursos relacionados. Isso protege seus recursos do Amazon Aurora, pois você não pode remover por engano as permissões para acessar os recursos.

Para obter informações sobre outros serviços compatíveis com funções vinculadas a serviços, consulte Serviços da AWS compatíveis com o IAM e procure serviços que tenham Sim na coluna de função vinculada ao serviço. Escolha um Sim com um link para visualizar a documentação da função vinculada a serviço desse serviço.

Permissões de função vinculada ao serviço do Amazon Aurora

O Amazon Aurora utiliza a função vinculada a serviço chamada AWSServiceRoleForRDS para permitir que o Amazon RDS chame serviços da AWS em nome dos seus clusters de banco de dados.

A função vinculada ao serviço AWSServiceRoleForRDS confia nos seguintes serviços para assumir a função:

  • rds.amazonaws.com

Essa função vinculada a serviços tem uma política de permissões anexada a ela, chamada AmazonRDSServiceRolePolicy, que concede permissões para operar na conta. A política de permissões da função permite que o Amazon Aurora conclua as seguintes ações nos recursos especificados:

Para ter mais informações sobre essa política, incluindo o documento de política JSON, consulte AmazonRDSServiceRolePolicy no Guia de referência de políticas gerenciadas pela AWS.

nota

É necessário configurar permissões para que uma entidade do IAM (por exemplo, um usuário, grupo ou função) crie, edite ou exclua uma função vinculada ao serviço. Se encontrar a seguinte mensagem de erro:

Impossível criar o recurso. Você se você tem permissão para criar a função vinculada ao serviço. Caso contrário, aguarde e tente novamente mais tarde.

Certifique-se de que você tem as seguintes permissões ativadas:

{ "Action": "iam:CreateServiceLinkedRole", "Effect": "Allow", "Resource": "arn:aws:iam::*:role/aws-service-role/rds.amazonaws.com/AWSServiceRoleForRDS", "Condition": { "StringLike": { "iam:AWSServiceName":"rds.amazonaws.com" } } }

Para ter mais informações, consulte Service-linked role permissions (Permissões de nível vinculado a serviços) no Guia do usuário do IAM.

Criar uma função vinculada ao serviço para o Amazon Aurora

Você não precisa criar manualmente uma função vinculada a serviço. Ao criar um cluster de banco de dados, o Amazon Aurora cria a função vinculada ao serviço para você.

Importante

Se você já usava o serviço Amazon Aurora antes de 1.º de dezembro de 2017, quando ele começou a comportar funções vinculadas a serviços, o Amazon Aurora já criou a função AWSServiceRoleForRDS em sua conta. Para saber mais, consulte Uma nova função apareceu na minha conta da AWS.

Se você excluir essa função vinculada ao serviço e precisar criá-la novamente, poderá usar esse mesmo processo para recriar a função em sua conta. Ao criar um cluster de banco de dados, o Amazon Aurora cria a função vinculada ao serviço para você novamente.

Editar uma função vinculada ao serviço para o Amazon Aurora

O Amazon Aurora não permite que você edite a função vinculada ao serviço AWSServiceRoleForRDS. Depois que criar uma função vinculada ao serviço, você não poderá alterar o nome da função, pois várias entidades podem fazer referência a ela. No entanto, será possível editar a descrição da função usando o IAM. Para ter mais informações, consulte Editar uma função vinculada a serviço no Guia do usuário do IAM.

Excluir uma função vinculada ao serviço para o Amazon Aurora

Se você não precisar mais usar um recurso ou serviço que requer uma função vinculada a serviço, é recomendável excluí-la. Dessa forma, você não tem uma entidade não utilizada que não seja monitorada ativamente ou mantida. Contudo, você deve excluir todos os seus clusters de banco de dados antes de poder excluir a função vinculada ao serviço.

Limpar uma função vinculada ao serviço

Antes de você poder usar o IAM para excluir uma função vinculada ao serviço, você deve primeiro confirmar que a função não tem sessões ativas e remover quaisquer recursos usados pela função.

Para verificar se a função vinculada ao serviço tem uma sessão ativa no console do IAM
  1. Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação do console do IAM, escolha Roles (Perfis). A seguir, escolha o nome (não a caixa de seleção) da função AWSServiceRoleForRDS.

  3. Na página Summary Resumo) do perfil escolhido, escolha a guia Access Advisor (Consultor de acesso).

  4. Na guia Consultor de Acesso, revise a atividade recente para a função vinculada ao serviço.

    nota

    Se não tiver certeza se o Amazon Aurora está usando a função AWSServiceRoleForRDS, você pode tentar excluir a função. Se o serviço estiver usando a função, a exclusão falhará e você poderá visualizar as regiões da AWS em que a função está sendo usada. Se a função está sendo usada, você deve aguardar a sessão final antes de excluir a função. Você não pode revogar a sessão para uma função vinculada a serviço.

Para remover a função AWSServiceRoleForRDS, primeiro é necessário excluir todas os clusters de banco de dados.

Exclusão de todos os clusters

Siga um destes procedimentos para excluir um cluster. Repita o procedimento para cada um dos clusters.

Para excluir um cluster (console)
  1. Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. Na lista Databases (Bancos de dados), escolha o cluster que você deseja excluir.

  3. Em Cluster Actions (Ações de cluster), escolha Delete (Excluir).

  4. Escolha Delete (Excluir).

Para excluir um cluster (CLI)

Consulte delete-db-cluster no AWS CLI Command Reference.

Para excluir um cluster (API)

Consulte DeleteDBCluster no Amazon RDS API Reference.

Também é possível usar o console do IAM, a CLI do IAM ou a API do IAM para excluir a função AWSServiceRoleForRDS vinculada a serviço. Para ter mais informações, consulte Excluir uma função vinculada ao serviço no Guia do usuário do IAM.