

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Gerenciamento de identidade e acesso para AWS IoT
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) é uma ferramenta AWS service (Serviço da AWS) que ajuda o administrador a controlar com segurança o acesso aos AWS recursos. Os administradores do IAM controlam quem pode ser *autenticado* (conectado) e *autorizado* (tem permissões) a usar AWS IoT os recursos. O IAM é um AWS service (Serviço da AWS) que você pode usar sem custo adicional.

**Topics**
+ [Público](#security_iam_audience)
+ [Como autenticar com identidades do IAM](#security_iam_authentication)
+ [Gerenciar o acesso usando políticas](#security_iam_access-manage)
+ [Como AWS IoT funciona com o IAM](security_iam_service-with-iam.md)
+ [AWS IoT exemplos de políticas baseadas em identidade](security_iam_id-based-policy-examples.md)
+ [AWS políticas gerenciadas para AWS IoT](security-iam-awsmanpol.md)
+ [Solução de problemas AWS IoT de identidade e acesso](security_iam_troubleshoot.md)

## Público
<a name="security_iam_audience"></a>

A forma como você usa AWS Identity and Access Management (IAM) difere com base na sua função:
+ **Usuário do serviço**: solicite permissões ao seu administrador se você não conseguir acessar os atributos (consulte [Solução de problemas AWS IoT de identidade e acesso](security_iam_troubleshoot.md)).
+ **Administrador do serviço**: determine o acesso do usuário e envie solicitações de permissão (consulte [Como AWS IoT funciona com o IAM](security_iam_service-with-iam.md))
+ **Administrador do IAM**: escreva políticas para gerenciar o acesso (consulte [AWS IoT exemplos de políticas baseadas em identidade](security_iam_id-based-policy-examples.md))

## Como autenticar com identidades do IAM
<a name="security_iam_authentication"></a>

 AWS IoT As identidades internas podem ser certificados de dispositivo (X.509), identidades do Amazon Cognito ou usuários ou grupos do IAM. Este tópico aborda apenas identidades do IAM. Para obter mais informações sobre as outras identidades que oferecem AWS IoT suporte, consulte[Autenticação de cliente](client-authentication.md).

A autenticação é como você faz login AWS usando suas credenciais de identidade. Você deve estar autenticado como usuário do IAM ou assumindo uma função do IAM. Usuário raiz da conta da AWS

Você pode fazer login como uma identidade federada usando credenciais de uma fonte de identidade como Centro de Identidade do AWS IAM (IAM Identity Center), autenticação de login único ou credenciais. Google/Facebook Para ter mais informações sobre como fazer login, consulte [Como fazer login em sua Conta da AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) no *Guia do usuário do Início de Sessão da AWS *.

Para acesso programático, AWS fornece um SDK e uma CLI para assinar solicitações criptograficamente. Para ter mais informações, consulte [AWS Signature Version 4 para solicitações de API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) no *Guia do usuário do IAM*.

### Conta da AWS usuário root
<a name="security_iam_authentication-rootuser"></a>

 Ao criar um Conta da AWS, você começa com uma identidade de login chamada *usuário Conta da AWS raiz* que tem acesso completo a todos Serviços da AWS os recursos. É altamente recomendável não usar o usuário-raiz em tarefas diárias. Consulte as tarefas que exigem credenciais de usuário-raiz em [Tarefas que exigem credenciais de usuário-raiz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) no *Guia do usuário do IAM*. 

### Usuários e grupos do IAM
<a name="security_iam_authentication-iamuser"></a>

Um *[usuário do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* é uma identidade com permissões específicas para uma única pessoa ou aplicação. É recomendável usar credenciais temporárias, em vez de usuários do IAM com credenciais de longo prazo. Para obter mais informações, consulte [Exigir que usuários humanos usem a federação com um provedor de identidade para acessar AWS usando credenciais temporárias](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) no *Guia do usuário do IAM*.

Um [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) 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](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) no *Guia do usuário do IAM*.

### Perfis do IAM
<a name="security_iam_authentication-iamrole"></a>

Uma *[perfil do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* é uma identidade com permissões específicas que oferece credenciais temporárias. Você pode assumir uma função [mudando de um usuário para uma função do IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) ou chamando uma operação de AWS API AWS CLI ou. Para saber mais, consulte [Métodos para assumir um perfil](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) no *Manual do usuário do IAM*.

Os perfis do IAM são úteis para acesso de usuário federado, permissões de usuário do IAM temporárias, acesso entre contas, acesso entre serviços e aplicações em execução no Amazon EC2. Consulte mais informações em [Acesso a recursos entre contas no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) no *Guia do usuário do IAM*.

## Gerenciar o acesso usando políticas
<a name="security_iam_access-manage"></a>

Você controla o acesso AWS criando políticas e anexando-as a AWS identidades ou recursos. Uma política define permissões quando associada a uma identidade ou recurso. AWS avalia essas políticas quando um diretor faz uma solicitação. A maioria das políticas é armazenada AWS como documentos JSON. Para ter mais informações sobre documentos de política JSON, consulte [Visão geral das políticas JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) no *Guia do usuário do IAM*.

Por meio de políticas, os administradores especificam quem tem acesso a que, 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 realizar a operação.

### Políticas baseadas em identidade
<a name="security_iam_access-manage-id-based-policies"></a>

As políticas baseadas em identidade são documentos de políticas 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 sob quais 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](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) 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 autônomas anexadas a várias identidades). Para saber como escolher entre uma política gerenciada e políticas em linha, consulte [Escolher entre políticas gerenciadas e políticas em linha](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) no *Guia do usuário do IAM*.

### Políticas baseadas em recursos
<a name="security_iam_access-manage-resource-based-policies"></a>

Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. Entre os exemplos estão *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. É necessário [especificar uma entidade principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) em uma política baseada em recursos.

Políticas baseadas em recursos são políticas em linha localizadas nesse serviço. Você não pode usar políticas AWS gerenciadas do IAM em uma política baseada em recursos.

### Listas de controle de acesso (ACLs)
<a name="security_iam_access-manage-acl"></a>

As listas de controle de acesso (ACLs) controlam quais diretores (membros da conta, usuários ou funções) têm permissões para acessar um recurso. ACLs são semelhantes às políticas baseadas em recursos, embora não usem o formato de documento de política JSON.

O Amazon S3 e o AWS WAF Amazon VPC são exemplos de serviços que oferecem suporte. ACLs Para saber mais ACLs, consulte a [visão geral da lista de controle de acesso (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) no *Guia do desenvolvedor do Amazon Simple Storage Service*.

### Outros tipos de política
<a name="security_iam_access-manage-other-policies"></a>

AWS oferece suporte a tipos de políticas adicionais que podem definir o máximo de permissões concedidas por tipos de políticas mais comuns:
+ **Limites de permissões**: definem o número máximo de permissões que uma política baseada em identidade pode conceder a uma entidade do IAM. Para saber mais sobre limites de permissões, consulte [Limites de permissões para identidades do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) no *Guia do usuário do IAM*.
+ **Políticas de controle de serviço (SCPs)** — Especifique as permissões máximas para uma organização ou unidade organizacional em AWS Organizations. Para saber mais, consulte [Políticas de controle de serviço](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) no *Guia do usuário do AWS Organizations *.
+ **Políticas de controle de recursos (RCPs)** — Defina o máximo de permissões disponíveis para recursos em suas contas. Para obter mais informações, consulte [Políticas de controle de recursos (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) no *Guia AWS Organizations do usuário*.
+ **Políticas de sessão**: políticas avançadas transmitidas como um parâmetro durante a criação de uma sessão temporária para um perfil ou um usuário federado. Para saber mais, consulte [Políticas de sessão](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) no *Guia do usuário do IAM*.

### Vários tipos de política
<a name="security_iam_access-manage-multiple-policies"></a>

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 AWS determinar se uma solicitação deve ser permitida quando vários tipos de políticas estão envolvidos, consulte [Lógica de avaliação de políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) no *Guia do usuário do IAM*.

# Como AWS IoT funciona com o IAM
<a name="security_iam_service-with-iam"></a>

Antes de usar o IAM para gerenciar o acesso AWS IoT, você deve entender quais recursos do IAM estão disponíveis para uso AWS IoT. Para ter uma visão de alto nível de como AWS IoT e outros AWS serviços funcionam com o IAM, consulte [AWS Serviços que funcionam com o IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_aws-services-that-work-with-iam.html) no *Guia do usuário do IAM*.

**Topics**
+ [AWS IoT políticas baseadas em identidade](#security_iam_service-with-iam-id-based-policies)
+ [AWS IoT políticas baseadas em recursos](#security_iam_service-with-iam-resource-based-policies)
+ [Autorização baseada em AWS IoT tags](#security_iam_service-with-iam-tags)
+ [AWS IoT Funções do IAM](#security_iam_service-with-iam-roles)

## AWS IoT políticas baseadas em identidade
<a name="security_iam_service-with-iam-id-based-policies"></a>

Com as políticas baseadas em identidade do IAM, é possível especificar ações permitidas ou negadas e recursos, bem como as condições sob as quais as ações são permitidas ou negadas. O AWS IoT oferece suporte a ações, recursos e chaves de condição específicos. Para conhecer todos os elementos usados em uma política JSON, consulte [Referência de elementos de política JSON do IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements.html) no *Guia do usuário do IAM*.

### Ações
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao 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.

A tabela a seguir lista as ações do IAM IoT, a AWS IoT API associada e o recurso que a ação manipula.


****  

| Ações de políticas | AWS IoT API | Recursos | 
| --- | --- | --- | 
| IoT: AcceptCertificateTransfer | AcceptCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  O Conta da AWS especificado no ARN deve ser a conta para a qual o certificado está sendo transferido.   | 
| IoT: AddThingToThingGroup | AddThingToThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: AssociateTargetsWithJob | AssociateTargetsWithJob | nenhuma  | 
| IoT: AttachPolicy | AttachPolicy |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: AttachPrincipalPolicy | AttachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: AttachSecurityProfile | AttachSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: AttachThingPrincipal | AttachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: CancelCertificateTransfer | CancelCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  O Conta da AWS especificado no ARN deve ser a conta para a qual o certificado está sendo transferido.   | 
| IoT: CancelJob | CancelJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: CancelJobExecution | CancelJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ClearDefaultAuthorizer | ClearDefaultAuthorizer | Nenhum | 
| IoT: CreateAuthorizer | CreateAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT: CreateCertificateFromCsr | CreateCertificateFromCsr | \$1 | 
| IoT: CreateDimension | CreateDimension | `arn:aws:iot:region:account-id:dimension/dimension-name` | 
| IoT: CreateJob | CreateJob |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT: CreateJobTemplate | CreateJobTemplate |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT: CreateKeysAndCertificate | CreateKeysAndCertificate | \$1 | 
| IoT: CreatePolicy | CreatePolicy | `arn:aws:iot:region:account-id:policy/policy-name` | 
| IoT: CreatePolicyVersion | CreatePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  Isso deve ser uma AWS IoT política, não uma política do IAM.   | 
| IoT: CreateRoleAlias | CreateRoleAlias |  (parâmetro: roleAlias) `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: CreateSecurityProfile | CreateSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: CreateThing | CreateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: CreateThingGroup | CreateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` para o grupo que está sendo criado e para o grupo pai, se usado  | 
| IoT: CreateThingType | CreateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: CreateTopicRule | CreateTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: DeleteAuthorizer | DeleteAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-name`  | 
| IoT: excluir CACertificate | Excluir CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT: DeleteCertificate | DeleteCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DeleteDimension | DeleteDimension |  `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: DeleteJob | DeleteJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: DeleteJobTemplate | DeleteJobTemplate |  `arn:aws:iot:region:account-id:job/job-template-id`  | 
| IoT: DeleteJobExecution | DeleteJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: DeletePolicy | DeletePolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: DeletePolicyVersion | DeletePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: DeleteRegistrationCode | DeleteRegistrationCode | \$1 | 
| IoT: DeleteRoleAlias | DeleteRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: DeleteSecurityProfile | DeleteSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: DeleteThing | DeleteThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: DeleteThingGroup | DeleteThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DeleteThingType | DeleteThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: DeleteTopicRule | DeleteTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: excluir V2 LoggingLevel | Excluir V2 LoggingLevel |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DeprecateThingType | DeprecateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: DescribeAuthorizer | DescribeAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name` (parâmetro: authorizerName) nenhuma  | 
| IoT: descrever CACertificate | Descreva CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT: DescribeCertificate | DescribeCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DescribeDefaultAuthorizer | DescribeDefaultAuthorizer | Nenhum  | 
| IoT: DescribeEndpoint | DescribeEndpoint | \$1 | 
| IoT: DescribeEventConfigurations | DescribeEventConfigurations | nenhuma  | 
| IoT: DescribeIndex | DescribeIndex |  `arn:aws:iot:region:account-id:index/index-name`  | 
| IoT: DescribeJob | DescribeJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: DescribeJobExecution | DescribeJobExecution | Nenhum | 
| IoT: DescribeJobTemplate | DescribeJobTemplate |  `arn:aws:iot:region:account-id:job/job-template-id`  | 
| IoT: DescribeRoleAlias | DescribeRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: DescribeThing | DescribeThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: DescribeThingGroup | DescribeThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DescribeThingRegistrationTask | DescribeThingRegistrationTask | Nenhum | 
| IoT: DescribeThingType | DescribeThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: DetachPolicy | DetachPolicy |  `arn:aws:iot:region:account-id:cert/cert-id` or `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DetachPrincipalPolicy | DetachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DetachSecurityProfile | DetachSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: DetachThingPrincipal | DetachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DisableTopicRule | DisableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: EnableTopicRule | EnableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: GetEffectivePolicies | GetEffectivePolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: GetIndexingConfiguration | GetIndexingConfiguration | Nenhum | 
| IoT: GetJobDocument | GetJobDocument |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: GetLoggingOptions | GetLoggingOptions | \$1 | 
| IoT: GetPolicy | GetPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: GetPolicyVersion | GetPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: GetRegistrationCode | GetRegistrationCode | \$1 | 
| IoT: GetTopicRule | GetTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: ListAttachedPolicies | ListAttachedPolicies |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: ListAuthorizers | ListAuthorizers | Nenhum | 
| IoT: lista CACertificates | Lista CACertificates | \$1 | 
| IoT: ListCertificates | ListCertificates | \$1 | 
| IoT: CA ListCertificatesBy | ListCertificatesByCA | \$1 | 
| IoT: ListIndices | ListIndices | Nenhum | 
| IoT: ListJobExecutionsForJob | ListJobExecutionsForJob | Nenhum | 
| IoT: ListJobExecutionsForThing | ListJobExecutionsForThing | Nenhum | 
| IoT: ListJobs | ListJobs |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` se o thingGroupName parâmetro for usado  | 
| IoT: ListJobTemplates | ListJobs | Nenhum | 
| IoT: ListOutgoingCertificates | ListOutgoingCertificates | \$1 | 
| IoT: ListPolicies | ListPolicies | \$1 | 
| IoT: ListPolicyPrincipals | ListPolicyPrincipals | \$1 | 
| IoT: ListPolicyVersions | ListPolicyVersions |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: ListPrincipalPolicies | ListPrincipalPolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: ListPrincipalThings | ListPrincipalThings |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: ListRoleAliases | ListRoleAliases | Nenhum | 
| IoT: ListTargetsForPolicy | ListTargetsForPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: ListThingGroups | ListThingGroups | Nenhum | 
| IoT: ListThingGroupsForThing | ListThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ListThingPrincipals | ListThingPrincipals |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ListThingRegistrationTaskReports | ListThingRegistrationTaskReports | Nenhum | 
| IoT: ListThingRegistrationTasks | ListThingRegistrationTasks | Nenhum | 
| IoT: ListThingTypes | ListThingTypes | \$1 | 
| IoT: ListThings | ListThings | \$1 | 
| IoT: ListThingsInThingGroup | ListThingsInThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: ListTopicRules | ListTopicRules | \$1 | 
| IoT: Lista V2 LoggingLevels | Lista V2 LoggingLevels | Nenhum | 
| IoT: registro CACertificate | Registre-se CACertificate | \$1 | 
| IoT: RegisterCertificate | RegisterCertificate | \$1 | 
| IoT: RegisterThing | RegisterThing | Nenhum | 
| IoT: RejectCertificateTransfer | RejectCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: RemoveThingFromThingGroup | RemoveThingFromThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ReplaceTopicRule | ReplaceTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: SearchIndex | SearchIndex |  `arn:aws:iot:region:account-id:index/index-id`  | 
| IoT: SetDefaultAuthorizer | SetDefaultAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT: SetDefaultPolicyVersion | SetDefaultPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: SetLoggingOptions | SetLoggingOptions |  `arn:aws:iot:region:account-id:role/role-name`  | 
| IoT: SetV2 LoggingLevel | Configurar V2 LoggingLevel |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: SetV2 LoggingOptions | Configurar V2 LoggingOptions |  `arn:aws:iot:region:account-id:role/role-name`  | 
| IoT: StartThingRegistrationTask | StartThingRegistrationTask | Nenhum | 
| IoT: StopThingRegistrationTask | StopThingRegistrationTask | Nenhum | 
| IoT: TestAuthorization | TestAuthorization |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: TestInvokeAuthorizer | TestInvokeAuthorizer | Nenhum | 
| IoT: TransferCertificate | TransferCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: UpdateAuthorizer | UpdateAuthorizer |  `arn:aws:iot:region:account-id:authorizerfunction/authorizer-function-name`  | 
| IoT: atualização CACertificate | Atualizar CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT: UpdateCertificate | UpdateCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: UpdateDimension | UpdateDimension |  `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: UpdateEventConfigurations | UpdateEventConfigurations | Nenhum | 
| IoT: UpdateIndexingConfiguration | UpdateIndexingConfiguration | Nenhum | 
| IoT: UpdateRoleAlias | UpdateRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: UpdateSecurityProfile | UpdateSecurityProfile |  `arn:aws:iot:region:account-id:securityprofile/security-profile-name` `arn:aws:iot:region:account-id:dimension/dimension-name`  | 
| IoT: UpdateThing | UpdateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: UpdateThingGroup | UpdateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: UpdateThingGroupsForThing | UpdateThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name` `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 

As ações políticas AWS IoT usam o seguinte prefixo antes da ação:`iot:`. Por exemplo, para conceder permissão a alguém para listar todas as coisas de IoT Conta da AWS registradas na `ListThings` API, você inclui a `iot:ListThings` ação na política dessa pessoa. As declarações de política devem incluir um `NotAction` elemento `Action` ou. AWS IoT define seu próprio conjunto de ações que descrevem as tarefas que você pode executar com esse serviço.

Para especificar várias ações em uma única instrução, separe-as com vírgulas, como segue:

```
"Action": [
      "ec2:action1",
      "ec2:action2"
```

Você também pode especificar várias ações usando caracteres curinga (\$1). Por exemplo, para especificar todas as ações que começam com a palavra `Describe`, inclua a seguinte ação:

```
"Action": "iot:Describe*"
```

Para ver uma lista de AWS IoT ações, consulte [Ações definidas por AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) no *Guia do usuário do IAM*.

#### Ações do Device Advisor
<a name="security_iam_service-actions-device-advisor"></a>

A tabela a seguir lista as ações do IoT Device Advisor do IAM, a API do AWS IoT Device Advisor associada e o recurso que a ação manipula.


****  

| Ações de políticas | AWS IoT API | Recursos | 
| --- | --- | --- | 
| consultor de dispositivos de IoT: CreateSuiteDefinition | CreateSuiteDefinition |  Nenhum  | 
| consultor de dispositivos de IoT: DeleteSuiteDefinition | DeleteSuiteDefinition |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| consultor de dispositivos de IoT: GetSuiteDefinition | GetSuiteDefinition |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| consultor de dispositivos de IoT: GetSuiteRun | GetSuiteRun |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-run-id`  | 
| consultor de dispositivos de IoT: GetSuiteRunReport | GetSuiteRunReport |  `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| consultor de dispositivos de IoT: ListSuiteDefinitions | ListSuiteDefinitions | Nenhum | 
| consultor de dispositivos de IoT: ListSuiteRuns | ListSuiteRuns |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| consultor de dispositivos de IoT: ListTagsForResource | ListTagsForResource |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id` `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| consultor de dispositivos de IoT: StartSuiteRun | StartSuiteRun |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| consultor de dispositivos de IoT: TagResource | TagResource |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id` `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| consultor de dispositivos de IoT: UntagResource | UntagResource |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id` `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 
| consultor de dispositivos de IoT: UpdateSuiteDefinition | UpdateSuiteDefinition |  `arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`  | 
| consultor de dispositivos de IoT: StopSuiteRun | StopSuiteRun |  `arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`  | 

As ações de política no AWS IoT Device Advisor usam o seguinte prefixo antes da ação:`iotdeviceadvisor:`. Por exemplo, para conceder permissão a alguém para listar todas as definições de suítes Conta da AWS registradas na ListSuiteDefinitions API, você inclui a `iotdeviceadvisor:ListSuiteDefinitions` ação na política dessa pessoa.

### Recursos
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao 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)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Para ações que não oferecem compatibilidade com permissões em nível de recurso, use um curinga (\$1) para indicar que a instrução se aplica a todos os recursos.

```
"Resource": "*"
```


**AWS IoT recursos**  

| Ações de políticas | AWS IoT API | Recursos | 
| --- | --- | --- | 
| IoT: AcceptCertificateTransfer | AcceptCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  O Conta da AWS especificado no ARN deve ser a conta para a qual o certificado está sendo transferido.   | 
| IoT: AddThingToThingGroup | AddThingToThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: AssociateTargetsWithJob | AssociateTargetsWithJob | Nenhum  | 
| IoT: AttachPolicy | AttachPolicy | `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: AttachPrincipalPolicy | AttachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: AttachThingPrincipal | AttachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: CancelCertificateTransfer | CancelCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  O Conta da AWS especificado no ARN deve ser a conta para a qual o certificado está sendo transferido.   | 
| IoT: CancelJob | CancelJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: CancelJobExecution | CancelJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ClearDefaultAuthorizer | ClearDefaultAuthorizer | Nenhum | 
| IoT: CreateAuthorizer | CreateAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT: CreateCertificateFromCsr | CreateCertificateFromCsr | \$1 | 
| IoT: CreateJob | CreateJob |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT: CreateJobTemplate | CreateJobTemplate |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT: CreateKeysAndCertificate | CreateKeysAndCertificate | \$1 | 
| IoT: CreatePolicy | CreatePolicy | `arn:aws:iot:region:account-id:policy/policy-name` | 
| CreatePolicyVersion | IoT: CreatePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  Isso deve ser uma AWS IoT política, não uma política do IAM.   | 
| IoT: CreateRoleAlias | CreateRoleAlias |  (parâmetro: roleAlias) `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: CreateThing | CreateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: CreateThingGroup | CreateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` para o grupo que está sendo criado e para o grupo pai, se usado  | 
| IoT: CreateThingType | CreateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: CreateTopicRule | CreateTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: DeleteAuthorizer | DeleteAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-name`  | 
| IoT: excluir CACertificate | Excluir CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT: DeleteCertificate | DeleteCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DeleteJob | DeleteJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: DeleteJobExecution | DeleteJobExecution |  `arn:aws:iot:region:account-id:job/job-id` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: DeleteJobTemplate | DeleteJobTemplate |  `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT: DeletePolicy | DeletePolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: DeletePolicyVersion | DeletePolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: DeleteRegistrationCode | DeleteRegistrationCode | \$1 | 
| IoT: DeleteRoleAlias | DeleteRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: DeleteThing | DeleteThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: DeleteThingGroup | DeleteThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DeleteThingType | DeleteThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: DeleteTopicRule | DeleteTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: excluir V2 LoggingLevel | Excluir V2 LoggingLevel |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DeprecateThingType | DeprecateThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: DescribeAuthorizer | DescribeAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name` (parâmetro: authorizerName) nenhuma  | 
| IoT: descrever CACertificate | Descreva CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT: DescribeCertificate | DescribeCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DescribeDefaultAuthorizer | DescribeDefaultAuthorizer | Nenhum  | 
| IoT: DescribeEndpoint | DescribeEndpoint | \$1 | 
| IoT: DescribeEventConfigurations | DescribeEventConfigurations | nenhuma  | 
| IoT: DescribeIndex | DescribeIndex |  `arn:aws:iot:region:account-id:index/index-name`  | 
| IoT: DescribeJob | DescribeJob |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: DescribeJobExecution | DescribeJobExecution | Nenhum | 
| IoT: DescribeJobTemplate | DescribeJobTemplate |  `arn:aws:iot:region:account-id:jobtemplate/job-template-id`  | 
| IoT: DescribeRoleAlias | DescribeRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: DescribeThing | DescribeThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: DescribeThingGroup | DescribeThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DescribeThingRegistrationTask | DescribeThingRegistrationTask | Nenhum | 
| IoT: DescribeThingType | DescribeThingType |  `arn:aws:iot:region:account-id:thingtype/thing-type-name`  | 
| IoT: DetachPolicy | DetachPolicy |  `arn:aws:iot:region:account-id:cert/cert-id` or `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: DetachPrincipalPolicy | DetachPrincipalPolicy |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DetachThingPrincipal | DetachThingPrincipal |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: DisableTopicRule | DisableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: EnableTopicRule | EnableTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: GetEffectivePolicies | GetEffectivePolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: GetIndexingConfiguration | GetIndexingConfiguration | Nenhum | 
| IoT: GetJobDocument | GetJobDocument |  `arn:aws:iot:region:account-id:job/job-id`  | 
| IoT: GetLoggingOptions | GetLoggingOptions | \$1 | 
| IoT: GetPolicy | GetPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: GetPolicyVersion | GetPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: GetRegistrationCode | GetRegistrationCode | \$1 | 
| IoT: GetTopicRule | GetTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: ListAttachedPolicies | ListAttachedPolicies |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` or `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: ListAuthorizers | ListAuthorizers | Nenhum | 
| IoT: lista CACertificates | Lista CACertificates | \$1 | 
| IoT: ListCertificates | ListCertificates | \$1 | 
| IoT: CA ListCertificatesBy | ListCertificatesByCA | \$1 | 
| IoT: ListIndices | ListIndices | Nenhum | 
| IoT: ListJobExecutionsForJob | ListJobExecutionsForJob | Nenhum | 
| IoT: ListJobExecutionsForThing | ListJobExecutionsForThing | Nenhum | 
| IoT: ListJobs | ListJobs |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` se o thingGroupName parâmetro for usado  | 
| IoT: ListJobTemplates | ListJobTemplates | Nenhum | 
| IoT: ListOutgoingCertificates | ListOutgoingCertificates | \$1 | 
| IoT: ListPolicies | ListPolicies | \$1 | 
| IoT: ListPolicyPrincipals | ListPolicyPrincipals |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: ListPolicyVersions | ListPolicyVersions |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: ListPrincipalPolicies | ListPrincipalPolicies |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: ListPrincipalThings | ListPrincipalThings |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: ListRoleAliases | ListRoleAliases | Nenhum | 
| IoT: ListTargetsForPolicy | ListTargetsForPolicy |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: ListThingGroups | ListThingGroups | Nenhum | 
| IoT: ListThingGroupsForThing | ListThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ListThingPrincipals | ListThingPrincipals |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ListThingRegistrationTaskReports | ListThingRegistrationTaskReports | Nenhum | 
| IoT: ListThingRegistrationTasks | ListThingRegistrationTasks | Nenhum | 
| IoT: ListThingTypes | ListThingTypes | \$1 | 
| IoT: ListThings | ListThings | \$1 | 
| IoT: ListThingsInThingGroup | ListThingsInThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: ListTopicRules | ListTopicRules | \$1 | 
| IoT: Lista V2 LoggingLevels | Lista V2 LoggingLevels | Nenhum | 
| IoT: registro CACertificate | Registre-se CACertificate | \$1 | 
| IoT: RegisterCertificate | RegisterCertificate | \$1 | 
| IoT: RegisterThing | RegisterThing | Nenhum | 
| IoT: RejectCertificateTransfer | RejectCertificateTransfer |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: RemoveThingFromThingGroup | RemoveThingFromThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name` `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: ReplaceTopicRule | ReplaceTopicRule |  `arn:aws:iot:region:account-id:rule/rule-name`  | 
| IoT: SearchIndex | SearchIndex |  `arn:aws:iot:region:account-id:index/index-id`  | 
| IoT: SetDefaultAuthorizer | SetDefaultAuthorizer |  `arn:aws:iot:region:account-id:authorizer/authorizer-function-name`  | 
| IoT: SetDefaultPolicyVersion | SetDefaultPolicyVersion |  `arn:aws:iot:region:account-id:policy/policy-name`  | 
| IoT: SetLoggingOptions | SetLoggingOptions | \$1 | 
| IoT: SetV2 LoggingLevel | Configurar V2 LoggingLevel | \$1 | 
| IoT: SetV2 LoggingOptions | Configurar V2 LoggingOptions | \$1 | 
| IoT: StartThingRegistrationTask | StartThingRegistrationTask | Nenhum | 
| IoT: StopThingRegistrationTask | StopThingRegistrationTask | Nenhum | 
| IoT: TestAuthorization | TestAuthorization |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: TestInvokeAuthorizer | TestInvokeAuthorizer | Nenhum | 
| IoT: TransferCertificate | TransferCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: UpdateAuthorizer | UpdateAuthorizer |  `arn:aws:iot:region:account-id:authorizerfunction/authorizer-function-name`  | 
| IoT: atualização CACertificate | Atualizar CACertificate |  `arn:aws:iot:region:account-id:cacert/cert-id`  | 
| IoT: UpdateCertificate | UpdateCertificate |  `arn:aws:iot:region:account-id:cert/cert-id`  | 
| IoT: UpdateEventConfigurations | UpdateEventConfigurations | Nenhum | 
| IoT: UpdateIndexingConfiguration | UpdateIndexingConfiguration | Nenhum | 
| IoT: UpdateRoleAlias | UpdateRoleAlias |  `arn:aws:iot:region:account-id:rolealias/role-alias-name`  | 
| IoT: UpdateThing | UpdateThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 
| IoT: UpdateThingGroup | UpdateThingGroup |  `arn:aws:iot:region:account-id:thinggroup/thing-group-name`  | 
| IoT: UpdateThingGroupsForThing | UpdateThingGroupsForThing |  `arn:aws:iot:region:account-id:thing/thing-name`  | 

Para obter mais informações sobre o formato de ARNs, consulte [Amazon Resource Names (ARNs) e AWS Service Namespaces](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).

Algumas AWS IoT ações, como as de criação de recursos, não podem ser executadas em um recurso específico. Nesses casos, é necessário utilizar o caractere curinga (\$1).

```
"Resource": "*"
```

Para ver uma lista dos tipos de AWS IoT recursos e seus ARNs, consulte [Resources Defined by AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-resources-for-iam-policies) no *Guia do usuário do IAM*. Para saber com quais ações você pode especificar o ARN de cada recurso, consulte [Ações definidas pelo AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions).

#### Recursos do Device Advisor
<a name="security_iam_service-device-advisor-resources"></a>

Para definir restrições em nível de recurso para as políticas de IAM do AWS IoT Device Advisor, use os seguintes formatos de ARN de recursos para definições e execuções de suítes.

Formato do ARN de recurso de definição de suíte  
`arn:aws:iotdeviceadvisor:region:account-id:suitedefinition/suite-definition-id`

Formato do ARN de recurso de execução de suíte  
`arn:aws:iotdeviceadvisor:region:account-id:suiterun/suite-definition-id/suite-run-id`

### Chaves de condição
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao 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](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), 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 AWS globais, consulte as [chaves de contexto de condição AWS global](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) no *Guia do usuário do IAM*.

AWS IoT define seu próprio conjunto de chaves de condição e também oferece suporte ao uso de algumas chaves de condição globais. Para ver todas as chaves de condição AWS globais, consulte [Chaves de contexto de condição AWS global](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_condition-keys.html) no *Guia do usuário do IAM*. 


**AWS IoT chaves de condição**  

| AWS IoT chaves de condição | Descrição | Tipo | 
| --- | --- | --- | 
| aws:RequestTag/\$1\$1tag-key\$1 | Uma chave de tag que está presente na solicitação que o usuário faz para o AWS IoT. | String | 
| aws:ResourceTag/\$1\$1tag-key\$1 | O componente chave da tag de uma tag anexada a um AWS IoT recurso. | String | 
| aws:TagKeys | A lista de todos os nomes de chaves de etiquetas associadas ao recurso na solicitação. | String | 

Para ver uma lista de chaves de AWS IoT condição, consulte [Chaves de condição AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-policy-keys) no *Guia do usuário do IAM*. Para saber com quais ações e recursos você pode usar uma chave de condição, consulte [Ações definidas por AWS IoT](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions).

### Exemplos
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Para ver exemplos de políticas AWS IoT baseadas em identidade, consulte. [AWS IoT exemplos de políticas baseadas em identidade](security_iam_id-based-policy-examples.md)

## AWS IoT políticas baseadas em recursos
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Políticas baseadas em recursos são documentos de política JSON que especificam quais ações um diretor específico pode realizar no AWS IoT recurso e sob quais condições.

AWS IoT não é compatível com políticas baseadas em recursos do IAM. No entanto, ele apóia políticas AWS IoT baseadas em recursos. Para obter mais informações, consulte [AWS IoT Core políticas](iot-policies.md).

## Autorização baseada em AWS IoT tags
<a name="security_iam_service-with-iam-tags"></a>

Você pode anexar tags a AWS IoT recursos ou passar tags em uma solicitação para AWS IoT. Para controlar o acesso baseado em tags, forneça informações sobre as tags no [elemento de condição](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements_condition.html) de uma política usando as `iot:ResourceTag/key-name`, `aws:RequestTag/key-name` ou chaves de condição `aws:TagKeys`. Para obter mais informações, consulte [Utilização de tags com políticas do IAM](tagging-iot-iam.md). Para obter mais informações sobre a marcação de AWS IoT recursos, consulte[Marcando seus recursos AWS IoT](tagging-iot.md).

Para visualizar um exemplo de política baseada em identidade que visa limitar o acesso a um recurso baseado nas tags desse recurso, consulte [Visualizando AWS IoT recursos com base em tags](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-view-thing-tags).

## AWS IoT Funções do IAM
<a name="security_iam_service-with-iam-roles"></a>

Uma [função do IAM](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles.html) é uma entidade dentro da sua Conta da AWS que tem permissões específicas.

### Usando credenciais temporárias com AWS IoT
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

É possível usar credenciais temporárias para fazer login com federação, assumir um perfil do IAM ou assumir um perfil entre contas. Você obtém credenciais de segurança temporárias chamando operações de AWS STS API, como [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)ou [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html). 

AWS IoT suporta o uso de credenciais temporárias. 

### Perfis vinculados ao serviço
<a name="security_iam_service-with-iam-roles-service-linked"></a>

[As funções vinculadas ao serviço](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-linked-role) permitem que AWS os serviços acessem recursos em outros serviços para concluir uma ação em seu nome. Os perfis vinculados a serviço aparecem em sua conta do IAM e são de propriedade do serviço. Um administrador do IAM pode visualizar, mas não pode editar as permissões para perfis vinculados a serviço.

AWS IoT não oferece suporte a funções vinculadas a serviços.

### Perfis de serviço
<a name="security_iam_service-with-iam-roles-service"></a>

Esse atributo permite que um serviço assuma um [perfil de serviço](https://docs.aws.amazon.com/service-authorization/latest/reference/id_roles_terms-and-concepts.html#iam-term-service-role) em seu nome. O perfil permite que o serviço acesse recursos em outros serviços para concluir uma ação em seu nome. Os perfis de serviço aparecem em sua conta do IAM e são de propriedade da conta. Isso significa que um administrador do IAM pode alterar as permissões para esse perfil. Porém, fazer isso pode alterar a funcionalidade do serviço.

# AWS IoT exemplos de políticas baseadas em identidade
<a name="security_iam_id-based-policy-examples"></a>

Por padrão, os usuários e os perfis do IAM não têm permissão para criar ou modificar recursos do AWS IoT . Eles também não podem realizar tarefas usando a AWS API Console de gerenciamento da AWS AWS CLI, ou. Um administrador do IAM deve criar políticas do IAM que concedam aos usuários e perfis permissão para executarem operações de API específicas nos recursos especificados de que precisam. O administrador deve anexar essas políticas aos usuários ou grupos que exigem essas permissões.

Para saber como criar uma política baseada em identidade do IAM usando esses exemplos de documentos de política JSON, consulte [Criar políticas na guia JSON](https://docs.aws.amazon.com/service-authorization/latest/reference/access_policies_create.html#access_policies_create-json-editor) no *Guia do usuário do IAM*.

**Topics**
+ [Práticas recomendadas de política](#security_iam_service-with-iam-policy-best-practices)
+ [Usando o AWS IoT console](#security_iam_id-based-policy-examples-console)
+ [Permitir que os usuários visualizem suas próprias permissões](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Visualizando AWS IoT recursos com base em tags](#security_iam_id-based-policy-examples-view-thing-tags)
+ [Visualizando recursos AWS IoT do Device Advisor com base em tags](#security_iam-device-advisor-tags)

## Práticas recomendadas de política
<a name="security_iam_service-with-iam-policy-best-practices"></a>

As políticas baseadas em identidade determinam se alguém pode criar, acessar ou excluir AWS IoT recursos em sua conta. Essas ações podem incorrer em custos para sua Conta da AWS. Ao criar ou editar políticas baseadas em identidade, siga estas diretrizes e recomendações:
+ **Comece com políticas AWS gerenciadas e avance para permissões de privilégios mínimos — Para começar a conceder permissões** para seus usuários e cargas de trabalho, use as *políticas AWS gerenciadas* que concedem permissões para muitos casos de uso comuns. Eles estão disponíveis no seu Conta da AWS. Recomendamos que você reduza ainda mais as permissões definindo políticas gerenciadas pelo AWS cliente que sejam específicas para seus casos de uso. Para saber mais, consulte [Políticas gerenciadas pela AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) ou [Políticas gerenciadas pela AWS para funções de trabalho](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) no *Guia do usuário do IAM*.
+ **Aplique permissões de privilégio mínimo**: ao definir permissões com as políticas do IAM, conceda apenas as permissões necessárias para executar uma tarefa. Você faz isso definindo as ações que podem ser executadas em recursos específicos sob condições específicas, também conhecidas como *permissões de privilégio mínimo*. Para saber mais sobre como usar o IAM para aplicar permissões, consulte [Políticas e permissões no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) no *Guia do usuário do IAM*.
+ **Use condições nas políticas do IAM para restringir ainda mais o acesso**: é possível adicionar uma condição às políticas para limitar o acesso a ações e recursos. Por exemplo, é possível escrever uma condição de política para especificar que todas as solicitações devem ser enviadas usando SSL. Você também pode usar condições para conceder acesso às ações de serviço se elas forem usadas por meio de uma ação específica AWS service (Serviço da AWS), como CloudFormation. Para saber mais, consulte [Elementos da política JSON do IAM: condição](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) no *Guia do usuário do IAM*.
+ **Use o IAM Access Analyzer para validar suas políticas do IAM a fim de garantir permissões seguras e funcionais**: o IAM Access Analyzer valida as políticas novas e existentes para que elas sigam a linguagem de política do IAM (JSON) e as práticas recomendadas do IAM. O IAM Access Analyzer oferece mais de cem verificações de política e recomendações práticas para ajudar a criar políticas seguras e funcionais. Para saber mais, consulte [Validação de políticas do IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) no *Guia do Usuário do IAM*.
+ **Exigir autenticação multifator (MFA**) — Se você tiver um cenário que exija usuários do IAM ou um usuário root, ative Conta da AWS a MFA para obter segurança adicional. Para exigir MFA quando as operações de API forem chamadas, adicione condições de MFA às suas políticas. Para saber mais, consulte [Configuração de acesso à API protegido por MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) no *Guia do Usuário do IAM*.

Para saber mais sobre as práticas recomendadas do IAM, consulte [Práticas recomendadas de segurança no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) no *Guia do usuário do IAM*.

## Usando o AWS IoT console
<a name="security_iam_id-based-policy-examples-console"></a>

Para acessar o AWS IoT console, você deve ter um conjunto mínimo de permissões. Essas permissões devem permitir que você liste e visualize detalhes sobre os AWS IoT recursos em seu Conta da AWS. Caso crie uma política baseada em identidade mais restritiva que as permissões mínimas necessárias, o console não funcionará como pretendido para entidades (usuários ou perfis) com essa política.

Para garantir que essas entidades ainda possam usar o AWS IoT console, anexe também a seguinte política AWS gerenciada às entidades:`AWSIoTFullAccess`. Para obter mais informações, consulte [Adicionar permissões a um usuário](https://docs.aws.amazon.com/service-authorization/latest/reference/id_users_change-permissions.html#users_change_permissions-add-console) no *Guia do usuário do IAM*.

Você não precisa permitir permissões mínimas do console para usuários que estão fazendo chamadas somente para a API AWS CLI ou para a AWS API. Em vez disso, permita o acesso somente às ações que correspondem à operação da API que você está tentando executar.

## Permitir que os usuários visualizem suas próprias permissões
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

Este exemplo mostra como criar uma política que permita que os usuários do IAM visualizem as políticas gerenciadas e em linha anexadas a sua identidade de usuário. Essa política inclui permissões para concluir essa ação no console ou programaticamente usando a API AWS CLI ou AWS .

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## Visualizando AWS IoT recursos com base em tags
<a name="security_iam_id-based-policy-examples-view-thing-tags"></a>

É possível utilizar condições na política baseada em identidade para controlar o acesso aos recursos do AWS IoT com base em tags. Este exemplo mostra como é possível criar uma política que permite visualizar um objeto. No entanto, a permissão é concedida somente se a tag do objeto `Owner` tiver o valor do nome de usuário desse usuário. Essa política também concede as permissões necessárias concluir essa ação no console.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ListBillingGroupsInConsole",
            "Effect": "Allow",
            "Action": "iot:ListBillingGroups",
            "Resource": "*"
        },
        {
            "Sid": "ViewBillingGroupsIfOwner",
            "Effect": "Allow",
           "Action": "iot:DescribeBillingGroup",
            "Resource": "arn:aws:iot:*:*:billinggroup/*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/Owner": "${aws:username}"}
        }
        }
    ]
}
```

É possível anexar essa política aos usuários do IAM na sua conta. Se um usuário chamado `richard-roe` tentar visualizar um grupo de AWS IoT cobrança, o grupo de cobrança deverá estar marcado com `Owner=richard-roe` ou. `owner=richard-roe` Caso contrário, ele terá o acesso negado. A chave da tag de condição `Owner` corresponde a `Owner` e a `owner` porque os nomes das chaves de condição não fazem distinção entre maiúsculas e minúsculas. Para obter mais informações, consulte [IAM JSON Policy Elements: Condition](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_elements_condition.html) (Elementos da política JSON do IAM: Condição) no *Guia do usuário do IAM*.

## Visualizando recursos AWS IoT do Device Advisor com base em tags
<a name="security_iam-device-advisor-tags"></a>

Você pode usar condições em sua política baseada em identidade para controlar o acesso aos recursos do AWS IoT Device Advisor com base em tags. O exemplo a seguir mostra como criar uma política que permite visualizar uma definição de suíte específica. No entanto, a permissão será concedida somente se a tag de definição de suíte tiver `SuiteType` definido como o valor de `MQTT`. Essa política também concede as permissões necessárias concluir essa ação no console.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewSuiteDefinition",
            "Effect": "Allow",
            "Action": "iotdeviceadvisor:GetSuiteDefinition",
            "Resource": "arn:aws:iotdeviceadvisor:*:*:suitedefinition/*",
            "Condition": {
                "StringEquals": {"aws:ResourceTag/SuiteType": "MQTT"}
        }
        }
    ]
}
```

# AWS políticas gerenciadas para AWS IoT
<a name="security-iam-awsmanpol"></a>







Para adicionar permissões a usuários, grupos e funções, é mais fácil usar políticas AWS gerenciadas do que escrever políticas você mesmo. É necessário tempo e experiência para criar [políticas gerenciadas pelo cliente do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) que fornecem à sua equipe apenas as permissões de que precisam. Para começar rapidamente, você pode usar nossas políticas AWS gerenciadas. Essas políticas abrangem casos de uso comuns e estão disponíveis na sua Conta da AWS. Para obter mais informações sobre políticas AWS gerenciadas, consulte [políticas AWS gerenciadas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) no *Guia do usuário do IAM*.

AWS os serviços mantêm e atualizam as políticas AWS gerenciadas. Você não pode alterar as permissões nas políticas AWS gerenciadas. Os serviços ocasionalmente acrescentam permissões adicionais a uma política gerenciada pela AWS para oferecer suporte a novos recursos. Esse tipo de atualização afeta todas as identidades (usuários, grupos e funções) em que a política está anexada. É mais provável que os serviços atualizem uma política gerenciada pela AWS quando um novo recurso for iniciado ou novas operações se tornarem disponíveis. Os serviços não removem as permissões de uma política AWS gerenciada, portanto, as atualizações de políticas não violarão suas permissões existentes.

Além disso, AWS oferece suporte a políticas gerenciadas para funções de trabalho que abrangem vários serviços. Por exemplo, a política **ReadOnlyAccess** AWS gerenciada fornece acesso somente de leitura a todos os AWS serviços e recursos. Quando um serviço inicia um novo atributo, a AWS adiciona permissões somente leitura para novas operações e atributos. Para obter uma lista e descrições das políticas de perfis de trabalho, consulte [Políticas gerenciadas pela AWS para perfis de trabalho](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) no *Guia do usuário do IAM*.

**nota**  
AWS IoT funciona com ambas as políticas AWS IoT e do IAM. Este tópico discute somente as políticas do IAM, que definem uma ação política para operações de API do ambiente de gerenciamento e do plano de dados. Consulte também [AWS IoT Core políticas](iot-policies.md).









## AWS política gerenciada: AWSIo TConfig Acesso
<a name="security-iam-awsmanpol-AWSIoTConfigAccess"></a>





É possível anexar a política `AWSIoTConfigAccess` às suas identidades do IAM.



Essa política concede as permissões de identidade associadas que permitem acesso a todas as operações de configuração de AWS IoT . Essa política pode afetar o processamento de dados e armazenamento. Para ver essa política no Console de gerenciamento da AWS, consulte [AWSIoTConfigAccess](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTConfigAccess$jsonEditor?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot`— Recupere AWS IoT dados e execute ações de configuração de IoT.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:AcceptCertificateTransfer",
                "iot:AddThingToThingGroup",
                "iot:AssociateTargetsWithJob",
                "iot:AttachPolicy",
                "iot:AttachPrincipalPolicy",
                "iot:AttachThingPrincipal",
                "iot:CancelCertificateTransfer",
                "iot:CancelJob",
                "iot:CancelJobExecution",
                "iot:ClearDefaultAuthorizer",
                "iot:CreateAuthorizer",
                "iot:CreateCertificateFromCsr",
                "iot:CreateJob",
                "iot:CreateKeysAndCertificate",
                "iot:CreateOTAUpdate",
                "iot:CreatePolicy",
                "iot:CreatePolicyVersion",
                "iot:CreateRoleAlias",
                "iot:CreateStream",
                "iot:CreateThing",
                "iot:CreateThingGroup",
                "iot:CreateThingType",
                "iot:CreateTopicRule",
                "iot:DeleteAuthorizer",
                "iot:DeleteCACertificate",
                "iot:DeleteCertificate",
                "iot:DeleteJob",
                "iot:DeleteJobExecution",
                "iot:DeleteOTAUpdate",
                "iot:DeletePolicy",
                "iot:DeletePolicyVersion",
                "iot:DeleteRegistrationCode",
                "iot:DeleteRoleAlias",
                "iot:DeleteStream",
                "iot:DeleteThing",
                "iot:DeleteThingGroup",
                "iot:DeleteThingType",
                "iot:DeleteTopicRule",
                "iot:DeleteV2LoggingLevel",
                "iot:DeprecateThingType",
                "iot:DescribeAuthorizer",
                "iot:DescribeCACertificate",
                "iot:DescribeCertificate",
                "iot:DescribeDefaultAuthorizer",
                "iot:DescribeEndpoint",
                "iot:DescribeEventConfigurations",
                "iot:DescribeIndex",
                "iot:DescribeJob",
                "iot:DescribeJobExecution",
                "iot:DescribeRoleAlias",
                "iot:DescribeStream",
                "iot:DescribeThing",
                "iot:DescribeThingGroup",
                "iot:DescribeThingRegistrationTask",
                "iot:DescribeThingType",
                "iot:DetachPolicy",
                "iot:DetachPrincipalPolicy",
                "iot:DetachThingPrincipal",
                "iot:DisableTopicRule",
                "iot:EnableTopicRule",
                "iot:GetEffectivePolicies",
                "iot:GetIndexingConfiguration",
                "iot:GetJobDocument",
                "iot:GetLoggingOptions",
                "iot:GetOTAUpdate",
                "iot:GetPolicy",
                "iot:GetPolicyVersion",
                "iot:GetRegistrationCode",
                "iot:GetTopicRule",
                "iot:GetV2LoggingOptions",
                "iot:ListAttachedPolicies",
                "iot:ListAuthorizers",
                "iot:ListCACertificates",
                "iot:ListCertificates",
                "iot:ListCertificatesByCA",
                "iot:ListIndices",
                "iot:ListJobExecutionsForJob",
                "iot:ListJobExecutionsForThing",
                "iot:ListJobs",
                "iot:ListOTAUpdates",
                "iot:ListOutgoingCertificates",
                "iot:ListPolicies",
                "iot:ListPolicyPrincipals",
                "iot:ListPolicyVersions",
                "iot:ListPrincipalPolicies",
                "iot:ListPrincipalThings",
                "iot:ListRoleAliases",
                "iot:ListStreams",
                "iot:ListTargetsForPolicy",
                "iot:ListThingGroups",
                "iot:ListThingGroupsForThing",
                "iot:ListThingPrincipals",
                "iot:ListThingRegistrationTaskReports",
                "iot:ListThingRegistrationTasks",
                "iot:ListThings",
                "iot:ListThingsInThingGroup",
                "iot:ListThingTypes",
                "iot:ListTopicRules",
                "iot:ListV2LoggingLevels",
                "iot:RegisterCACertificate",
                "iot:RegisterCertificate",
                "iot:RegisterThing",
                "iot:RejectCertificateTransfer",
                "iot:RemoveThingFromThingGroup",
                "iot:ReplaceTopicRule",
                "iot:SearchIndex",
                "iot:SetDefaultAuthorizer",
                "iot:SetDefaultPolicyVersion",
                "iot:SetLoggingOptions",
                "iot:SetV2LoggingLevel",
                "iot:SetV2LoggingOptions",
                "iot:StartThingRegistrationTask",
                "iot:StopThingRegistrationTask",
                "iot:TestAuthorization",
                "iot:TestInvokeAuthorizer",
                "iot:TransferCertificate",
                "iot:UpdateAuthorizer",
                "iot:UpdateCACertificate",
                "iot:UpdateCertificate",
                "iot:UpdateEventConfigurations",
                "iot:UpdateIndexingConfiguration",
                "iot:UpdateRoleAlias",
                "iot:UpdateStream",
                "iot:UpdateThing",
                "iot:UpdateThingGroup",
                "iot:UpdateThingGroupsForThing",
                "iot:UpdateAccountAuditConfiguration",
                "iot:DescribeAccountAuditConfiguration",
                "iot:DeleteAccountAuditConfiguration",
                "iot:StartOnDemandAuditTask",
                "iot:CancelAuditTask",
                "iot:DescribeAuditTask",
                "iot:ListAuditTasks",
                "iot:CreateScheduledAudit",
                "iot:UpdateScheduledAudit",
                "iot:DeleteScheduledAudit",
                "iot:DescribeScheduledAudit",
                "iot:ListScheduledAudits",
                "iot:ListAuditFindings",
                "iot:CreateSecurityProfile",
                "iot:DescribeSecurityProfile",
                "iot:UpdateSecurityProfile",
                "iot:DeleteSecurityProfile",
                "iot:AttachSecurityProfile",
                "iot:DetachSecurityProfile",
                "iot:ListSecurityProfiles",
                "iot:ListSecurityProfilesForTarget",
                "iot:ListTargetsForSecurityProfile",
                "iot:ListActiveViolations",
                "iot:ListViolationEvents",
                "iot:ValidateSecurityProfileBehaviors"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS política gerenciada: AWSIo TConfig ReadOnlyAccess
<a name="security-iam-awsmanpol-AWSIoTConfigReadOnlyAccess"></a>





É possível anexar a política `AWSIoTConfigReadOnlyAccess` às suas identidades do IAM.



Essa política concede as permissões de identidade associadas que permitem acesso somente de leitura a todas as operações de configuração de AWS IoT . Para ver essa política no Console de gerenciamento da AWS, consulte [AWSIoTConfigReadOnlyAccess](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTConfigReadOnlyAccess$jsonEditor?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot` – Executar operações somente de leitura das ações de configuração de IoT.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:DescribeAuthorizer",
                "iot:DescribeCACertificate",
                "iot:DescribeCertificate",
                "iot:DescribeDefaultAuthorizer",
                "iot:DescribeEndpoint",
                "iot:DescribeEventConfigurations",
                "iot:DescribeIndex",
                "iot:DescribeJob",
                "iot:DescribeJobExecution",
                "iot:DescribeRoleAlias",
                "iot:DescribeStream",
                "iot:DescribeThing",
                "iot:DescribeThingGroup",
                "iot:DescribeThingRegistrationTask",
                "iot:DescribeThingType",
                "iot:GetEffectivePolicies",
                "iot:GetIndexingConfiguration",
                "iot:GetJobDocument",
                "iot:GetLoggingOptions",
                "iot:GetOTAUpdate",
                "iot:GetPolicy",
                "iot:GetPolicyVersion",
                "iot:GetRegistrationCode",
                "iot:GetTopicRule",
                "iot:GetV2LoggingOptions",
                "iot:ListAttachedPolicies",
                "iot:ListAuthorizers",
                "iot:ListCACertificates",
                "iot:ListCertificates",
                "iot:ListCertificatesByCA",
                "iot:ListIndices",
                "iot:ListJobExecutionsForJob",
                "iot:ListJobExecutionsForThing",
                "iot:ListJobs",
                "iot:ListOTAUpdates",
                "iot:ListOutgoingCertificates",
                "iot:ListPolicies",
                "iot:ListPolicyPrincipals",
                "iot:ListPolicyVersions",
                "iot:ListPrincipalPolicies",
                "iot:ListPrincipalThings",
                "iot:ListRoleAliases",
                "iot:ListStreams",
                "iot:ListTargetsForPolicy",
                "iot:ListThingGroups",
                "iot:ListThingGroupsForThing",
                "iot:ListThingPrincipals",
                "iot:ListThingRegistrationTaskReports",
                "iot:ListThingRegistrationTasks",
                "iot:ListThings",
                "iot:ListThingsInThingGroup",
                "iot:ListThingTypes",
                "iot:ListTopicRules",
                "iot:ListV2LoggingLevels",
                "iot:SearchIndex",
                "iot:TestAuthorization",
                "iot:TestInvokeAuthorizer",
                "iot:DescribeAccountAuditConfiguration",
                "iot:DescribeAuditTask",
                "iot:ListAuditTasks",
                "iot:DescribeScheduledAudit",
                "iot:ListScheduledAudits",
                "iot:ListAuditFindings",
                "iot:DescribeSecurityProfile",
                "iot:ListSecurityProfiles",
                "iot:ListSecurityProfilesForTarget",
                "iot:ListTargetsForSecurityProfile",
                "iot:ListActiveViolations",
                "iot:ListViolationEvents",
                "iot:ValidateSecurityProfileBehaviors"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS política gerenciada: AWSIo TData Acesso
<a name="security-iam-awsmanpol-AWSIoTDataAccess"></a>





É possível anexar a política `AWSIoTDataAccess` às suas identidades do IAM.



Essa política concede às identidades associadas permissões que permitem o acesso a todas as operações AWS IoT de dados. As operações de dados enviam dados por protocolos MQTT ou HTTP. Para visualizar essa política no Console de gerenciamento da AWS, consulte [https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTDataAccess?section=permissions](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTDataAccess?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot`— Recupere AWS IoT dados e permita acesso total às ações AWS IoT de mensagens.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:Connect",
                "iot:Publish",
                "iot:Subscribe",
                "iot:Receive",
                "iot:GetThingShadow",
                "iot:UpdateThingShadow",
                "iot:DeleteThingShadow",
                "iot:ListNamedShadowsForThing"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS política gerenciada: AWSIo TFull Acesso
<a name="security-iam-awsmanpol-AWSIoTFullAccess"></a>





É possível anexar a política `AWSIoTFullAccess` às suas identidades do IAM.



Essa política concede as permissões de identidade associadas que permitem acesso a todas as operações de configuração e mensagens de AWS IoT . Para ver essa política no Console de gerenciamento da AWS, consulte [https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTFullAccess?section=permissions](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTFullAccess?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot`— recupere AWS IoT dados e permita acesso total às ações AWS IoT de configuração e mensagens.
+ `iotjobsdata`— Recupere os dados do AWS IoT Jobs e permita acesso total às operações da API do plano de dados do AWS IoT Jobs.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:*",
                "iotjobsdata:*"
            ],
            "Resource": "*"
        }
    ]
}
```

## AWS política gerenciada: AWSIo TLogging
<a name="security-iam-awsmanpol-AWSIoTLogging"></a>





É possível anexar a política `AWSIoTLogging` às suas identidades do IAM.



Essa política concede às permissões de identidade associadas que permitem o acesso para criar grupos do Amazon CloudWatch Logs e transmitir registros para os grupos. Essa política está anexada à sua função de CloudWatch registro. Para ver essa política no Console de gerenciamento da AWS, consulte [https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTLogging?section=permissions](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTLogging?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `logs`— Recuperar CloudWatch registros. Também permite a criação de grupos de CloudWatch registros e registros de streaming para os grupos.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:PutMetricFilter",
                "logs:PutRetentionPolicy",
                "logs:GetLogEvents",
                "logs:DeleteLogStream"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

## AWS política gerenciada: AWSIo TOTAUpdate
<a name="security-iam-awsmanpol-AWSIoTOTAUpdate"></a>





É possível anexar a política `AWSIoTOTAUpdate` às suas identidades do IAM.



Essa política concede às identidades associadas permissões que permitem acesso para criar AWS IoT trabalhos, trabalhos de assinatura de AWS IoT código e descrever trabalhos de assinantes de AWS código. Para ver essa política no Console de gerenciamento da AWS, consulte [`AWSIoTOTAUpdate`.](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTOTAUpdate?section=permissions)



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot`— Crie AWS IoT trabalhos e trabalhos de assinatura de código.
+ `signer`— Execute a criação de trabalhos de assinante de AWS código.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "iot:CreateJob",
            "signer:DescribeSigningJob"
        ],
        "Resource": "*"
    }
}
```

## AWS política gerenciada: AWSIo TRule ações
<a name="security-iam-awsmanpol-AWSIoTRuleActions"></a>





É possível anexar a política `AWSIoTRuleActions` às suas identidades do IAM.



Essa política concede às identidades associadas permissões que permitem acesso a tudo o que AWS service (Serviço da AWS)é suportado em ações de AWS IoT regras. Para ver essa política no Console de gerenciamento da AWS, consulte [https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTRuleActions?section=permissions](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTRuleActions?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot` - Executar ações para publicar mensagens de ação de regras.
+ `dynamodb` - Inserir uma mensagem em uma tabela do DynamoDB ou divida uma mensagem em várias colunas de uma tabela do DynamoDB.
+ `s3` - Armazenar um objeto em um bucket do Amazon S3.
+ `kinesis` - Enviar uma mensagem para um objeto de fluxo do Amazon Kinesis.
+ `firehose`: inserir um registro em um objeto de fluxo do Firehose.
+ `cloudwatch`- Altere o estado do CloudWatch alarme ou envie dados da mensagem para a CloudWatch métrica.
+ `sns` - Executar a operação para publicar uma notificação usando o Amazon SNS. Essa operação tem como escopo os tópicos do AWS IoT SNS.
+ `sqs` - Inserir uma mensagem para adicionar à fila do SQS.
+ `es`- Envie uma mensagem para o OpenSearch serviço de serviço.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
            "dynamodb:PutItem",
            "kinesis:PutRecord",
            "iot:Publish",
            "s3:PutObject",
            "sns:Publish",
            "sqs:SendMessage*",
            "cloudwatch:SetAlarmState",
            "cloudwatch:PutMetricData",
            "es:ESHttpPut",
            "firehose:PutRecord"
        ],
        "Resource": "*"
    }
}
```

## AWS política gerenciada: AWSIo TThings Registro
<a name="security-iam-awsmanpol-AWSIoTThingsRegistration"></a>





É possível anexar a política `AWSIoTThingsRegistration` às suas identidades do IAM.



Essa política concede as permissões de identidade associadas que permitem o acesso para registrar objetos em massa usando a API `StartThingRegistrationTask`. Essa política pode afetar o processamento de dados e armazenamento. Para ver essa política no Console de gerenciamento da AWS, consulte [https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTThingsRegistration?section=permissions](https://console.aws.amazon.com//iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTThingsRegistration?section=permissions).



**Detalhes das permissões**

Esta política inclui as seguintes permissões.




+ `iot` - Executar ações para criar objetos e anexar políticas e certificados ao se registrar em massa.



****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "iot:AddThingToThingGroup",
                "iot:AttachPolicy",
                "iot:AttachPrincipalPolicy",
                "iot:AttachThingPrincipal",
                "iot:CreateCertificateFromCsr",
                "iot:CreatePolicy",
                "iot:CreateThing",
                "iot:DescribeCertificate",
                "iot:DescribeThing",
                "iot:DescribeThingGroup",
                "iot:DescribeThingType",
                "iot:DetachPolicy",
                "iot:DetachThingPrincipal",
                "iot:GetPolicy",
                "iot:ListAttachedPolicies",
                "iot:ListPolicyPrincipals",
                "iot:ListPrincipalPolicies",
                "iot:ListPrincipalThings",
                "iot:ListTargetsForPolicy",
                "iot:ListThingGroupsForThing",
                "iot:ListThingPrincipals",
                "iot:RegisterCertificate",
                "iot:RegisterThing",
                "iot:RemoveThingFromThingGroup",
                "iot:UpdateCertificate",
                "iot:UpdateThing",
                "iot:UpdateThingGroupsForThing",
                "iot:AddThingToBillingGroup",
                "iot:DescribeBillingGroup",
                "iot:RemoveThingFromBillingGroup"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```





## AWS IoT atualizações nas políticas AWS gerenciadas
<a name="security-iam-awsmanpol-updates"></a>



Veja detalhes sobre as atualizações das políticas AWS gerenciadas AWS IoT desde que esse serviço começou a rastrear essas alterações. Para receber alertas automáticos sobre alterações nessa página, assine o feed RSS na página Histórico do AWS IoT documento.




| Alteração | Descrição | Data | 
| --- | --- | --- | 
|  [AWSIoTFullAcesso](#security-iam-awsmanpol-AWSIoTFullAccess) — Atualização de uma política existente  |  AWS IoT adicionou novas permissões para permitir que os usuários acessem as operações da API do plano de dados do AWS IoT Jobs usando o protocolo HTTP. Um novo prefixo de política do IAM,`iotjobsdata:`, fornece um controle de acesso mais refinado para acessar os endpoints do plano de dados de AWS IoT Jobs. Para operações de API do ambiente de gerenciamento, o prefixo `iot:` ainda é usado. Para obter mais informações, consulte [AWS IoT Core políticas para o protocolo HTTPS](iot-data-plane-jobs.md#iot-jobs-data-http).  | 11 de maio de 2022 | 
|  AWS IoT começou a rastrear as alterações  |  AWS IoT começou a rastrear as mudanças em suas políticas AWS gerenciadas.  | 11 de maio de 2022 | 

# Solução de problemas AWS IoT de identidade e acesso
<a name="security_iam_troubleshoot"></a>

Use as informações a seguir para ajudá-lo a diagnosticar e corrigir problemas comuns que você pode encontrar ao trabalhar com AWS IoT um IAM.

**Topics**
+ [Não estou autorizado a realizar uma ação em AWS IoT](#security_iam_troubleshoot-no-permissions)
+ [Não estou autorizado a realizar iam: PassRole](#security_iam_troubleshoot-passrole)
+ [Quero permitir que pessoas fora da minha Conta da AWS acessem meus AWS IoT recursos](#security_iam_troubleshoot-cross-account-access)

## Não estou autorizado a realizar uma ação em AWS IoT
<a name="security_iam_troubleshoot-no-permissions"></a>

Se você receber uma mensagem de erro informando que não tem autorização para executar uma ação, suas políticas deverão ser atualizadas para permitir que você realize a ação.

O erro do exemplo a seguir ocorre quando o usuário do IAM `mateojackson` tenta usar o console para visualizar detalhes sobre um recurso de objeto, mas não tem as permissões `iot:DescribeThing`.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: iot:DescribeThing on resource: MyIoTThing
```

Nesse caso, a política do usuário `mateojackson` deve ser atualizada para permitir o acesso ao recurso de objeto usando a ação `iot:DescribeThing`. 

Se precisar de ajuda, entre em contato com seu AWS administrador. Seu administrador é a pessoa que forneceu suas credenciais de login.

Usando o AWS IoT Device Advisor  
Se você estiver usando o AWS IoT Device Advisor, o exemplo de erro a seguir ocorre quando o usuário `mateojackson` tenta usar o console para visualizar detalhes sobre a definição de uma suíte, mas não tem as `iotdeviceadvisor:GetSuiteDefinition` permissões.  

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: iotdeviceadvisor:GetSuiteDefinition on resource: MySuiteDefinition
```
Nesse caso, a política do usuário `mateojackson` deve ser atualizada para permitir o acesso ao recurso *`MySuiteDefinition`* usando a ação `iotdeviceadvisor:GetSuiteDefinition`.

## Não estou autorizado a realizar iam: PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Se você receber uma mensagem de erro informando que não está autorizado a executar a ação `iam:PassRole`, as suas políticas devem ser atualizadas para permitir que você passe uma função para o AWS IoT.

Alguns Serviços da AWS permitem que você passe uma função existente para esse serviço em vez de criar uma nova função de serviço ou uma função vinculada ao serviço. Para fazê-lo, você deve ter permissões para passar o perfil para o serviço.

O exemplo de erro a seguir ocorre quando uma usuária do IAM chamada `marymajor` tenta utilizar o console para executar uma ação no AWS IoT. No entanto, a ação exige que o serviço tenha permissões concedidas por um perfil de serviço. Mary não tem permissões para passar o perfil para o serviço.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

Nesse caso, as políticas de Mary devem ser atualizadas para permitir que ela realize a ação `iam:PassRole`.

Se precisar de ajuda, entre em contato com seu AWS administrador. Seu administrador é a pessoa que forneceu suas credenciais de login.

## Quero permitir que pessoas fora da minha Conta da AWS acessem meus AWS IoT recursos
<a name="security_iam_troubleshoot-cross-account-access"></a>

É possível criar um perfil que os usuários de outras contas ou pessoas fora da organização podem usar para acessar seus recursos. É possível especificar quem é confiável para assumir o perfil. Para serviços que oferecem suporte a políticas baseadas em recursos ou listas de controle de acesso (ACLs), você pode usar essas políticas para conceder às pessoas acesso aos seus recursos.

Para saber mais, consulte:
+ Para saber se é AWS IoT compatível com esses recursos, consulte[Como AWS IoT funciona com o IAM](security_iam_service-with-iam.md).
+ Para saber como fornecer acesso aos seus recursos em todos os Contas da AWS que você possui, consulte Como [fornecer acesso a um usuário do IAM em outro Conta da AWS que você possui](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) no *Guia do usuário do IAM*.
+ Para saber como fornecer acesso aos seus recursos a terceiros Contas da AWS, consulte Como [fornecer acesso Contas da AWS a terceiros](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) no *Guia do usuário do IAM*.
+ Para saber como conceder acesso por meio da federação de identidades, consulte [Conceder acesso a usuários autenticados externamente (federação de identidades)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) no *Guia do usuário do IAM*.
+ Para saber a diferença entre perfis e políticas baseadas em recurso para acesso entre contas, consulte [Acesso a recursos entre contas no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) no *Guia do usuário do IAM*.