Configurar una cuenta AWS IAM para desplegar nuestras aplicaciones con ASP.NET
Tags: aws, dotnet, cloud, beginners
Published: 2022-01-13 21:59:14

Amazon Web Services, también conocida como AWS, es un conjunto de herramientas y servicios de cloud computing de Amazon. En este primer artículo, nuestro objetivo será crear una cuenta IAM (AWS Identity and Access Management), enfocada en el despliegue de aplicaciones web ASP.NET. En este sentido, este será el proceso: 

- Obtener una cuenta de capa gratuita de AWS
- Configurar una cuenta IAM
- Establecer las políticas para un usuario determinado en IAM

## 1. Registrarse para obtener una cuenta de capa gratuita de AWS

AWS dispone de un nivel gratuito para probar y consumir servicios durante 12 meses. En la siguiente dirección podemos realizar el registro correspondiente: [aws.amazon.com/free](https://aws.amazon.com/free).

Este es un proceso bastante sencillo, sin embargo, hay que tener en cuenta que hay que proporcionar los datos de nuestra tarjeta de crédito/debito para poder activarla.  

## 2. Configurar una cuenta IAM

AWS _Identity and Access Management_ (IAM) proporciona un control de acceso detallado en todo AWS. Con IAM, podemos especificar quién puede acceder a qué servicios y recursos, y en qué condiciones. Con las políticas de IAM, también podemos administrar los permisos de otros usuarios y de sistemas que tengamos implementados para garantizar los permisos de privilegios mínimos.

Muy bien, suponiendo que ya nos hemos creado una cuenta raíz, o en caso de que ya tengamos alguna, al iniciar sesión veremos la consola de AWS:

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5qwxj3f845iqg6z684e3.png)

Al ingresar a este servicio IAM, nos dirigiremos al apartado Users dentro del menú de opciones y seleccionaremos Add User. El objetivo es crear un usuario, el cual se utilizará para asociar los servicios de AWS que se van a utilizar, ya que no es recomendable proporcionar nuestros privilegios de acceso de usuario raíz. 

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h3vk2g1orymii71s3t87.png)

El formulario para agregar a un nuevo usuario se verá de esta manera:

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7x67gyhfl7ki9r78l9l7.png)

Una vez que se haya terminado con la creación del nuevo usuario de IAM, es necesario descargar las credenciales. Estas las podremos utilizar más adelante para realizar una configuración de AWS desde Visual Studio por ejemplo. 

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/put010of4ls7pwvqdp26.png)

Nota: es muy importante mantener este archivo CSV en un lugar seguro, ya que se encuentran allí las credenciales de acceso. 

## 3. Establecer las políticas del usuario

Dependiendo de nuestro objetivo, nosotros podemos proporcionar los permisos de acceso y uso de los servicios de AWS para nuestros usuarios. Supongamos que en este caso queremos desplegar nuestras aplicaciones con ASP.NET Core desde Visual Studio hacia AWS, para esto nuestro nuevo usuario IAM necesita poder acceder a ciertos servicios de AWS. En este caso, nos dirigiremos al usuario en cuestión dentro de IAM en AWS y seleccionaremos la opción `Add inline policy`. 


![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5w6w00f7ch8nrhpjpf5g.png)

Luego, realizaremos este proceso para cada uno de los siguientes servicios, los cuales serán de utilidad para poder desplegar nuestras aplicaciones web ASP.NET:

- Elastic Beanstalk
- EC2
- S3
- CloudFormation

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vl1h4b5ck84jfy9kfxyo.png)

Después de agregar cada uno de los servicios, asignaremos un nombre para esta política y la guardaremos. Al final tendremos algo como esto: 


![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/28njfw2xm8ga3hw3ywyi.png)

##**¡Gracias por leer!**

Con este proceso, nuestro IAM estará creado, y las políticas estarán establecidas. En próximos artículos revisaremos como acceder a AWS desde Visual Studio 2019 gracias a esta configuración. 

Si tienes alguna pregunta o alguna idea en mente, será un gusto poder estar en comunicación y juntos intercambiar conocimientos entre sí.

¡Nos vemos en [Twitter](https://twitter.com/esDanielGomez)! O si gustas también puedes escribirme por otros medios: [esDanielGomez.com](https://esdanielgomez.com).