Uso local de IAM - Guía para desarrolladores de AWS Snowball Edge

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso local de IAM

AWS Identity and Access Management(IAM) ayuda a controlar de forma segura el acceso aAWSrecursos que se ejecutan en tuAWS Snowball Edgedispositivo. Utilice IAM; para controlar quién está autenticado (ha iniciado sesión) y autorizado (tiene permisos) para utilizar recursos.

El dispositivo es compatible localmente en su dispositivo. Puede utilizar servicio de IAM local para crear nuevos usuarios y adjuntar políticas de IAM a ellos. Puede utilizar estas políticas para permitir el acceso necesario para realizar tareas asignadas. Por ejemplo, puede dar a un usuario la capacidad de transferir datos, pero limitar su capacidad de crear nuevas instancias de Amazon EC2 de.

Además, puede crear credenciales locales basadas en sesión utilizando AWS Security Token Service (AWS STS) en su dispositivo. Para obtener información acerca del servicio de IAM, consulteIntroducciónen laIAM User Guide.

Las credenciales raíz de su dispositivo no se pueden deshabilitar y no puede utilizar las políticas de su cuenta para denegar explícitamente el acceso a laCuenta de AWSusuario raíz. Le recomendamos que proteja las claves de acceso de usuario raíz y cree credenciales de usuario de IAM para la interacción diaria con su dispositivo.

importante

La documentación de esta sección se aplica al uso de IAM localmente en unAWS SnowballDispositivo Edge. Para obtener información acerca del uso de IAM en laNube de AWS, consulteAdministración de identidad y acceso en AWS Snowball.

ParaAWSpara funcionar correctamente en Snowball Edge, debe permitir los puertos para los servicios de. Para obtener más información, consulte Puertos necesarios para utilizarAWSServicios deAWS Snowballdispositivo Edge.

Uso deAWS CLIy operaciones de la API en Snowball Edge

Cuando se utiliza laAWS CLIo operaciones API para emitir IAM,AWS STS, Amazon S3 y Amazon EC2 en Snowball Edge, debe especificar laregioncomo»snow». Para ello, puede usaraws configureo dentro del propio comando, como en los ejemplos siguientes.

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

O bien

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

El ID de clave de acceso y la clave secreta de acceso que se usan localmente enAWS SnowballEdge no se puede intercambiar con las teclas delNube de AWS.

Lista de IAM compatiblesAWS CLIComandos en un borde de Snowball

A continuación se muestra una descripción del subconjunto deAWS CLIlos comandos y las opciones de IAM compatibles con los dispositivos de Snowball Edge. Si un comando o una opción no aparece en la lista siguiente, no está admitido. Los parámetros no compatibles para los comandos se anotan en la descripción.

  • attach-role-policyAsocia la política administrada especificada al rol de IAM especificado a la función de IAM especificada

  • attach-user-policyAsocia la política administrada especificada al usuario especificado al usuario especificado.

  • create-access-key— Crea una nueva clave de acceso secreta de IAM y la correspondienteAWSID de clave de acceso para el usuario especificado.

  • create-policy: Crea una nueva política administrada de IAM para su dispositivo.

  • create-role: crea un nuevo rol de IAM local para su dispositivo. Los siguientes parámetros no son compatibles.

    • Tags

    • PermissionsBoundary

  • create-user: Crea un nuevo usuario de IAM local para su dispositivo. Los siguientes parámetros no son compatibles.

    • Tags

    • PermissionsBoundary

  • delete-access-key— Crea una nueva clave de acceso secreta de IAM y la correspondienteAWSID de clave de acceso para el usuario especificado.

  • delete-policy: Elimina la política administrada especificada.

  • delete-role: Elimina la función especificada.

  • delete-user: Elimina el usuario especificado.

  • detach-role-policyQuita la política administrada especificada de la función especificada del rol especificado.

  • detach-user-policyQuita la política administrada especificada del usuario especificado del usuario especificado.

  • get-policyRecupera información sobre la política administrada especificada, incluida la versión predeterminada de la política y el número total de usuarios, grupos y funciones de IAM locales a los que se asocia dicha política.

  • get-policy-versionRecupera información sobre la versión especificada de la política administrada especificada de la política administrada especificada de la política de.

  • get-roleRecupera información acerca del rol especificado, incluidos la ruta del rol, GUID, ARN y la política de confianza de la función que concede permiso para asumir la función.

  • get-userRecupera información acerca del usuario de IAM especificado, incluidos la fecha de creación, la ruta, el ID exclusivo y el ARN del usuario.

  • claves de acceso a listasDevuelve información sobre los ID de clave de acceso asociados al usuario de IAM especificado.

  • list-attached-role-policies: Enumera todas las políticas administradas que se asocian a la función de IAM especificada.

  • list-attached-user-policiesEnumera todas las políticas administradas que se asocian al usuario de IAM especificado.

  • list-entities-for-policyEnumera todos los usuarios, grupos y funciones de IAM locales a los que se asocia dicha política administrada especificada.

    • --EntityFilter: solo los valores user y role son compatibles.

  • list-policies— Enumera todas las políticas administradas que están disponibles en su localCuenta de AWS. El siguiente parámetro no es compatible.

    • --PolicyUsageFilter

  • list-roles: Enumera las funciones de IAM locales con el prefijo de ruta especificado.

  • list-users: Enumera los usuarios de IAM con el prefijo de ruta especificado.

  • clave de acceso de actualizaciónCambia el estado de la clave de acceso especificada de activa a inactiva o viceversa.

  • update-assume-role-policyActualiza la política que concede a una entidad de IAM permiso para asumir una función.

  • update-roleActualiza la descripción o configuración de duración de sesión máxima de una función.

  • update-userActualiza el nombre o la ruta del usuario de IAM especificado.

Operaciones de la API de IAM compatibles

A continuación se muestran las operaciones de la API de IAM que puede utilizar con un Snowball Edge, con enlaces a sus descripciones en la referencia de la API de IAM.

  • AttachRolePolicyAsocia la política administrada especificada al rol de IAM especificado a la función de IAM especificada

  • AttachUserPolicyAsocia la política administrada especificada al usuario especificado al usuario especificado.

  • CreateAccessKey— Crea una nueva clave de acceso secreta de IAM local y la correspondienteAWSID de clave de acceso para el usuario especificado.

  • CreatePolicy: Crea una nueva política administrada de IAM para su dispositivo.

  • CreateRole: crea un nuevo rol de IAM local para su dispositivo.

  • CreateUser: Crea un nuevo usuario de IAM local para su dispositivo.

    Los siguientes parámetros no son compatibles.

    • Tags

    • PermissionsBoundary

  • DeleteAccessKey: Elimina la clave de acceso especificada.

  • DeletePolicy: Elimina la política administrada especificada.

  • DeleteRole: Elimina la función especificada.

  • DeleteUser: Elimina el usuario especificado.

  • DetachRolePolicyQuita la política administrada especificada de la función especificada del rol especificado.

  • DetachUserPolicyQuita la política administrada especificada del usuario especificado del usuario especificado.

  • GetPolicyRecupera información sobre la política administrada especificada, incluida la versión predeterminada de la política y el número total de usuarios, grupos y funciones de IAM locales a los que se asocia dicha política.

  • GetPolicyVersionRecupera información sobre la versión especificada de la política administrada especificada de la política administrada especificada de la política de.

  • GetRoleRecupera información acerca del rol especificado, incluidos la ruta del rol, GUID, ARN y la política de confianza de la función que concede permiso para asumir la función.

  • GetUserRecupera información acerca del usuario de IAM especificado, incluidos la fecha de creación, la ruta, el ID exclusivo y el ARN del usuario.

  • ListAccessKeysDevuelve información sobre los ID de clave de acceso asociados al usuario de IAM especificado.

  • ListAttachedRolePolicies: Enumera todas las políticas administradas que se asocian a la función de IAM especificada.

  • ListAttachedUserPoliciesEnumera todas las políticas administradas que se asocian al usuario de IAM especificado.

  • ListEntitiesForPolicyRecupera información acerca del usuario de IAM especificado, incluidos la fecha de creación, la ruta, el ID exclusivo y el ARN del usuario.

    • --EntityFilter: solo los valores user y role son compatibles.

  • ListPolicies— Enumera todas las políticas administradas que están disponibles en su localCuenta de AWS. El siguiente parámetro no es compatible.

    • --PolicyUsageFilter

  • ListRoles: Enumera las funciones de IAM locales con el prefijo de ruta especificado.

  • ListUsers: Enumera los usuarios de IAM con el prefijo de ruta especificado.

  • UpdateAccessKeyCambia el estado de la clave de acceso especificada de activa a inactiva o viceversa.

  • UpdateAssumeRolePolicyActualiza la política que concede a una entidad de IAM permiso para asumir una función.

  • UpdateRoleActualiza la descripción o configuración de duración de sesión máxima de una función.

  • UpdateUserActualiza el nombre o la ruta del usuario de IAM especificado.

Compatibilidad de versión y gramática de la política de IAM

A continuación se presenta la versión local compatible de IAM 2012-10-17 de la política de IAM y un subconjunto de la gramática de políticas.

Tipo de política Gramática compatible
políticas basadas en la identidad (política de usuario/función) "Effect", "Action" y "Resource"
nota

IAM local no compatible con "Condition", "NotAction", "NotResource" y "Principal".

Políticas basadas en recursos (política de confianza de roles) "Effect", "Action" y "Principal"
nota

Para el director, soloCuenta de AWSEl ID o el ID principal está permitido.

Ejemplos de política de IAM

nota

AWS Identity and Access Management(IAM) necesitan los usuarios"snowballdevice:*"permisos para usar laAWS OpsHub for Snow Familyaplicaciónpara administrar dispositivos Snow Family.

A continuación se muestran ejemplos de políticas que conceden permisos a un dispositivo de Snowball Edge.

Ejemplo 1: Permite la llamada getUser para un usuario de ejemplo a través de la API de IAM

Utilice la siguiente política para permitir la llamada getUser para un usuario de ejemplo a través de la API de IAM.

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

Ejemplo 2: Permite el acceso completo a la API de Amazon S3

Utilice la siguiente política para permitir el acceso completo a la API de Amazon S3.

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

Ejemplo 3: Permite el acceso a la lectura y escritura de un determinado bucket de Amazon S3

Utilice la siguiente política para permitir el acceso de lectura y escritura a un 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/*" } ] }

Ejemplo 4: Permite el acceso de lista, obtener y poner a un bucket de Amazon S3 específico

Utilice la siguiente política para permitir el acceso de lista, obtener y poner a un bucket de S3 específico.

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

Ejemplo 5: Permite el acceso completo a la API de Amazon EC2

Utilice la siguiente política para permitir el acceso completo a Amazon EC2.

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

Ejemplo 6: Permite el acceso a iniciar y detener instancias de Amazon EC2

Utilice la siguiente política para permitir el acceso para iniciar y detener instancias de Amazon EC2 de.

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

Ejemplo 7: Rechaza llamadas para DescribeLaunchTemplates pero permite que todas las llamadas a DescribeImages

Utilice la siguiente política para denegar las llamadas DescribeLaunchTemplates pero permita todas las llamadas a DescribeImages.

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

Ejemplo8: Política de llamadas a la API

Enumera todas las políticas administradas que están disponibles en su dispositivo Snow, incluidas las políticas administradas definidas por su propio cliente. Más información enlist-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" } ] }

Ejemplo de TrustPolicy

Devuelve un conjunto de credenciales de seguridad temporales a las que puede utilizar para tener acceso.AWSrecursos a los que normalmente no tienes acceso. Las credenciales temporales incluyen un ID de clave de acceso, una clave de acceso secreta y un token de seguridad. Normalmente, se utiliza AssumeRole en la cuenta para el acceso entre cuentas.

A continuación, se muestra un ejemplo de una política de confianza. Para obtener más información acerca de la política de confianza, consulteAssumeRoleen laAWS Security Token ServiceReferencia de la API.

{ "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" ] } ] }