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 a los Servicios de AWS desde un entorno en AWS Cloud9
Puede llamar a los Servicios de AWS desde un entorno de desarrollo de AWS Cloud9. Por ejemplo, puede llevar a cabo las acciones siguientes:
-
Cargue y descargue datos en buckets de Amazon Simple Storage Service (Amazon S3).
-
Envíe notificaciones a través de temas de Amazon Simple Notification Service (Amazon SNS).
-
Lea y escriba datos en bases de datos de Amazon DynamoDB (DynamoDB).
Puede llamar a los Servicios de AWS desde su entorno de varias maneras. Por ejemplo, puede utilizar la 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. Para ello, puede utilizar SDK de AWS para lenguajes de programación como JavaScript, Python, Ruby, PHP, Go y C++. Para obtener más información, consulte la Muestra de AWS CLI y aws-shell , la Guía del usuario de AWS Command Line Interface y las instancias de AWS SDK
Cada vez que la AWS CLI, el AWS CloudShell o su código llaman a un Servicio de AWS, la AWS CLI, el AWS CloudShell o el código deben proporcionar un conjunto de credenciales de acceso a AWS 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 |
Use credenciales temporales administradas de AWS. Recomendamos este enfoque para un entorno de EC2. Las credenciales temporales administradas de AWS administran las credenciales de acceso de AWS en su entorno de EC2 en su nombre, al mismo tiempo que aplican las prácticas recomendadas de seguridad de AWS. Si utiliza un entorno de EC2, puede omitir el resto de este tema. Esto se debe a que las credenciales temporales administradas de AWS ya se han configurado automáticamente en el entorno. Para obtener más información, consulte Credenciales temporales administradas de AWS. |
EC2 |
Adjunte un perfil de instancias de IAM a la instancia. Solo utilice este enfoque si por alguna razón no puede utilizar las credenciales temporales administradas de AWS. Al igual que las credenciales temporales administradas de AWS, un perfil de instancias administra las credenciales de acceso de AWS en su nombre. Sin embargo, debe crear, administrar y adjuntar el perfil de instancias a la instancia de Amazon EC2 manualmente. Para ver instrucciones, consulte la sección sobre la creación y uso de un perfil de instancia para administrar credenciales temporales. |
EC2 o SSH |
Almacene las credenciales de acceso de AWS permanentes en el entorno. Este enfoque es menos seguro que el uso de credenciales de acceso de AWS temporales. Sin embargo, es el único enfoque admitido para un entorno de SSH. Para ver instrucciones, consulte la sección sobre creación y almacenamiento de credenciales de acceso permanentes en un entorno. |
EC2 o SSH |
Inserte las credenciales de acceso de AWS permanentes directamente en el código. No aconsejamos este enfoque, ya que no respeta las prácticas recomendadas de seguridad de AWS. 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 desarrollo de SSH de AWS Cloud9. En su lugar, pase a la sección Crear y almacenar las credenciales de acceso permanentes en un entorno.
Le recomendamos que utilice credenciales temporales administradas de AWS en lugar de un perfil de instancias. Siga estas instrucciones solo si por alguna razón no puede utilizar las credenciales temporales administradas de AWS. Para obtener más información, consulte Credenciales temporales administradas de AWS.
En este procedimiento se utilizan IAM y Amazon EC2 para crear y adjuntar un perfil de instancias de IAM a la instancia de Amazon EC2 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 consolas de IAM y de Amazon EC2 o la interfaz de línea de comandos de AWS (AWS CLI).
Crear un perfil de instancias con la consola de IAM
nota
Si ya tiene un rol de IAM que contiene un perfil de instancias, vaya a Adjuntar un perfil de instancias a una instancia con la consola de Amazon EC2.
-
Inicie sesión en la consola de IAM 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.
-
En la barra de navegación, seleccione Roles.
nota
No puede utilizar la consola de IAM para crear un perfil de instancias por sí sola. Debe crear un rol de IAM que tenga un perfil de instancias.
-
Elija Crear rol.
-
En la página Select type of trusted entity (Seleccionar tipo de entidad de confianza), con Servicio de AWS ya seleccionado, en Choose the service that will use this role (Elegir el servicio que utilizará este rol), elija EC2.
-
En Select your use case (Seleccionar su caso de uso), elija EC2.
-
Elija Siguiente: permisos.
-
En la página Attach permissions policies (Adjuntar políticas de permisos), en la lista de políticas, seleccione la casilla junto a AdministratorAccess y, a continuación, elija Next: Review (Siguiente: Revisión).
nota
La política AdministratorAccess permite el acceso sin restricciones a todas las acciones y recursos de AWS de su Cuenta de AWS. Utilícelo solo con fines de experimentación. Para obtener más información, consulte Políticas de IAM en la Guía del usuario de IAM.
-
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
). -
Seleccione Crear rol.
Avance hasta llegar a Asociar un perfil de instancia a una instancia con la consola de Amazon EC2.
Crear un perfil de instancias con AWS CLI
nota
Si ya tiene un rol de IAM que contiene un perfil de instancias, vaya a Adjuntar un perfil de instancias a una instancia con AWS CLI.
Para este tema le recomendamos que configure AWS CLI con las credenciales de nivel de administrador de su Cuenta de AWS. Si no puede hacerlo, consulte con el administrador de la Cuenta de AWS.
nota
Si usa credenciales temporales administradas de AWS, no puede usar una sesión del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar, puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line Interface (AWS CLI).
-
Defina una relación de confianza en AWS para el rol de IAM que requiere el perfil de instancias. 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" } ] }
-
Usando la línea de comandos o terminal, cambie al directorio en el que acaba de guardar este archivo.
-
Cree un rol de IAM para el perfil de instancias. Para ello, ejecute el comando
create-role
de IAM. Al hacerlo, especifique un nombre para el nuevo rol de IAM (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
-
Adjunte los permisos de acceso de AWS al rol de IAM del perfil de instancias. Para ello, ejecute el comando
attach-role-policy
de IAM. Especifique el nombre del rol de IAM existente y el nombre de recurso de Amazon (ARN) de la política administrada de AWS denominadaAdministratorAccess
.aws iam attach-role-policy --role-name my-demo-cloud9-instance-profile-role --policy-arn arn:aws:iam::aws:policy/AdministratorAccess
nota
La política AdministratorAccess permite el acceso sin restricciones a todas las acciones y recursos de AWS de su Cuenta de AWS. Utilícelo solo con fines de experimentación. Para obtener más información, consulte Políticas de IAM en la Guía del usuario de IAM.
-
Cree el perfil de instancia. Para ello, ejecute el comando
create-instance-profile
de IAM, especificando 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
-
Adjunte el rol de IAM al perfil de instancias. Para ello, ejecute el perfil
add-role-to-instance-profile
de IAM, y especifique los nombres del rol de IAM y el perfil de instancias 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.
Adjuntar un perfil de instancias a una instancia con la consola de Amazon EC2
-
Inicie sesión en la consola de Amazon EC2 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.
-
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.
-
Elija el enlace Running Instances (Ejecutar instancias) o, en el panel de navegación, expanda Instances (Instancias) y, a continuación, elija Instances (Instancias).
-
En la lista de instancias, elija la instancia con el nombre que incluya el nombre de su entorno. Por ejemplo, si el nombre del entorno es
my-demo-environment
, elija la instancia con el nombre que incluya my-demo-environment. -
Elija Actions (Acciones), Security (Seguridad), Modify IAM role (Modificar rol de IAM).
nota
Aunque está adjuntando un rol a la instancia, el rol contiene un perfil de instancia.
-
En la página Modify IAM role (Modificar rol de IAM), en IAM role (Rol de IAM), seleccione el nombre del rol que identificó o creó en el procedimiento anterior y haga clic en Apply (Aplicar).
-
De vuelta al entorno, use la AWS CLI para ejecutar el comando
aws configure
o el AWS CloudShell para ejecutar el comandoconfigure
. 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). PresioneEnter
después de cada indicación. En Default Region name (Nombre de región predeterminado), especifique la Región de AWS más cercana a usted o a la región en la que se encuentran sus recursos de AWS. 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
).
Ya puede comenzar a llamar a los Servicios de AWS desde su entorno. Para usar la AWS CLI, el aws-shell o ambos para llamar a los Servicios de AWS, consulte el ejemplo de la AWS CLI y el aws-shell. Para llamar a los Servicios de AWS desde su código, consulte los demás tutoriales y ejemplos.
Adjuntar un perfil de instancias a una instancia con AWS CLI
nota
Si usa credenciales temporales administradas de AWS, no puede usar una sesión del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar, puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line Interface (AWS CLI).
-
Ejecute el comando
associate-iam-instance-profile
de Amazon EC2. Especifique el nombre del perfil de instancia, el ID y el ID de la Región de AWS de la instancia de Amazon EC2 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 yi-12a3b45678cdef9a0
por el ID de la instancia.Para obtener el ID de la instancia, podría, por ejemplo, ejecutar el comando
describe-instances
de Amazon EC2, y especificar el nombre y el ID de la Región de AWS 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 ymy-environment
por el nombre del entorno. -
De vuelta al entorno, use la AWS CLI para ejecutar el comando
aws configure
o el aws-shell para ejecutar el comandoconfigure
. 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). PulseEnter
después de cada una de estas indicaciones. En Default Region name (Nombre de región predeterminado), especifique la Región de AWS más cercana a usted o a la región en la que se encuentran sus recursos de AWS. 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
).
Ya puede comenzar a llamar a los Servicios de AWS desde su entorno. Para usar la AWS CLI, el aws-shell o ambos para llamar a los Servicios de AWS, consulte el ejemplo de la AWS CLI y el 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 desarrollo de EC2 de AWS Cloud9, le recomendamos que utilice las credenciales temporales administradas de AWS en lugar de las credenciales de acceso permanente de AWS. Para trabajar con credenciales temporales administradas de AWS, consulte AWS credenciales temporales gestionadas.
En esta sección, se utiliza AWS Identity and Access Management (IAM) para generar un conjunto de credenciales permanentes. La AWS CLI, el aws-shell o su código pueden usar este conjunto de credenciales al llamar a Servicios de AWS. Este conjunto incluye un ID de clave de acceso de AWS y una clave de acceso secreta de AWS, que son únicos de su usuario en su Cuenta de AWS. Si ya tiene un ID de clave de acceso de AWS y una clave de acceso secreta de AWS, anote esas credenciales y pase directamente a Almacenar las credenciales de acceso permanentes en un entorno.
Puede crear un conjunto de credenciales permanentes con la consola de IAM o AWS CLI.
Concesión de acceso programático
Los usuarios necesitan acceso programático si desean interactuar con AWS fuera de la AWS Management Console. La forma de conceder el acceso programático depende del tipo de usuario que acceda a AWS.
Para conceder acceso programático a los usuarios, seleccione una de las siguientes opciones.
¿Qué usuario necesita acceso programático? | Para | Mediante |
---|---|---|
Identidad del personal (Usuarios administrados en el IAM Identity Center) |
Utilice credenciales temporales para firmar las solicitudes programáticas a la AWS CLI, los AWS SDK y las API de AWS. |
Siga las instrucciones de la interfaz que desea utilizar:
|
IAM | Utilice credenciales temporales para firmar las solicitudes programáticas a la AWS CLI, los AWS SDK y las API de AWS. | Siguiendo las instrucciones de Uso de credenciales temporales con recursos de AWS de la Guía del usuario de IAM. |
IAM | (No recomendado) Utilizar credenciales a largo plazo para firmar las solicitudes programáticas a la AWS CLI, los AWS SDK o las API de AWS. |
Siga las instrucciones de la interfaz que desea utilizar:
|
Crear credenciales de acceso permanentes con AWS CLI
nota
En esta sección, le recomendamos que configure AWS CLI con las credenciales de nivel de administrador de su Cuenta de AWS. Si no puede hacerlo, consulte con el administrador de la Cuenta de AWS.
nota
Si usa credenciales temporales administradas de AWS, no puede usar una sesión del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar, puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line Interface (AWS CLI).
Ejecute el comando create-access-key
de IAM para crear una clave de acceso de AWS nueva y la correspondiente clave de acceso secreta de AWS 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. Después de ejecutar el comando create-access-key
de IAM, esta es la única vez que puede usar AWS CLI para ver la clave de acceso secreta de AWS del usuario. Para generar una nueva clave de acceso secreta de AWS para que el usuario la use más adelante si es necesario, consulte Creación, modificación o consulta de las claves de acceso (API, CLI, PowerShell) en la Guía del usuario de IAM.
Almacenar las credenciales de acceso permanentes en un entorno
En este procedimiento, se utiliza el IDE de AWS Cloud9 para almacenar las credenciales de acceso permanentes de AWS en su entorno. En este procedimiento se presupone que ya ha creado un entorno en AWS Cloud9, que lo ha abierto y que se muestra el IDE de AWS Cloud9 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 la AWS CLI o el aws-shell instalado en el entorno, puede utilizar el comando aws configure
para la AWS CLI o el comando configure
para el aws-shell con el fin de almacenar las credenciales de acceso permanentes en su lugar. Para obtener instrucciones, consulte Configuración rápida en la Guía del usuario de AWS Command Line Interface.
-
Con el entorno abierto, en el IDE de AWS Cloud9, comience una nueva sesión del terminal si no hay ninguna iniciada. Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window (Ventana), New Terminal (Nuevo terminal).
-
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 comandos, después de
AWS_ACCESS_KEY_ID:
, escriba el ID de clave de acceso de AWS. Después deAWS_SECRET_ACCESS_KEY
, escriba la clave de acceso secreta de AWS. Después deAWS_DEFAULT_REGION_ID
, introduzca el identificador de la Región de AWS asociado a la Región de AWS más cercana a usted (o laRegión de AWS que prefiera). Para ver una lista de los identificadores disponibles, consulte Regiones de AWSy puntos de conexión en la Referencia general de Amazon Web Services. Por ejemplo, para la región Este de EE. UU. (Ohio), utiliceus-east-2
.export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_DEFAULT_REGION=
-
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.
-
En la ventana Environment (Entorno) del IDE, elija el icono del engranaje y, a continuación, elija Show Home in Favorites (Mostrar inicio en favoritos). Repita este paso y elija también Show Hidden Files (Mostrar archivos ocultos).
-
Abra el archivo
~/.bashrc
. -
Escriba el siguiente código al final del archivo. En estos comandos, después de
AWS_ACCESS_KEY_ID:
, escriba el ID de clave de acceso de AWS. Después deAWS_SECRET_ACCESS_KEY
, escriba la clave de acceso secreta de AWS. Después deAWS_DEFAULT_REGION_ID
, introduzca el identificador de la Región de AWS asociado a la Región de AWS más cercana a usted (o laRegión de AWS que prefiera). 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), utiliceus-east-2
.export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_DEFAULT_REGION=
-
Guarde el archivo.
-
Dé el origen del
~/.bashrc
archivo para cargar estas nuevas variables de entorno.. ~/.bashrc
-
Ya puede comenzar a llamar a los Servicios de AWS desde su entorno. Para usar la AWS CLI o el aws-shell para llamar a los Servicios de AWS, consulte el ejemplo de la AWS CLI y el aws-shell. Para llamar a los Servicios de AWS desde su código, consulte los demás tutoriales y ejemplos.