Usando IAM localmente em um dispositivo da família Snow - AWS Snowball Edge Guia do desenvolvedor

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á.

Usando IAM localmente em um dispositivo da família Snow

AWS Identity and Access Management (IAM) ajuda você a controlar com segurança o acesso aos AWS recursos que são executados em seu AWS Snowball Edge dispositivo. Você usa IAM para controlar quem está autenticado (conectado) e autorizado (tem permissões) a usar os recursos.

IAMé suportado localmente em seu dispositivo. Você pode usar o IAM serviço local para criar novos usuários e anexar IAM políticas a eles. É possível usar essas políticas para permitir o acesso necessário para realizar as tarefas atribuídas. Por exemplo, você pode dar a um usuário a capacidade de transferir dados, mas limitar sua capacidade de criar novas instâncias EC2 compatíveis com a Amazon.

Além disso, você pode criar credenciais locais baseadas em sessão usando AWS Security Token Service (AWS STS) no seu dispositivo. Para obter informações sobre o IAM serviço, consulte Introdução no Guia do IAM usuário.

As credenciais raiz do seu dispositivo não podem ser desativadas e você não pode usar políticas em sua conta para negar explicitamente o acesso ao usuário Conta da AWS raiz. Recomendamos que você proteja suas chaves de acesso de usuário root e crie credenciais de IAM usuário para a interação diária com seu dispositivo.

Importante

A documentação nesta seção se aplica ao uso IAM local em um dispositivo AWS Snowball Edge. Para obter informações sobre o uso IAM no Nuvem AWS, consulteIdentity and Access Management em AWS Snowball.

Para que AWS os serviços funcionem corretamente em um Snowball Edge, você deve permitir as portas para os serviços. Para obter detalhes, consulte Requisitos de porta para AWS serviços em um dispositivo da família Snow.

Usando as API operações AWS CLI e em um Snowball Edge

Ao usar as API operações AWS CLI ou para emitir IAM EC2 comandos do Amazon S3 e da Amazon no Snowball Edge, você deve especificar o region como "”. AWS STSsnow Você pode fazer isso usando aws configure ou dentro do próprio comando, como nos exemplos a seguir.

aws configure --profile abc AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: 1234567 Default region name [None]: snow Default output format [None]: json

Ou

aws iam list-users --profile snowballEdge --endpoint http://192.0.2.0:6078 --region snow
nota

O ID da chave de acesso e a chave secreta de acesso que são usados localmente no AWS Snowball Edge não podem ser trocados com as chaves no Nuvem AWS.

Lista de IAM AWS CLI comandos compatíveis em um Snowball Edge

Veja a seguir uma descrição do subconjunto de AWS CLI comandos e opções compatíveis com IAM dispositivos Snowball Edge. Se um comando ou opção não estiver listado abaixo, não é compatível. Os parâmetros não compatíveis com comandos são anotados na descrição.

  • attach-role-policy— Anexa a política gerenciada especificada à IAM função especificada.

  • attach-user-policy— Anexa a política gerenciada especificada ao usuário especificado.

  • create-access-key— Cria uma nova chave de acesso IAM secreta local e o ID da chave de AWS acesso correspondente para o usuário especificado.

  • create-policy — Cria uma nova política IAM gerenciada para seu dispositivo.

  • create-role — Cria uma nova IAM função local para seu dispositivo. Os seguintes parâmetros não são compatíveis:

    • Tags

    • PermissionsBoundary

  • create-user — Cria um novo IAM usuário local para seu dispositivo. Os seguintes parâmetros não são compatíveis:

    • Tags

    • PermissionsBoundary

  • delete-access-key— Exclui uma nova chave de acesso IAM secreta local e o ID da chave de AWS acesso correspondente para o usuário especificado.

  • delete-policy: exclui a política gerenciada especificada.

  • delete-role: exclui o perfil especificado.

  • delete-user: exclui o usuário especificado.

  • detach-role-policy— Remove a política gerenciada especificada da função especificada.

  • detach-user-policy— Remove a política gerenciada especificada do usuário especificado.

  • get-policy — recupera informações sobre a política gerenciada especificada, incluindo a versão padrão da política e o número total de IAM usuários, grupos e funções locais aos quais a política está anexada.

  • get-policy-version— recupera informações sobre a versão especificada da política gerenciada especificada, incluindo o documento da política.

  • get-role — recupera informações sobre a função especificada, incluindo o caminho da função, GUIDARN, e a política de confiança da função que concede permissão para assumir a função.

  • get-user — recupera informações sobre o IAM usuário especificado, incluindo a data de criação do usuário, o caminho, o ID exclusivo e. ARN

  • list-access-keys— Retorna informações sobre a chave de acesso IDs associada ao IAM usuário especificado.

  • list-attached-role-policies— Lista todas as políticas gerenciadas que estão anexadas à IAM função especificada.

  • list-attached-user-policies— Lista todas as políticas gerenciadas que estão anexadas ao IAM usuário especificado.

  • list-entities-for-policy— Lista todos os IAM usuários, grupos e funções locais aos quais a política gerenciada especificada está anexada.

    • --EntityFilter: somente os valores user e role são compatíveis.

  • list-policies: lista todas as políticas gerenciadas que estão disponíveis na Conta da AWS local. O seguinte parâmetro não é compatível:

    • --PolicyUsageFilter

  • list-roles — Lista as IAM funções locais que têm o prefixo de caminho especificado.

  • list-users — Lista os IAM usuários que têm o prefixo de caminho especificado.

  • update-access-key— Altera o status da chave de acesso especificada de Ativa para Inativa ou vice-versa.

  • update-assume-role-policy— Atualiza a política que concede a uma IAM entidade permissão para assumir uma função.

  • update-role: atualiza a descrição ou a configuração da duração máxima da sessão de um perfil.

  • update-user — Atualiza o nome e/ou o caminho do usuário especificadoIAM.

IAMAPIOperações suportadas em dispositivos da família Snow

A seguir estão as IAM API operações que você pode usar com um Snowball Edge, com links para suas descrições na IAM API Referência.

  • AttachRolePolicy— Anexa a política gerenciada especificada à IAM função especificada.

  • AttachUserPolicy— Anexa a política gerenciada especificada ao usuário especificado.

  • CreateAccessKey— Cria uma nova chave de acesso IAM secreta local e o ID da chave de AWS acesso correspondente para o usuário especificado.

  • CreatePolicy— Cria uma nova política IAM gerenciada para o seu dispositivo.

  • CreateRole— Cria uma nova IAM função local para o seu dispositivo.

  • CreateUser— Cria um novo IAM usuário local para o seu dispositivo.

    Os seguintes parâmetros não são compatíveis:

    • Tags

    • PermissionsBoundary

  • DeleteAccessKey— Exclui a chave de acesso especificada.

  • DeletePolicy— Exclui a política gerenciada especificada.

  • DeleteRole— Exclui a função especificada.

  • DeleteUser— Exclui o usuário especificado.

  • DetachRolePolicy— Remove a política gerenciada especificada da função especificada.

  • DetachUserPolicy— Remove a política gerenciada especificada do usuário especificado.

  • GetPolicy— recupera informações sobre a política gerenciada especificada, incluindo a versão padrão da política e o número total de IAM usuários, grupos e funções locais aos quais a política está vinculada.

  • GetPolicyVersion— recupera informações sobre a versão especificada da política gerenciada especificada, incluindo o documento da política.

  • GetRole— recupera informações sobre a função especificada, incluindo o caminho da função, GUIDARN, e a política de confiança da função que concede permissão para assumir a função.

  • GetUser— Recupera informações sobre o IAM usuário especificado, incluindo a data de criação do usuário, o caminho, o ID exclusivo e. ARN

  • ListAccessKeys— Retorna informações sobre a chave de acesso IDs associada ao IAM usuário especificado.

  • ListAttachedRolePolicies— Lista todas as políticas gerenciadas que estão anexadas à IAM função especificada.

  • ListAttachedUserPolicies— Lista todas as políticas gerenciadas que estão anexadas ao IAM usuário especificado.

  • ListEntitiesForPolicy— Recupera informações sobre o IAM usuário especificado, incluindo a data de criação do usuário, o caminho, o ID exclusivo e. ARN

    • --EntityFilter: somente os valores user e role são compatíveis.

  • ListPolicies— Lista todas as políticas gerenciadas que estão disponíveis em seu local Conta da AWS. O seguinte parâmetro não é compatível:

    • --PolicyUsageFilter

  • ListRoles— Lista as IAM funções locais que têm o prefixo de caminho especificado.

  • ListUsers— Lista os IAM usuários que têm o prefixo de caminho especificado.

  • UpdateAccessKey— Altera o status da chave de acesso especificada de Ativa para Inativa ou vice-versa.

  • UpdateAssumeRolePolicy— Atualiza a política que concede a uma IAM entidade permissão para assumir uma função.

  • UpdateRole— Atualiza a descrição ou a configuração de duração máxima da sessão de uma função.

  • UpdateUser— Atualiza o nome e/ou o caminho do IAM usuário especificado.

Versão e gramática da IAM política suportadas nos dispositivos da família Snow

A seguir está a versão de IAM suporte local 2012-10-17 da IAM política e um subconjunto da gramática da política.

Tipo de política Gramática compatível
Políticas baseadas em identidade (política de usuário/função) Effect, "Action" e "Resource"
nota

IAMO Local não oferece suporte a "Condition“," NotAction “,NotResource" "e"Principal”.

Políticas baseadas em recursos (política de confiança da função) Effect, "Action" e "Principal"
nota

Para o diretor, somente Conta da AWS ID ou ID principal é permitido.

IAMexemplos de políticas em dispositivos da família Snow

nota

AWS Identity and Access Management (IAM) os usuários precisam de "snowballdevice:*" permissões para usar o AWS OpsHub for Snow Family aplicativo para gerenciar dispositivos da família Snow.

Veja a seguir exemplos de politicas que concedem permissões para um dispositivo Snowball Edge.

Permitindo a GetUser chamada para um usuário de amostra em um dispositivo da família Snow por meio do IAM API

Use a política a seguir para permitir a GetUser chamada para um usuário de amostra por meio do IAMAPI.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "iam:GetUser", "Resource": "arn:aws:iam:::user/example-user" } ] }

Permitindo acesso total ao Amazon S3 API em um dispositivo da família Snow

Use a política a seguir para permitir acesso total ao Amazon S3API.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "s3:*", "Resource": "*" } ] }

Permitindo acesso de leitura e gravação a um bucket Amazon S3 em um dispositivo da família Snow

Use a política a seguir para permitir o acesso de leitura e gravação a um bucket específico.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ListObjectsInBucket", "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::bucket-name" }, { "Sid": "AllObjectActions", "Effect": "Allow", "Action": "s3:*Object", "Resource": "arn:aws:s3:::bucket-name/*" } ] }

Permitindo listar, obter e colocar acesso a um bucket Amazon S3 em um dispositivo da família Snow

Use a política a seguir para permitir o acesso List, Get e Put a um bucket específico do S3.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:List*" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }

Permitindo acesso total à Amazon EC2 API em um dispositivo da família Snow

Use a política a seguir para permitir acesso total à AmazonEC2.

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

Permitindo acesso para iniciar e interromper instâncias EC2 compatíveis com a Amazon em um dispositivo da família Snow

Use a política a seguir para permitir o acesso para iniciar e interromper EC2 instâncias da Amazon.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:StartInstances", "ec2:StopInstances" ], "Resource": "*" } ] }

Negando chamadas para DescribeLaunchTemplates , mas permitindo que todas as chamadas sejam feitas DescribeImages em um dispositivo Snow Family

Use a seguinte política para negar chamadas para DescribeLaunchTemplates, mas permitir todas as chamadas para DescribeImages.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "ec2:DescribeLaunchTemplates" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:DescribeImages" ], "Resource": "*" } ] }

Política para API chamadas em um dispositivo Snow Family

Lista todas as políticas gerenciadas que estão disponíveis no dispositivo Snow, incluindo suas próprias políticas gerenciadas definidas pelo cliente. Mais detalhes em list-policies.

aws iam list-policies --endpoint http://ip-address:6078 --profile snowballEdge --region snow { "Policies": [ { "PolicyName": "Administrator", "Description": "Root user admin policy for Account 123456789012", "CreateDate": "2020-03-04T17:44:59.412Z", "AttachmentCount": 1, "IsAttachable": true, "PolicyId": "policy-id", "DefaultVersionId": "v1", "Path": "/", "Arn": "arn:aws:iam::123456789012:policy/Administrator", "UpdateDate": "2020-03-04T19:10:45.620Z" } ] }

TrustPolicy exemplo em um dispositivo da família Snow

Uma política de confiança retorna um conjunto de credenciais de segurança temporárias que você pode usar para acessar AWS recursos aos quais você normalmente não teria acesso. Essas credenciais de segurança temporárias consistem em um ID de chave de acesso, uma chave de acesso secreta e um token de segurança. Normalmente, você usa AssumeRole na conta para acesso entre contas.

Veja a seguir um exemplo de política de confiança. Para obter mais informações sobre a política de confiança, consulte AssumeRolena AWS Security Token Service APIReferência.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::AccountId:root" //You can use the Principal ID instead of the account ID. ] }, "Action": [ "sts:AssumeRole" ] } ] }