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.
Configuración básica
Descripción general
Para desarrollar correctamente aplicaciones a las que se acceda Servicios de AWS mediante el AWS SDK para Kotlin, se deben cumplir los siguientes requisitos.
-
Debe poder iniciar sesión en el portal de acceso a AWS disponible en el AWS IAM Identity Center.
-
Los permisos de la función de IAM configurada para el SDK deben permitir el acceso a los Servicios de AWS que requiera la aplicación. Los permisos asociados a la política PowerUserAccess AWS gestionada son suficientes para la mayoría de las necesidades de desarrollo.
-
Un entorno de desarrollo con los siguientes elementos:
-
Archivos de configuración compartidos que se configuran al menos de una de las siguientes maneras:
-
El archivo
config
contiene la configuración de inicio de sesión único del IAM Identity Center para que el SDK pueda obtener las credenciales AWS . -
El archivo
credentials
contiene credenciales temporales.
-
-
Una instalación de Java 8 o posterior.
-
Una herramienta de automatización de compilaciones, como Maven
o Gradle . -
Un editor de texto para trabajar con código.
-
(Opcional, pero recomendado) Un IDE (entorno de desarrollo integrado) como IntelliJ
IDEA o Eclipse. Cuando utilizas un IDE, también puedes integrarlo AWS Toolkit para trabajar con él más fácilmente. Servicios de AWS Los AWS Toolkit para IntelliJy AWS Toolkit for Eclipseson dos kits de herramientas que puede utilizar.
-
-
Una sesión activa en el portal de AWS acceso cuando esté listo para ejecutar la aplicación. Se utiliza AWS Command Line Interface para iniciar el proceso de inicio de sesión en el portal de AWS acceso del Centro de Identidad de IAM.
importante
En las instrucciones de esta sección de configuración se supone que usted o su organización utilizan el Centro de identidad de IAM. Si su organización utiliza un proveedor de identidad externo que funciona de forma independiente del Centro de Identidad de IAM, averigüe cómo puede obtener credenciales temporales para el SDK para que las utilice Kotlin. Sigue estas instrucciones para añadir credenciales temporales al ~/.aws/credentials
archivo.
Si su proveedor de identidad agrega credenciales temporales automáticamente al archivo ~/.aws/credentials
, asegúrese de que el nombre del perfil sea [default]
para que no necesite proporcionarlo al SDK o AWS CLI.
Posibilidad de iniciar sesión en el portal de AWS acceso
El portal de AWS acceso es la ubicación web en la que se inicia sesión manualmente en el Centro de Identidad de IAM. El formato de la URL es d-xxxxxxxxxx.awsapps.com/start
o
. your_subdomain
.awsapps.com/start
Si no está familiarizado con el portal de AWS acceso, siga las instrucciones sobre el acceso a las cuentas que figuran en el tema de autenticación del IAM Identity Center de la Guía de referencia sobre herramientas AWS SDKs y herramientas.
Configurar el acceso de inicio de sesión único para el SDK
Tras completar el paso 2 de la sección de acceso mediante programación para que el SDK utilice la autenticación del Centro de identidades de IAM, el sistema debe contener los siguientes elementos.
-
El AWS CLI, que se utiliza para iniciar una sesión en el portal de AWS acceso antes de ejecutar la aplicación.
-
Un archivo
~/.aws/config
que contiene un perfil predeterminado. El SDK para Kotlin usa la configuración del proveedor de tokens de SSO del perfil para adquirir las credenciales antes de enviar las solicitudes a ellas. AWS El valorsso_role_name
, que es un rol de IAM conectado a un conjunto de permisos del Centro de identidades de IAM, debería permitir el acceso a los Servicios de AWS utilizados en la aplicación.El siguiente archivo
config
de ejemplo muestra la configuración de un perfil predeterminado con el proveedor de token de SSO. La configuraciónsso_session
del perfil hace referencia a la secciónsso-session
nombrada. Lasso-session
sección contiene los ajustes para iniciar una sesión en el portal de AWS acceso.[default] sso_session = my-sso sso_account_id =
111122223333
sso_role_name =SampleRole
region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url =https://provided-domain.awsapps.com/start
sso_registration_scopes = sso:account:access
Para obtener más información sobre los ajustes utilizados en la configuración del proveedor de token del SSO, consulte la sección Configuración del proveedor del token del SSO en la Guía de referencia de herramientas AWS SDKs y herramientas.
Si tu entorno de desarrollo no está configurado para el acceso mediante programación como se ha mostrado anteriormente, sigue el paso 2 de la SDKs guía de referencia.
Inicie sesión con AWS CLI
Antes de ejecutar una aplicación que acceda Servicios de AWS, necesita una sesión activa en el portal de AWS acceso para que el SDK utilice la autenticación del IAM Identity Center para resolver las credenciales. Ejecute el siguiente comando AWS CLI para iniciar sesión en el portal de AWS acceso.
aws sso login
Como tiene una configuración de perfil predeterminada, no necesita llamar al comando con una --profile
opción. Si la configuración de tu proveedor de token de SSO usa un perfil con nombre, el comando esaws sso login --profile
.named-profile
Para comprobar si ya tiene una sesión activa, ejecute el siguiente comando de la AWS CLI .
aws sts get-caller-identity
La respuesta a este comando debe indicar la cuenta y el conjunto de permisos del Centro de identidades de IAM configurados en el archivo compartido config
.
nota
Si ya tiene una sesión activa en el portal de acceso a AWS y ejecuta aws sso
login
, no tendrá que proporcionar credenciales.
Sin embargo, verá un cuadro de diálogo en el que se solicita permiso para que botocore
acceda a su información. botocore
es la base de la AWS CLI .
Selecciona Permitir para autorizar el acceso a tu información para el SDK AWS CLI y para Kotlin.
Instalar Java y una herramienta de compilación
Su entorno de desarrollo debe contar con lo siguiente:
-
JDK 8 o posterior. AWS SDK para Kotlin Funciona con el kit de desarrollo Java SE de Oracle
y con distribuciones del Open Java Development Kit (OpenJDK) Amazon Corretto , como Red Hat OpenJDK y JDK. AdoptOpen -
Una herramienta de compilación o IDE compatible con Maven Central, como Apache Maven, Gradle o IntelliJ.
-
Para obtener información sobre cómo instalar y utilizar Maven, consulte http://maven.apache.org/
. -
Para obtener información sobre cómo instalar y usar Gradle, consulte https://gradle.org/
. -
Para obtener información sobre cómo instalar y utilizar IntelliJ IDEA, consulte. https://www.jetbrains.com/idea/
-
Utilizar credenciales temporales
Como alternativa a configurar el acceso de inicio de sesión único al IAM Identity Center para el SDK, puede configurar su entorno de desarrollo con credenciales temporales.
Configurar un archivo local de credenciales para las credenciales temporales
-
En el archivo de credenciales, pegue el siguiente texto de marcador de posición hasta que pegue las credenciales temporales que funcionen:
[default] aws_access_key_id=
<value from AWS access portal>
aws_secret_access_key=<value from AWS access portal>
aws_session_token=<value from AWS access portal>
-
Guarde el archivo. El archivo
~/.aws/credentials
debería existir ahora en su sistema de desarrollo local. Este archivo contiene el perfil [predeterminado] que usa el SDK para Kotlin si no se especifica un perfil con nombre específico. -
Siga estas instrucciones que aparecen en el apartado Actualización manual de credenciales para copiar las credenciales de los roles de IAM del portal de AWS acceso.
-
Para el paso 4 de las instrucciones vinculadas, elija el nombre del rol de IAM que le concede acceso para sus necesidades de desarrollo. Este rol suele tener un nombre similar PowerUserAccessal de Desarrollador.
-
Para el paso 7, seleccione la opción Agregar manualmente un perfil a su archivo de credenciales de AWS y copie el contenido.
-
-
Pegue las credenciales copiadas en su archivo
credentials
local y elimine el nombre del perfil generado. Su archivo debería parecerse a lo siguiente:[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token=IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
-
Guarde el archivo
credentials
.
El SDK de Kotlin accederá a estas credenciales temporales cuando cree un cliente de servicio y las utilice para cada solicitud. La configuración del rol de IAM elegido en el paso 5a determina el tiempo de validez de las credenciales temporales. La duración máxima es de doce horas.
Cuando las credenciales temporales caduquen, repita los pasos del 4 al 7.