Restringir acesso a funções do IAM
Por padrão, as funções de IAM que estão disponíveis para um cluster do Amazon Redshift estão disponíveis para todos os usuários desse cluster. Você pode optar por restringir as funções do IAM a usuários específicos do banco de dados do Amazon Redshift em clusters específicos ou a regiões específicas.
Para permitir que somente usuários de banco de dados específicos usem uma função do IAM, siga as etapas a seguir.
Para identificar usuários de banco de dados específicos com acesso a uma função do IAM
-
Identifique o nome do recurso da Amazon (ARN) para os usuários do banco de dados em seu cluster do Amazon Redshift. O ARN de um usuário de banco de dados está no formato:
arn:aws:redshift:
.region
:account-id
:dbuser:cluster-name
/user-name
Para o Amazon Redshift sem servidor, use o formato ARN a seguir.
arn:aws:redshift:
region
:account-id
:dbuser:workgroup-name
/user-name
-
Abra o console do IAM
. -
No painel de navegação, escolha Perfis.
-
Escolha a função do IAM que você deseja restringir a usuários específicos do banco de dados do Amazon Redshift.
-
Escolha a guia Trust Relationships e Edit Trust Relationship. Uma nova função do IAM que permite ao Amazon Redshift acessar outros serviços da AWS em seu nome tem uma relação de confiança da seguinte maneira:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Adicione uma condição à seção da ação
sts:AssumeRole
da relação de confiança que limite o camposts:ExternalId
a valores especificados por você. Inclua um ARN para cada usuário do banco de dados para quem você deseja dar acesso à função. O ID externo pode ser qualquer string exclusiva.Por exemplo, a relação de confiança a seguir especifica que somente os usuários do banco de dados
user1
euser2
no clustermy-cluster
na regiãous-west-2
têm permissão para usar essa função do IAM.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": [ "arn:aws:redshift:us-west-2:123456789012:dbuser:my-cluster/user1", "arn:aws:redshift:us-west-2:123456789012:dbuser:my-cluster/user2" ] } } }] }
-
Escolha Update Trust Policy.