Usar políticas com o Amazon SQS
Este tópico fornece exemplos de políticas baseadas em identidade em que um administrador de conta pode anexar políticas de permissões a identidades do IAM (usuários, grupos e funções).
Importante
Recomendamos analisar primeiro os tópicos introdutórios que explicam os conceitos básicos e as opções disponíveis para gerenciar o acesso aos recursos do Amazon Simple Queue Service. Para obter mais informações, consulte Visão geral do gerenciamento de acesso no Amazon SQS.
Com exceção de ListQueues, todas as ações do Amazon SQS oferecem suporte a permissões no nível do recurso. Para obter mais informações, consulte Permissões da API do Amazon SQS: referência de ações e recurso.
Usar políticas do Amazon SQS e do IAM
Há duas maneiras de conceder aos usuários permissões aos recursos do Amazon SQS: usando o sistema de políticas do Amazon SQS (políticas baseadas em recursos) e usando o sistema de política do IAM (políticas baseadas em identidade). É possível usar um ou os dois métodos, com exceção da ação ListQueues, que é uma permissão regional que só pode ser definida em uma política do IAM.
Por exemplo, o diagrama a seguir mostra uma política do IAM e uma política equivalente do Amazon SQS. A política do IAM concede os direitos às ações ReceiveMessage e SendMessage do Amazon SQS para a fila denominada queue_xyz em sua conta da AWS, e a política é anexada aos usuários Bob e Susan (Bob e Susan têm as permissões declaradas na política). Essa política do Amazon SQS também oferece a Bob e Susan direitos às ações ReceiveMessage e SendMessage para a mesma fila.
nota
O exemplo a seguir mostra políticas simples sem condições. Você pode especificar uma determinada condição na política e obter o mesmo resultado.
Há uma diferença importante entre as políticas do IAM e do Amazon SQS: o sistema de políticas do Amazon SQS permite conceder permissões a outras contas da AWS, enquanto o IAM não.
Você é quem decide como usar os dois sistemas para gerenciar suas permissões. Os exemplos a seguir mostram como os dois sistemas de política funcionam em conjunto.
-
No primeiro exemplo, Bob tem uma política do IAM e uma do Amazon SQS que se aplicam à sua conta. A política do IAM concede à sua conta permissão para a ação
ReceiveMessageemqueue_xyz, enquanto a política do Amazon SQS fornece à sua conta permissão para a açãoSendMessagena mesma fila. O seguinte diagrama ilustra o conceito.
Se Bob enviar uma solicitação
ReceiveMessageaqueue_xyz, a política do IAM permitirá a ação. Se Bob enviar uma solicitaçãoSendMessageaqueue_xyz, a política do Amazon SQS permitirá a ação. -
No segundo exemplo, Bob abusa de seu acesso a
queue_xyz, para que seja necessário remover todo o seu acesso à fila. O mais fácil a fazer é adicionar uma política que negue a ele acesso a todas as ações para a fila. Essa política substitui as outras duas, pois umadenyexplícita sempre substitui umaallow. Para obter mais informações sobre a lógica de avaliação da política, consulte Usar políticas personalizadas com linguagem de políticas de acesso do Amazon SQS. O seguinte diagrama ilustra o conceito.
Você também pode adicionar outra instrução à política do Amazon SQS que nega a Bob qualquer tipo de acesso à fila. Ela tem o mesmo efeito que a adição de uma política do IAM que nega o acesso de Bob à fila. Para obter exemplos de políticas que abranjam ações e recursos do Amazon SQS, consulte Exemplos básicos de políticas do Amazon SQS. Para obter mais informações sobre como elaborar políticas do Amazon SQS, consulte Usar políticas personalizadas com linguagem de políticas de acesso do Amazon SQS.
Permissões necessárias para usar o console do Amazon SQS
Um usuário que queira trabalhar com o console do Amazon SQS deve ter o conjunto mínimo de permissões para trabalhar com as filas do Amazon SQS na do usuário Conta da AWS. Por exemplo, o usuário deve ter a permissão para chamar a ação ListQueues a fim de poder listar as filas, ou a permissão para chamar a ação CreateQueue para poder criar filas. Além de permissões do Amazon SQS, para inscrever uma fila do Amazon SQS em um tópico do Amazon SNS, o console também exige permissões para ações do Amazon SNS.
Se você criar uma política do IAM que seja mais restritiva que as permissões mínimas necessárias, o console poderá não funcionar como pretendido para os usuários com essa política do IAM.
Você não precisa conceder permissões mínimas do console aos usuários que fazem chamadas apenas à AWS CLI ou a ações do Amazon SQS.