Configurar permissões do IAM para a integração do RDS para Oracle com o Amazon EFS
Por padrão, o recurso de integração do Amazon EFS não usa um perfil do IAM: a configuração da opção USE_IAM_ROLE
é FALSE
. Para integrar o RDS para Oracle ao Amazon EFS e um perfil do IAM, a instância de banco de dados deve ter permissões do IAM para acessar um sistema de arquivos Amazon EFS.
Tópicos
Etapa 1: Criar um perfil do IAM para a instância de banco de dados e anexar a política
Nesta etapa, você criará uma função para a instância de banco de dados do RDS para Oracle para permitir que o Amazon RDS acesse o sistema de arquivos EFS.
Como criar um perfil do IAM a fim de permitir que o Amazon RDS acesse um sistema de arquivos EFS
-
Abra o Console de Gerenciamento do IAM
. -
No painel de navegação, escolha Roles.
-
Escolha Criar Perfil.
-
Para Serviço da AWS, escolha RDS.
-
Em Select your use case (Selecionar o caso de uso), escolha RDS – Add Role to Database (Adicionar função ao banco de dados).
-
Escolha Próximo.
-
Não adicione nenhuma política de permissões. Escolha Próximo.
-
Defina Role name (Nome da função) como um nome para a sua função do IAM, por exemplo,
rds-efs-integration-role
. Você também pode adicionar um valor opcional para Description (Descrição). -
Selecione Criar função.
Para limitar as permissões do serviço a um recurso específico, recomendamos usar as chaves de contexto de condição global aws:SourceArn
e aws:SourceAccount
em relações de confiança baseadas em recursos. Essa é a maneira mais eficiente de se proteger contra o problema "confused deputy".
Você pode usar as duas chaves de contexto de condição global e fazer com que o valor aws:SourceArn
contenha o ID da conta. Nesses casos, verifique se o valor aws:SourceAccount
e a conta no aws:SourceArn
usa o mesmo ID de conta quando eles são usados na mesma instrução.
-
Use
aws:SourceArn
se quiser acesso entre serviços para um único recurso. -
Use
aws:SourceAccount
se você quiser permitir que qualquer recurso nessa conta seja associado ao uso entre serviços.
Na relação de confiança, certifique-se de usar a chave de contexto de condição global aws:SourceArn
com o nome do recurso da Amazon (ARN) completo dos recursos que acessam a função.
O seguinte comando da AWS CLI cria a função chamada
para essa finalidade.rds-efs-integration-role
exemplo
Para Linux, macOS ou Unix:
aws iam create-role \ --role-name
rds-efs-integration-role
\ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount":my_account_ID
, "aws:SourceArn": "arn:aws:rds:Region
:my_account_ID
:db:dbname
" } } } ] }'
Para Windows:
aws iam create-role ^ --role-name
rds-efs-integration-role
^ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount":my_account_ID
, "aws:SourceArn": "arn:aws:rds:Region
:my_account_ID
:db:dbname
" } } } ] }'
Para ter mais informações, consulte Criar uma função para delegar permissões a um usuário do IAM no Guia do usuário do IAM.
Etapa 2: Criar uma política para seu sistema de arquivos Amazon EFS
Nesta etapa, crie uma política para seu sistema de arquivos EFS.
Como criar ou editar uma política de sistema de arquivos EFS
-
Abra o Console de Gerenciamento do EFS
. -
Escolha File Systems (Sistemas de arquivos).
-
Na página File systems (Sistemas de arquivos), selecione o sistema para o qual deseja editar ou criar uma política de sistema de arquivos. A página de detalhes desse sistema de arquivos é exibida.
-
Selecione a guia File system policy (Política do sistema de arquivos).
Se a política estiver em branco, a política padrão do sistema de arquivos EFS estará em uso. Para ter mais informações, consulte Default EFS file system policy (Política padrão do sistema de arquivos EFS) no Guia do usuário do Amazon Elastic File System.
-
Selecione a opção Editar. A página File system policy (Política de sistema de arquivos) é exibida.
-
No Policy editor (Editor de políticas), insira uma política como a seguinte e selecione Save (Salvar).
{ "Version": "2012-10-17", "Id": "ExamplePolicy01", "Statement": [ { "Sid": "ExampleStatement01", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:role/rds-efs-integration-role" }, "Action": [ "elasticfilesystem:ClientMount", "elasticfilesystem:ClientWrite", "elasticfilesystem:ClientRootAccess" ], "Resource": "arn:aws:elasticfilesystem:us-east-1
:123456789012
:file-system/fs-1234567890abcdef0
" } ] }
Etapa 3: Associar um perfil do IAM à sua instância de banco de dados do RDS para Oracle
Nesta etapa, associe um perfil do IAM à instância de banco de dados. Esteja ciente dos seguintes requisitos:
-
Você precisa ter acesso a um perfil do IAM com a política de permissões do Amazon EFS necessária anexada a ele.
-
Só é possível associar um perfil do IAM à instância de banco de dados do RDS para Oracle por vez.
-
O status de sua instância deve ser Available (Disponível).
Para ter mais informações, consulte Identity and access management for Amazon EFS (Identity and access management para Amazon EFS) no Guia do usuário do Amazon Elastic File System.
Como associar um perfil do IAM à instância de banco de dados do RDS para Oracle
Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/
. -
Escolha Databases (Bancos de dados).
-
Se a instância do banco de dados não estiver disponível, escolha Actions (Ações) e, em seguida, Start (Iniciar). Quando o status da instância for exibido Started (Iniciado), vá para a próxima etapa.
-
Escolha o nome da instância de banco de dados Oracle para exibir os detalhes.
-
Na guia Connectivity & security (Conectividade e segurança), role para baixo até a seção Manage IAM roles (Gerenciar funções do IAM) na parte inferior da página.
-
Escolha a função a ser adicionada na seção Add IAM roles to this instance (Adicionar funções do IAM a essa instância).
-
Em Feature (Recurso), selecione EFS_INTEGRATION.
-
Escolha Add role (adicionar função).
O seguinte comando da AWS CLI adiciona a função a uma instância de banco de dados Oracle denominada
.mydbinstance
exemplo
Para Linux, macOS ou Unix:
aws rds add-role-to-db-instance \ --db-instance-identifier
mydbinstance
\ --feature-name EFS_INTEGRATION \ --role-arnyour-role-arn
Para Windows:
aws rds add-role-to-db-instance ^ --db-instance-identifier
mydbinstance
^ --feature-name EFS_INTEGRATION ^ --role-arnyour-role-arn
Substitua
pelo ARN da função que você anotou em uma etapa anterior. your-role-arn
EFS_INTEGRATION
deve ser especificado para a opção --feature-name
.