

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
<a name="setup-basic-onetime-setup"></a>

## Descripción general de
<a name="setup-overview"></a>

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](#setup-awsaccount) disponible en el AWS IAM Identity Center.
+ Los [permisos de la función de IAM](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html) 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](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html) 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](#setup-sso-access) para que el SDK pueda obtener las credenciales AWS .
    + El archivo `credentials` contiene credenciales temporales.
  + Una [instalación de Java 8](#setup-envtools) o posterior.
  + Una [herramienta de automatización de compilaciones](#setup-envtools), como [Maven](https://maven.apache.org/download.cgi) o [Gradle](https://gradle.org/install/).
  + Un editor de texto para trabajar con código.
  + [(Opcional, pero recomendado) Un IDE (entorno de desarrollo integrado) como [IntelliJ](https://www.jetbrains.com/idea/download/#section=windows) IDEA o Eclipse.](https://www.eclipse.org/ide/)

    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 IntelliJ](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)y [AWS Toolkit for Eclipse](https://docs.aws.amazon.com/toolkit-for-eclipse/v1/user-guide/welcome.html)son 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](#setup-login-sso) 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
<a name="setup-awsaccount"></a>

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](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html) de la Guía de referencia sobre herramientas AWS SDKs y herramientas.

## Configurar el acceso de inicio de sesión único para el SDK
<a name="setup-sso-access"></a>

Tras completar el paso 2 de la [sección de acceso mediante programación](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html#idcGettingStarted) 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](#setup-login-sso) antes de ejecutar la aplicación.
+ Un archivo `~/.aws/config` que contiene un perfil [predeterminado](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html#file-format-profile). El SDK para Kotlin utiliza la configuración del proveedor de tokens de SSO del perfil para adquirir las credenciales antes de enviar las solicitudes a ellas. AWS El valor `sso_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ón `sso_session` del perfil hace referencia a la sección `sso-session` nombrada. La `sso-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](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html#sso-token-config) 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](https://docs.aws.amazon.com/sdkref/latest/guide/access-sso.html#idcGettingStarted).

## Inicie sesión con AWS CLI
<a name="setup-login-sso"></a>

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 es`aws 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
<a name="setup-envtools"></a>

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](https://www.oracle.com/java/technologies/javase-downloads.html) y con distribuciones del Open Java Development Kit (OpenJDK) [Amazon Corretto](https://aws.amazon.com/corretto/), como [Red Hat OpenJDK](https://developers.redhat.com/products/openjdk) y JDK. AdoptOpen](https://adoptopenjdk.net/)
+ 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/](http://maven.apache.org/).
  + Para obtener información sobre cómo instalar y usar Gradle, consulte [https://gradle.org/](https://gradle.org/).
  + Para obtener información sobre cómo instalar y utilizar IntelliJ IDEA, consulte. [https://www.jetbrains.com/idea/](https://www.jetbrains.com/idea/)

## Utilizar credenciales temporales
<a name="setup-use-temporary-creds"></a>

Como alternativa a [configurar el acceso de inicio de sesión único al IAM Identity Center](#setup-sso-access) para el SDK, puede configurar su entorno de desarrollo con credenciales temporales.

**Configurar un archivo local de credenciales para las credenciales temporales**

1. [Crear un archivo de credenciales compartido](https://docs.aws.amazon.com/sdkref/latest/guide/file-location.html).

1. 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>
   ```

1. Guarde el archivo. El archivo `~/.aws/credentials` debería existir ahora en su sistema de desarrollo local. Este archivo contiene el [perfil [predeterminado]](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html#file-format-profile) que usa el SDK para Kotlin si no se especifica un perfil con nombre específico. 

1. [Inicia sesión en el portal de AWS acceso](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosignin.html)

1. Siga estas instrucciones que aparecen en el apartado [Actualización manual de credenciales](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtogetcredentials.html#how-to-get-temp-credentials) para copiar las credenciales de los roles de IAM del portal de AWS acceso.

   1. 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 **PowerUserAccess**al de Desarrollador.**

   1. Para el paso 7, seleccione la opción **Agregar manualmente un perfil a su archivo de credenciales de AWS ** y copie el contenido.

1. 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
   ```

1. 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](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosessionduration.html). La duración máxima es de doce horas.

Cuando las credenciales temporales caduquen, repita los pasos del 4 al 7.