Gerenciamento de identidade e acesso no Amazon SNS
O acesso ao Amazon SNS exige credenciais que a AWS possa usar para autenticar suas solicitações. Essas credenciais devem ter permissões para acessar recursos da AWS, como tópicos e mensagens do Amazon SNS. As seções a seguir fornecem detalhes sobre como é possível usar o AWS Identity and Access Management (IAM) e o Amazon SNS para ajudar a proteger seus recursos controlando quem pode acessá-los.
O AWS Identity and Access Management (IAM) é um serviço da AWS service (Serviço da AWS) que ajuda um administrador a controlar com segurança o acesso aos recursos da AWS. Os administradores do IAM controlam quem pode ser autenticado (conectado) e autorizado (ter permissões) para utilizar os recursos do Amazon SNS. O IAM é um AWS service (Serviço da AWS) que pode ser usado sem custo adicional.
Público
A forma como você usa o AWS Identity and Access Management (IAM) difere com base em seu perfil:
-
Usuário do serviço: solicite permissões ao seu administrador se você não conseguir acessar os recursos (consulte Resolução de problemas de identidade e acesso do Amazon Simple Notification Service).
-
Administrador do serviço: determine o acesso do usuário e envie solicitações de permissão (consulte Como o Amazon SNS funciona com o IAM).
-
Administrador do IAM: escreva políticas para gerenciar o acesso (consulte Exemplos de políticas baseadas em identidade do Amazon Simple Notification Service).
Autenticação com identidades
A autenticação é a forma como fazer login na AWS usando suas credenciais de identidade. Você precisa se autenticar como usuário-raiz da Conta da AWS, usuário do IAM ou assumindo um perfil do IAM.
É possível fazer login como uma identidade federada usando credenciais de uma fonte de identidade, como o AWS IAM Identity Center (Centro de Identidade do IAM), autenticação única ou credenciais do Google/Facebook. Para ter mais informações sobre como fazer login, consulte How to sign in to your Conta da AWS no Guia do usuário do Início de Sessão da AWS.
Para acesso programático, a AWS oferece um SDK e uma CLI para assinar solicitações criptograficamente. Para ter mais informações, consulte AWS AWS Signature Version 4 para solicitações de API no Guia do usuário do IAM.
Usuário-raiz Conta da AWS
Ao criar uma Conta da AWS, você começa com uma única identidade de login chamada usuário-raiz da Conta da AWS, que tem acesso total a todos os recursos e Serviços da AWS. É altamente recomendável não usar o usuário-raiz para tarefas diárias. Para ver as tarefas que exigem credenciais de usuário-raiz, consulte Tarefas que exigem credenciais de usuário-raiz no Guia do usuário do IAM.
Identidade federada
Como prática recomendada, exija que os usuários humanos usem a federação com um provedor de identidades para acessar a Serviços da AWS usando credenciais temporárias.
Identidade federada é um usuário do seu diretório empresarial, de um provedor de identidades da web ou do Directory Service que acessa Serviços da AWS usando credenciais de uma fonte de identidade. As identidades federadas assumem perfis que oferecem credenciais temporárias.
Para o gerenciamento de acesso centralizado, é recomendável usar o AWS IAM Identity Center. Para obter mais informações, consulte O que é o IAM Identity Center? no Guia do usuário do AWS IAM Identity Center.
Usuários e grupos do IAM
Usuário do IAM é uma identidade com permissões específicas a uma única pessoa ou aplicação. Recomendamos usar credenciais temporárias, em vez de usuários do IAM com credenciais de longo prazo. Para obter mais informações, consulte Exigir que os usuários humanos usem a federação com um provedor de identidade para acessar a AWS usando credenciais temporárias no Guia do usuário do IAM.
Um grupo do IAM especifica um conjunto de usuários do IAM e facilita o gerenciamento de permissões para grandes conjuntos de usuários. Para ter mais informações, consulte Casos de uso de usuários do IAM no Guia do usuário do IAM.
Perfis do IAM
Perfil do IAM é uma identidade com permissões específicas que oferece credenciais temporárias. Você pode assumir um perfil alternando de um usuário para um perfil do IAM (console) ou chamando uma operação de API AWS CLI ou AWS. Para obter mais informações, consulte Métodos para assumir um perfil no Manual do usuário do IAM.
Os perfis do IAM são úteis para acesso de usuários federados, permissões temporárias de usuários do IAM, acesso entre contas, acesso entre serviços e aplicações executadas no Amazon EC2. Consulte mais informações em Acesso a recursos entre contas no IAM no Guia do usuário do IAM.
Gerenciar o acesso usando políticas
Você controla o acesso na AWS criando políticas e anexando-as a identidades ou recursos da AWS. Uma política define permissões quando associada a uma identidade ou recurso. A AWS avalia essas políticas quando a entidade principal faz uma solicitação. A maioria das políticas é armazenada na AWS como documentos JSON. Para ter mais informações sobre documentos de política JSON, consulte Visão geral das políticas de JSON no Guia do usuário do IAM.
Por meio de políticas, os administradores especificam quem tem acesso ao quê, definindo qual entidade principal pode realizar ações em quais recursos e sob quais condições.
Por padrão, usuários e perfis não têm permissões. Um administrador do IAM cria políticas do IAM e as adiciona aos perfis, os quais os usuários podem então assumir. As políticas do IAM definem permissões independentemente do método usado para executar a operação.
Políticas baseadas em identidade
Políticas baseadas em identidade são documentos de política de permissão JSON que você anexa a uma identidade (usuário, grupo ou perfil). Essas políticas controlam quais ações as identidades podem realizar, em quais recursos e em que condições. Para saber como criar uma política baseada em identidade, consulte Definir permissões personalizadas do IAM com as políticas gerenciadas pelo cliente no Guia do Usuário do IAM.
As políticas baseadas em identidade podem ser políticas em linha (incorporadas diretamente em uma única identidade) ou políticas gerenciadas (políticas independentes anexadas a várias identidades). Para saber como escolher entre uma política gerenciada ou uma política em linha, consulte Escolher entre políticas gerenciadas e políticas em linha no Guia do usuário do IAM.
Políticas baseadas em recursos
Políticas baseadas em atributos são documentos de políticas JSON que você anexa a um atributo. Os exemplos incluem políticas de confiança de perfil do IAM e políticas de bucket do Amazon S3. Em serviços compatíveis com políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Você deve especificar uma entidade principal em uma política baseada em recursos.
Políticas baseadas em recursos são políticas em linha localizadas nesse serviço. Não é possível usar as políticas gerenciadas pela AWS do IAM em uma política baseada em atributos.
Outros tipos de política
A AWS permite outros tipos de política por meio dos quais é possível definir o máximo de permissões concedidas por tipos de política mais comuns:
-
Limites de permissões: definem o máximo de permissões que uma política baseada em identidade pode conceder a uma entidade do IAM. Para obter mais informações sobre limites de permissões, consulte Limites de permissões para identidades do IAM no Guia do usuário do IAM.
-
Políticas de controle de serviços (SCPs): as SCPs especificam o número máximo de permissões para uma organização ou unidade organizacional no AWS Organizations. Para obter mais informações, consulte Políticas de controle de serviço no Guia do usuário do AWS Organizations.
-
Políticas de controle de recursos (RCPs): definem o máximo de permissões disponíveis para recursos em suas contas. Consulte mais informações em Resource control policies (RCPs) no Guia do usuário do AWS Organizations.
-
Políticas de sessão: políticas avançadas transmitidas como um parâmetro ao criar uma sessão temporária para um perfil ou usuário federado. Para obter mais informações, consulte Políticas de sessão no Guia do usuário do IAM.
Vários tipos de política
Quando vários tipos de política são aplicáveis a uma solicitação, é mais complicado compreender as permissões resultantes. Para saber como a AWS determina se deve permitir ou não uma solicitação quando há vários tipos de política envolvidos, consulte Lógica da avaliação de políticas no Guia do usuário do IAM.
Controle de acesso
O Amazon SNS tem seu próprio sistema de permissões com base em recursos que usa políticas escritas na mesma linguagem usada para políticas do AWS Identity and Access Management (IAM). Isso significa que você pode atingir objetivos semelhantes com as políticas do IAM e do Amazon SNS.
nota
É importante entender que todas as Contas da AWS podem delegar suas permissões para usuários em suas contas. O acesso entre contas permite compartilhar o acesso a seus recursos da AWS sem a necessidade de gerenciar usuários adicionais. Para obter informações sobre como usar o acesso entre contas, consulte Habilitar o acesso entre contas no Guia do usuário do IAM.
Ações de políticas para o Amazon SNS
Compatível com ações de políticas: sim
Os administradores podem usar as políticas JSON da AWS para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.
O elemento Action de uma política JSON descreve as ações que podem ser usadas para permitir ou negar acesso em uma política. Incluem ações em uma política para conceder permissões para executar a operação associada.
Para ver uma lista das ações do Amazon SNS, consulte Recursos definidos pelo Amazon Simple Notification Service na Referência de autorização do serviço.
As ações de política no Amazon SNS usam o seguinte prefixo antes da ação:
sns
Para especificar várias ações em uma única declaração, separe-as com vírgulas.
"Action": [ "sns:action1", "sns:action2" ]
Para visualizar exemplos de políticas baseadas em identidade do Amazon SNS, consulte Exemplos de políticas baseadas em identidade do Amazon Simple Notification Service.
Recursos de políticas para o Amazon SNS
Compatível com recursos de políticas: sim
Os administradores podem usar as políticas JSON da AWS para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.
O elemento de política JSON Resource especifica o objeto ou os objetos aos quais a ação se aplica. Como prática recomendada, especifique um recurso usando seu nome do recurso da Amazon (ARN). Para ações em que não é possível usar permissões em nível de recurso, use um curinga (*) para indicar que a instrução se aplica a todos os recursos.
"Resource": "*"
Para ver uma lista de tipos de recurso do Amazon SNS e seus ARNs, consulte Ações definidas pelo Amazon Simple Notification Service na Referência de autorização do serviço. Para saber com quais ações você pode especificar o ARN de cada recurso, consulte Recursos definidos pelo Amazon Simple Notification Service.
Para visualizar exemplos de políticas baseadas em identidade do Amazon SNS, consulte Exemplos de políticas baseadas em identidade do Amazon Simple Notification Service.
Chaves de condição de política para o Amazon SNS
Compatível com chaves de condição de política específicas de serviço: sim
Os administradores podem usar as políticas JSON da AWS para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos e em que condições.
O elemento Condition especifica quando as instruções são executadas com base em critérios definidos. É possível criar expressões condicionais que usem agentes de condição, como “igual a” ou “menor que”, para fazer a condição da política corresponder aos valores na solicitação. Para ver todas as chaves de condição globais da AWS, consulte Chaves de contexto de condição globais da AWS no Guia do usuário do IAM.
Para ver uma lista de chaves de condição do Amazon SNS, consulte Chaves de condição do Amazon Simple Notification Service na Referência de autorização do serviço. Para saber com quais ações e recursos você pode usar a chave de condição, consulte Recursos definidos pelo Amazon Simple Notification Service.
Para visualizar exemplos de políticas baseadas em identidade do Amazon SNS, consulte Exemplos de políticas baseadas em identidade do Amazon Simple Notification Service.
ACLs no Amazon SNS
Compatível com ACLs: não
As listas de controle de acesso (ACLs) controlam quais entidades principais (membros, usuários ou perfis da conta) têm permissões para acessar um recurso. As ACLs são semelhantes às políticas baseadas em recursos, embora não usem o formato de documento de política JSON.
ABAC com o Amazon SNS
Compatível com ABAC (tags em políticas): parcial
O controle de acesso por atributo (ABAC) é uma estratégia de autorização que define permissões com base em atributos chamados de tags. É possível anexar tags a entidades do IAM e recursos da AWS e, em seguida, criar políticas de ABAC para permitir operações quando a tag da entidade principal corresponder à tag no recurso.
Para controlar o acesso baseado em tags, forneça informações sobre as tags no elemento de condição de uma política usando as aws:ResourceTag/, key-nameaws:RequestTag/ ou chaves de condição key-nameaws:TagKeys.
Se um serviço for compatível com as três chaves de condição para cada tipo de recurso, o valor será Sim para o serviço. Se um serviço for compatível com as três chaves de condição somente para alguns tipos de recursos, o valor será Parcial
Para obter mais informações sobre o ABAC, consulte Definir permissões com autorização do ABAC no Guia do usuário do IAM. Para visualizar um tutorial com etapas para configurar o ABAC, consulte Usar controle de acesso baseado em atributos (ABAC) no Guia do usuário do IAM.
Usar credenciais temporárias com o Amazon SNS
Compatível com credenciais temporárias: sim
As credenciais temporárias oferecem acesso de curto prazo aos recursos da AWS e são criadas automaticamente quando você usa a federação ou troca de perfis. A AWS recomenda gerar credenciais temporárias dinamicamente em vez de usar chaves de acesso de longo prazo. Para ter mais informações, consulte Credenciais de segurança temporárias no IAM e Serviços da Serviços da AWS que funcionam com o IAM no Guia do usuário do IAM.
Permissões de entidades principais entre serviços para o Amazon SNS
Compatibilidade com o recurso de encaminhamento de sessões de acesso (FAS): sim
As sessões de acesso direto (FAS) usam as permissões da entidade principal chamando um AWS service (Serviço da AWS), bem como o AWS service (Serviço da AWS) solicitante, para fazer solicitações a serviços subsequentes. Para obter detalhes da política ao fazer solicitações de FAS, consulte Sessões de acesso direto.
Perfis de serviço para o Amazon SNS
Compatível com perfis de serviço: sim
O perfil de serviço é um perfil do IAM que um serviço assume para executar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte Criar um perfil para delegar permissões a um AWS service (Serviço da AWS) no Guia do Usuário do IAM.
Atenção
A alteração das permissões de um perfil de serviço pode interromper a funcionalidade do Amazon SNS. Edite perfis de serviço somente quando o Amazon SNS fornecer orientação para isso.
Perfis vinculados ao serviço para o Amazon SNS
Compatível com perfis vinculados ao serviço: Não
Um perfil vinculado a serviço é um tipo de perfil de serviço vinculado a um AWS service (Serviço da AWS). O serviço pode presumir o perfil de executar uma ação em seu nome. Perfis vinculadas ao serviço aparecem em sua Conta da AWS e são de propriedade do serviço. Um administrador do IAM pode visualizar, mas não editar as permissões para funções vinculadas ao serviço.
Para obter detalhes sobre como criar ou gerenciar perfis vinculados a serviços, consulte Serviços da AWS que funcionam com o IAM. Encontre um serviço na tabela que inclua um Yes na coluna Perfil vinculado ao serviço. Escolha o link Sim para visualizar a documentação do perfil vinculado a serviço desse serviço.
Políticas baseadas em identidade do Amazon SNS
Compatível com políticas baseadas em identidade: sim
As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário do IAM, grupo de usuários ou perfil. Essas políticas controlam quais ações os usuários e perfis podem realizar, em quais recursos e em que condições. Para saber como criar uma política baseada em identidade, consulte Definir permissões personalizadas do IAM com as políticas gerenciadas pelo cliente no Guia do Usuário do IAM.
Com as políticas baseadas em identidade do IAM, é possível especificar ações e recursos permitidos ou negados, assim como as condições sob as quais as ações são permitidas ou negadas. Para saber mais sobre todos os elementos que podem ser usados em uma política JSON, consulte Referência de elemento de política JSON do IAM no Guia do usuário do IAM.
Exemplos de políticas baseadas em identidade para o Amazon SNS
Para visualizar exemplos de políticas baseadas em identidade do Amazon SNS, consulte Exemplos de políticas baseadas em identidade do Amazon Simple Notification Service.
Políticas baseadas em recursos no Amazon SNS
|
É compatível com políticas baseadas em atributos |
Sim |
Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. São exemplos de políticas baseadas em recursos as políticas de confiança de perfil do IAM e as políticas de bucket do Amazon S3. Em serviços compatíveis com políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Para o atributo ao qual a política está anexada, a política define quais ações uma entidade principal especificado pode executar nesse atributo e em que condições. Você deve especificar uma entidade principal em uma política baseada em recursos. As entidades principais podem incluir contas, usuários, perfis, usuários federados ou Serviços da AWS.
Para permitir o acesso entre contas, você pode especificar uma conta inteira ou as entidades do IAM em outra conta como a entidade principal em uma política baseada em recursos. Consulte mais informações em Acesso a recursos entre contas no IAM no Guia do usuário do IAM.