I. Tener NodeJs Intalado preferible 16 <
npm install -g @aws-amplify/cli
npm install
IV. Crear un usuario IAM en la consola de AWS con los permisos suficientes para utilizar los siguientes servicios:
CloudWatch, EventBridge, Lambda, Api Gateway, CloudFormation, Amplify, Cognito, SES o bien un usuario IAM con la politica de servicios de AdministratorAccess
Se debe crear una cuenta en la consola de AWS
- Ingresar al servicio IAM
- Ingresar Administración del acceso > Usuarios > Agregar Usuario
- Ingresar el nombre de Usuario y marcar la casilla Clave de acceso: acceso mediante programación
- Asociar la politica por ejemplo (AdministratorAccess) y Finalizar descargando el archivo CSV con las credenciales.
- Inicializar Amplify
amplify init
- Ingresar el nombre del proyecto en la consola: Ejemplo VigiACognito
Enter a name for the proyect VigiACognito
- Seleccionar la configuracion por defecto
Initialize the proyect with above configuration? Yes
- Seleccionar el metodo de autenticacion para inicializar el servicio con las credenciales del usuario IAM, y seleeccionar la region mas conveniente del listado https://aws.amazon.com/es/about-aws/global-infrastructure/regions_az , por ejemplo sa-east-1 para Sao Paolo
Select the authentication method you want to use: AWS access keys
- Añadir el servicio de cognito al finalizar
amplify add auth
- Seleccionar la configuracion por defecto
Do you want to use the default authentication and security configuration? Default configuration
- Seleccionar el metodo de login por Correo Electronico
How do you want users to be able to sign in ? Email
- Seleccionar que no deseamos configurar opciones avanzadas
Do you want to configure advanced settings? No, I am done
- Aplicar la configuracion y seleccionar continuar
amplify push
- Crear el archivo .env
touch .env
- Definir las siguientes variables de entorno requeridas:
# Url del Backend
NEXT_PUBLIC_BACKEND_URL="https://www.backend.com"
# Url del Frontend
NEXT_PUBLIC_FRONTEND_URL="https://www.frontend.com"
# Nombre de Usuario de la cuenta twitter
NEXT_PUBLIC_TWITTER_USER="UserPost"
# Estos valores se pueden encontrar en el archivo /src/aws-exports.js generado:
# Id de clente web de cognito
NEXT_PUBLIC_COGNITO_CLIENT_ID=""
# Id de la pool de usuarios de cognito
NEXT_PUBLIC_COGNITO_USER_POOL_ID=""
# Id de la region
NEXT_PUBLIC_COGNITO_REGION=""
# Id del identity pool de cognito
NEXT_PUBLIC_COGNITO_IDENTITY_POOL_ID=""
# Tag de Google Analytics
NEXT_PUBLIC_GOOGLE_TAG=""
# API key para manejar un plan de uso segun la configuracion del backend
NEXT_PUBLIC_API_KEY=""
npm run dev