Así que tómalo con precaución. Yo probaría lo que quieras tú mismo antes de tomar cualquier decisión.
Lo siguiente son los permisos. Ahora que entendemos que queremos usar esta o aquella implementación de servidor o serverless, ¿cómo vamos a lidiar con cosas como los permisos? En AWS, en Cloud, tienes esta idea típica de IAM, que significa Identity and Access Management. Identity Access Management suena más complicado, creo, de lo que es. Así que veamos qué significa realmente.
Digamos que he creado un entorno, he creado esta función lambda donde puedo escribir algo de Typescript. Tengo esta tabla DynamoDB y quiero hacer una llamada a la API, o quiero hacer una consulta a la base de datos, supongo que podrías decir, desde mi función a esta tabla base de datos. Ahora, de forma predeterminada, tienes acceso restringido. Por defecto, se te da el acceso denegado en la mayoría de los entornos de Cloud. Lo que significa que si intento acceder a algo y no le he dado estos permisos, entonces, por defecto, va a decir que no puedes hacer eso.
Todo lo que IAM está diciendo, es que voy a darle a este recurso permiso para realizar estas diferentes operaciones en este servicio. Podría decir que quiero que mi función lambda pueda crear, actualizar, eliminar y leer de esta tabla. Una vez que se establece ese permiso utilizando IAM, ahora puedo empezar a interactuar con esta base de datos. Vamos a ver cómo se ve esto en el código en solo un segundo.
Luego, lo último que debes tener en cuenta, si estás trabajando con uno de estos entornos de ejecución, son los SDKs. Lo bueno de esta idea de los SDKs es que solo hay un SDK principal con el que tienes que lidiar en el servidor. Ahora, si estás trabajando con AppSync, puedes hablar directamente con alguna base de datos como DynamoDB, Elasticsearch o Serverless Aurora, o puedes mapear tus operaciones en este entorno de ejecución como Lambda y hablar con cualquiera de los servicios que desees. Puedes ejecutar Node.js, puedes ejecutar Python, puedes ejecutar Go. Todos estos diferentes entornos de ejecución tienen un SDK de AWS que admite todos los demás servicios. Todo lo que necesitarías hacer sería importar el SDK de AWS y Node.js, y puedes hacer algo como esto.
Si quieres hablar con DynamoDB, adelante e importa el cliente de DynamoDB y crea nuestro comando diciendo que queremos hacer algo como escanear, en este caso, el comando de escaneo. Luego, en cuatro líneas de código, incluidas las importaciones, sin incluir el controlador, podemos escanear esta tabla y obtener todos los datos que queremos de la tabla. Hay cientos de servicios con los que puedes trabajar desde este SDK de AWS, un proyecto bastante masivo. Digamos que quieres trabajar con el servicio de aprendizaje automático como reconocimiento. Todo lo que necesitas hacer es importar el SDK de AWS. Vamos a importar el cliente de reconocimiento y el comando de detección de etiquetas. Construimos nuestro comando, pasando los parámetros. En este caso, queremos especificar el bucket de S3 y la imagen de la que queremos detectar etiquetas. Luego ejecutamos la operación y tenemos esos datos de retorno, que están en formato JSON en este ejemplo.
Comments