Llamar Servicios de AWS desde un entorno de AWS Cloud9 - AWS Cloud9

AWS Cloud9 ya no está disponible para nuevos clientes. Los clientes existentes de AWS Cloud9 pueden seguir utilizando el servicio con normalidad. Más información

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.

Llamar Servicios de AWS desde un entorno de AWS Cloud9

Puede llamar Servicios de AWS desde un entorno AWS Cloud9 de desarrollo. Por ejemplo, puede llevar a cabo las acciones siguientes:

  • Cargue y descargue datos en buckets de Amazon Simple Storage Service (Amazon S3).

  • Envía notificaciones de transmisión a través de los temas del Amazon Simple Notification Service (AmazonSNS).

  • Lea y escriba datos en bases de datos de Amazon DynamoDB (DynamoDB).

Puede llamar Servicios de AWS desde su entorno de varias maneras. Por ejemplo, puede usar el AWS Command Line Interface (AWS CLI) o el AWS CloudShell para ejecutar comandos desde una sesión de terminal. También puede llamar a los Servicios de AWS desde el código que ejecuta en su entorno. Puede hacerlo utilizando lenguajes AWS SDKs de programación como JavaScript, Python, Ruby, PHP, Go, y C++. Para obtener más información, consulte el AWS CLI ejemplo de aws-shell, la Guía del AWS Command Line Interface usuario y el. AWS SDKs

Cada vez que el AWS CLI AWS CloudShell, o su código llame a una Servicio de AWS AWS CLI AWS CloudShell, el o su código deberán proporcionar un conjunto de credenciales de AWS acceso junto con la llamada. Estas credenciales determinan si la persona que llama tiene los permisos adecuados para realizar la llamada. Si las credenciales no cubren los permisos adecuados, la llamada no se realiza correctamente.

Existen varias formas de proporcionar credenciales a un entorno. En la tabla siguiente se describen algunos enfoques.

Tipo de entorno Enfoque

EC2

Utilice credenciales temporales AWS administradas.

Recomendamos este enfoque para un EC2 entorno. AWS las credenciales temporales administradas administran las credenciales de AWS acceso en un EC2 entorno en su nombre y, al mismo tiempo, siguen las mejores prácticas de AWS seguridad.

Si utiliza un EC2 entorno, puede omitir el resto de este tema. Esto se debe a que las credenciales temporales AWS administradas ya están configuradas para usted en el entorno.

Para obtener más información, consulte Credenciales temporales administradas de AWS.

EC2

Adjunta un perfil de IAM instancia a la instancia.

Usa este enfoque solo si, por alguna razón, no puedes usar credenciales temporales AWS administradas. Al igual que las credenciales temporales AWS administradas, un perfil de instancia administra las credenciales de AWS acceso en tu nombre. Sin embargo, debes crear, gestionar y adjuntar tú mismo el perfil de la instancia a la EC2 instancia de Amazon.

Para ver instrucciones, consulte la sección sobre la creación y uso de un perfil de instancia para administrar credenciales temporales.

EC2o SSH

Guarde sus credenciales de AWS acceso permanente en el entorno.

Este enfoque es menos seguro que el uso de credenciales de AWS acceso temporales. Sin embargo, es el único enfoque compatible para un SSH entorno.

Para ver instrucciones, consulte la sección sobre creación y almacenamiento de credenciales de acceso permanentes en un entorno.

EC2o SSH

Inserta tus credenciales de AWS acceso permanente directamente en tu código.

Desaconsejamos este enfoque porque no sigue las mejores prácticas AWS de seguridad.

Dado que no se aconseja, no se cubre en este tema.

Creación y uso de un perfil de instancias para administrar credenciales temporales

nota

No puede utilizar este procedimiento para un entorno de AWS Cloud9 SSH desarrollo. En su lugar, pase a la sección Crear y almacenar las credenciales de acceso permanentes en un entorno.

Se recomienda utilizar credenciales temporales AWS administradas en lugar de un perfil de instancia. Sigue estas instrucciones solo si, por algún motivo, no puedes usar las credenciales temporales AWS administradas. Para obtener más información, consulte Credenciales temporales administradas de AWS.

Este procedimiento utiliza IAM Amazon EC2 para crear y adjuntar un perfil de IAM instancia a la EC2 instancia de Amazon que se conecta a su entorno. Este perfil de instancias administra las credenciales temporales en su nombre. En este procedimiento, se supone que ya ha creado un entorno en AWS Cloud9. Para crear un entorno, consulte Creación de un entorno.

Puede completar estas tareas con las EC2consolas IAM y Amazon o con la interfaz de línea de AWS comandos (AWS CLI).

Cree un perfil de instancia con la IAM consola

nota

Si ya tienes un IAM rol que contiene un perfil de instancia, pasa a Adjuntar un perfil de instancia a una instancia con Amazon EC2 Console.

  1. Inicie sesión en la IAM consola, en https://console.aws.amazon.com/iam.

    Para este paso, se recomienda iniciar sesión con credenciales de nivel de administrador de IAM en su Cuenta de AWS. Si no puede hacerlo, consulte con el administrador de la Cuenta de AWS .

  2. En la barra de navegación, seleccione Roles.

    nota

    No puedes usar la IAM consola para crear un perfil de instancia por sí solo. Debe crear un IAM rol que contenga un perfil de instancia.

  3. Elija Crear rol.

  4. En la página Seleccione el tipo de entidad de confianza, con la opción Servicio de AWSYa seleccionada, en Elija el servicio que utilizará este rol, elija EC2.

  5. En Seleccione su caso de uso, elija EC2.

  6. Elija Siguiente: permisos.

  7. En la página Adjuntar políticas de permisos, en la lista de políticas, selecciona la casilla situada junto a y AdministratorAccess, a continuación, selecciona Siguiente: revisar.

    nota

    La AdministratorAccesspolítica permite el acceso sin restricciones a todas AWS las acciones y recursos de tu Cuenta de AWS empresa. Utilícelo solo con fines de experimentación. Para obtener más información, consulta IAMlas políticas en la Guía del IAM usuario.

  8. En la página Review (Revisar), en Role Name (Nombre de rol), escriba un nombre para el rol (por ejemplo, my-demo-cloud9-instance-profile).

  9. Elija Crear rol.

Avance para adjuntar un perfil de instancia a una instancia con Amazon EC2 Console.

Crear un perfil de instancias con AWS CLI

nota

Si ya tiene un IAM rol que contiene un perfil de instancia, pase a Adjuntar un perfil de instancia a una instancia con el AWS CLI.

Para este tema, le recomendamos que configure el AWS CLI uso de credenciales de nivel de administrador en su. Cuenta de AWS Si no puede hacerlo, consulte con el administrador de la Cuenta de AWS .

nota

Si utilizas credenciales temporales AWS administradas, no puedes usar una sesión de terminal AWS Cloud9 IDE para ejecutar algunos o todos los comandos de esta sección. Para cumplir con las prácticas recomendadas de AWS seguridad, las credenciales temporales AWS administradas no permiten ejecutar algunos comandos. En su lugar, puede ejecutar esos comandos desde una instalación independiente de AWS Command Line Interface (AWS CLI).

  1. Defina una relación de confianza AWS para el IAM rol requerido del perfil de la instancia. Para hacerlo, cree y guarde un archivo con el contenido siguiente (por ejemplo, my-demo-cloud9-instance-profile-role-trust.json).

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Usando la línea de comandos o terminal, cambie al directorio en el que acaba de guardar este archivo.

  3. Crea un IAM rol para el perfil de la instancia. Para ello, ejecuta el IAM create-role comando. Cuando lo haga, especifique un nombre para la nueva IAM función (por ejemplo,my-demo-cloud9-instance-profile-role) y el nombre del archivo que acaba de guardar.

    aws iam create-role --role-name my-demo-cloud9-instance-profile-role --assume-role-policy-document file://my-demo-cloud9-instance-profile-role-trust.json
  4. Adjunta permisos de AWS acceso al IAM rol del perfil de la instancia. Para ello, ejecuta el IAM attach-role-policy comando. Especifique el nombre de la IAM función existente y el nombre del recurso de Amazon (ARN) de la política AWS gestionada a la que se denominaAdministratorAccess.

    aws iam attach-role-policy --role-name my-demo-cloud9-instance-profile-role --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
    nota

    La AdministratorAccesspolítica permite el acceso sin restricciones a todas AWS las acciones y recursos de su Cuenta de AWS empresa. Utilícelo solo con fines de experimentación. Para obtener más información, consulta IAMlas políticas en la Guía del IAM usuario.

  5. Cree el perfil de instancia. Para ello, ejecute el IAM create-instance-profile comando y especifique un nombre para el nuevo perfil de instancia (por ejemplo,my-demo-cloud9-instance-profile).

    aws iam create-instance-profile --instance-profile-name my-demo-cloud9-instance-profile
  6. Adjunta el IAM rol al perfil de la instancia. Para ello, ejecute el IAMadd-role-to-instance-profile, especificando los nombres del IAM rol y el perfil de instancia existentes.

    aws iam add-role-to-instance-profile --role-name my-demo-cloud9-instance-profile-role --instance-profile-name my-demo-cloud9-instance-profile

Diríjase a Crear un perfil de instancias con AWS CLI.

Adjunta un perfil de instancia a una instancia con la EC2 consola de Amazon

  1. Inicia sesión en la EC2 consola de Amazon, en https://console.aws.amazon.com/ec2.

    En este paso, le recomendamos que inicie sesión con las credenciales de nivel de administrador en su Cuenta de AWS. Si no puede hacerlo, consulte con el administrador de la Cuenta de AWS .

  2. En la barra de navegación, asegúrese de que el selector de regiones muestra la Región de AWS que coincide con la de su entorno. Por ejemplo, si creó el entorno en la región Este de EE. UU. (Ohio), elija US East (Ohio) (Este de EE. UU. [Ohio]) en el selector de regiones.

  3. Elija el enlace Running Instances (Ejecutar instancias) o, en el panel de navegación, expanda Instances (Instancias) y, a continuación, elija Instances (Instancias).

  4. En la lista de instancias, elija la instancia con el nombre que incluya el nombre de su entorno. Por ejemplo, si el nombre de su entorno esmy-demo-environment, elija la instancia con el nombre que lo incluye. my-demo-environment

  5. Elija Acciones, Seguridad y Modificar IAM rol.

    nota

    Aunque está adjuntando un rol a la instancia, el rol contiene un perfil de instancia.

  6. En la página Modificar IAM rol, en el IAMrol, elija el nombre del rol que identificó o que creó en el procedimiento anterior y, a continuación, elija Aplicar.

  7. De vuelta al entorno, utilice AWS CLI para ejecutar el aws configure comando o AWS CloudShell para ejecutar el configure comando. No especifique ningún valor para AWS Access Key ID (ID de clave de acceso de AWS ) o AWS Secret Access Key (Clave de acceso secreta de AWS ). Presione Enter después de cada indicación. Como nombre de región predeterminado, especifique el Región de AWS más cercano a usted o la región en la que se encuentran sus AWS recursos. Por ejemplo, us-east-2 para la región EE. UU. Este (Ohio). Para obtener una lista de regiones, consulte Regiones de AWS y puntos de conexión en la Referencia general de Amazon Web Services. Opcionalmente, especifique un valor para Default output format (Formato de salida predeterminado) (por ejemplo, json).

Ahora puede empezar a llamar Servicios de AWS desde su entorno. Para usar el AWS CLI, el aws-shell, o ambos para llamar Servicios de AWS, consulte el ejemplo AWS CLI y aws-shell. Para llamar a los Servicios de AWS desde su código, consulte los demás tutoriales y ejemplos.

Adjunte un perfil de instancia a una instancia con AWS CLI

nota

Si utilizas credenciales temporales AWS administradas, no puedes usar una sesión de terminal AWS Cloud9 IDE para ejecutar algunos o todos los comandos de esta sección. Para cumplir con las prácticas recomendadas de AWS seguridad, las credenciales temporales AWS administradas no permiten ejecutar algunos comandos. En su lugar, puede ejecutar esos comandos desde una instalación independiente de AWS Command Line Interface (AWS CLI).

  1. Ejecuta el EC2 associate-iam-instance-profile comando Amazon. Especifique el nombre del perfil de la instancia y el ID y el Región de AWS ID de la EC2 instancia de Amazon para el entorno.

    aws ec2 associate-iam-instance-profile --iam-instance-profile Name=my-demo-cloud9-instance-profile --region us-east-2 --instance-id i-12a3b45678cdef9a0

    En el comando anterior, reemplace us-east-2 por el ID de la Región de AWS de la instancia y i-12a3b45678cdef9a0 por el ID de la instancia.

    Para obtener el ID de la instancia, puede, por ejemplo, ejecutar el EC2 describe-instances comando Amazon, especificando el nombre y el Región de AWS ID del entorno.

    aws ec2 describe-instances --region us-east-2 --filters Name=tag:Name,Values=*my-environment* --query "Reservations[*].Instances[*].InstanceId" --output text

    En el comando anterior, reemplace us-east-2 por el ID de la Región de AWS de la instancia y my-environment por el nombre del entorno.

  2. De vuelta al entorno, utilice el AWS CLI para ejecutar el aws configure comando o el aws-shell para ejecutar el configure comando. No especifique ningún valor para AWS Access Key ID (ID de clave de acceso de AWS ) o AWS Secret Access Key (Clave de acceso secreta de AWS ). Pulse Enter después de cada una de estas indicaciones. Como nombre de región predeterminado, especifique el Región de AWS más cercano a usted o la región en la que se encuentran sus AWS recursos. Por ejemplo, us-east-2 para la región EE. UU. Este (Ohio). Para ver una lista de las regiones, consulte Regiones y puntos de conexión de AWS en la Referencia general de Amazon Web Services. Opcionalmente, especifique un valor para Default output format (Formato de salida predeterminado) (por ejemplo, json).

Ahora puede empezar a llamar Servicios de AWS desde su entorno. Para usar el AWS CLI, el aws-shell, o ambos para llamar Servicios de AWS, consulte el ejemplo AWS CLI y aws-shell. Para llamar a los Servicios de AWS desde su código, consulte los demás tutoriales y ejemplos.

Crear y almacenar las credenciales de acceso permanente en un entorno

nota

Si utiliza un entorno de AWS Cloud9 EC2 desarrollo, le recomendamos que utilice credenciales temporales AWS administradas en lugar de credenciales de acceso AWS permanente. Para trabajar con credenciales temporales AWS administradas, consulteAWS credenciales temporales gestionadas.

En esta sección, se utiliza AWS Identity and Access Management (IAM) para generar un conjunto de credenciales permanentes. El AWS CLI, el aws-shell, o su código puede usar este conjunto de credenciales al llamar Servicios de AWS. Este conjunto incluye un identificador de clave de AWS acceso y una clave de acceso AWS secreta, que son exclusivas del usuario en su Cuenta de AWS. Si ya tiene un identificador de clave de AWS acceso y una clave de acceso AWS secreta, anote esas credenciales y, a continuación, pase a Guardar credenciales de acceso permanente en un entorno.

Puede crear un conjunto de credenciales permanentes con la IAMconsola o el AWS CLI.

Concesión de acceso programático

Los usuarios necesitan acceso programático si quieren interactuar con personas AWS ajenas a. AWS Management Console La forma de conceder el acceso programático depende del tipo de usuario que acceda. AWS

Para conceder acceso programático a los usuarios, elija una de las siguientes opciones.

¿Qué usuario necesita acceso programático? Para Mediante

Identidad del personal

(Los usuarios se administran en IAM Identity Center)

Utilice credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o AWS APIs.

Siga las instrucciones de la interfaz que desea utilizar:

IAM Utilice credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o AWS APIs. Siga las instrucciones de Uso de credenciales temporales con AWS recursos de la Guía del IAM usuario.
IAM

(No recomendado)

Utilice credenciales de larga duración para firmar las solicitudes programáticas dirigidas al AWS CLI, AWS SDKs, o AWS APIs.

Siga las instrucciones de la interfaz que desea utilizar:

Cree credenciales de acceso permanente con la AWS CLI

nota

Para esta sección, le recomendamos que configure el AWS CLI uso de credenciales de nivel de administrador en su. Cuenta de AWS Si no puede hacerlo, póngase en contacto con su administrador. Cuenta de AWS

nota

Si utilizas credenciales temporales AWS administradas, no puedes usar una sesión de terminal AWS Cloud9 IDE para ejecutar algunos o todos los comandos de esta sección. Para cumplir con las prácticas recomendadas de AWS seguridad, las credenciales temporales AWS administradas no permiten ejecutar algunos comandos. En su lugar, puede ejecutar esos comandos desde una instalación independiente de AWS Command Line Interface (AWS CLI).

Ejecute el IAM create-access-key comando para crear una nueva clave de AWS acceso y la clave de acceso AWS secreta correspondiente para el usuario.

aws iam create-access-key --user-name MyUser

En el comando anterior, reemplace MyUser por el nombre del usuario.

Guarde los valores AccessKeyId y SecretAccessKey que se muestran en un lugar seguro. Tras ejecutar el IAM create-access-key comando, esta es la única vez que podrá utilizar el AWS CLI para ver la clave de acceso AWS secreta del usuario. Para generar una nueva clave de acceso AWS secreta para el usuario más adelante, si es necesario, consulte Creación, modificación y visualización de claves de acceso (API,CLI, PowerShell) en la Guía del IAM usuario.

Almacenar las credenciales de acceso permanentes en un entorno

En este procedimiento, se utiliza AWS Cloud9 IDE para almacenar las credenciales de AWS acceso permanente en su entorno. Este procedimiento supone que ya ha creado un entorno en AWS Cloud9 el que ha abierto el entorno y lo está mostrando AWS Cloud9 IDE en su navegador web. Para obtener más información, consulte Creación de un entorno y Apertura de un entorno.

nota

El siguiente procedimiento muestra cómo almacenar las credenciales de acceso permanentes mediante las variables de entorno. Si tiene el AWS CLI o el aws-shell instalado en su entorno, puede utilizar el aws configurecomando para AWS CLI o el configurecomando para aws-shell para almacenar en su lugar sus credenciales de acceso permanente. Para obtener instrucciones, consulte Configuración rápida en la Guía del usuario de AWS Command Line Interface .

  1. Con su entorno abierto AWS Cloud9 IDE, inicie una nueva sesión de terminal, si aún no ha iniciado ninguna. Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window (Ventana), New Terminal (Nuevo terminal).

  2. Ejecute cada uno de los siguientes comandos, uno por uno, para definir las variables de entorno locales que representan las credenciales de acceso permanentes. En estos comandosAWS_ACCESS_KEY_ID:, introduzca después su ID de clave de AWS acceso. DespuésAWS_SECRET_ACCESS_KEY, introduce tu clave de acceso AWS secreta. DespuésAWS_DEFAULT_REGION_ID, introduce el Región de AWS identificador asociado al Región de AWS más cercano a ti (o al que prefieras Región de AWS). Para ver una lista de los identificadores disponibles, consulte Regiones de AWS y puntos de conexión en la Referencia general de Amazon Web Services. Por ejemplo, para la región Este de EE. UU. (Ohio), utilice us-east-2.

    export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_DEFAULT_REGION=
  3. Tenga en cuenta que las variables de entorno anteriores solo son válidas para la sesión de terminal actual. Para que estas variables de entorno estén disponibles en todas las sesiones de terminal, debe añadirlas al archivo de perfil de usuario de shell como variables de entorno de usuario, tal y como se indica a continuación.

    1. En la ventana Entorno delIDE, selecciona el icono con forma de engranaje y, a continuación, selecciona Mostrar la página de inicio en favoritos. Repita este paso y elija también Show Hidden Files (Mostrar archivos ocultos).

    2. Abra el archivo ~/.bashrc.

    3. Escriba el siguiente código al final del archivo. En estos comandosAWS_ACCESS_KEY_ID:, introduzca después el ID de su clave de AWS acceso. DespuésAWS_SECRET_ACCESS_KEY, introduce tu clave de acceso AWS secreta. DespuésAWS_DEFAULT_REGION_ID, introduce el Región de AWS identificador asociado al Región de AWS más cercano a ti (o al que prefieras Región de AWS). Para ver una lista de los identificadores disponibles, consulte Regiones de AWS y puntos de conexión en la Referencia general de Amazon Web Services. Por ejemplo, para la región Este de EE. UU. (Ohio), utilice us-east-2.

      export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_DEFAULT_REGION=
    4. Guarde el archivo.

    5. Dé el origen del ~/.bashrc archivo para cargar estas nuevas variables de entorno.

      . ~/.bashrc

Ahora puede empezar a llamar Servicios de AWS desde su entorno. Para usar el AWS CLI o el aws-shell para llamar Servicios de AWS, consulte el ejemplo AWS CLI y aws-shell. Para llamar a los Servicios de AWS desde su código, consulte los demás tutoriales y ejemplos.