Uso de Amazon Cognito para la autenticación
Puede utilizar la autenticación de Amazon Cognito como alternativa para directamente usar usuarios de AWS Identity and Access Management (IAM) con las solicitudes de SDK de frontend.
Amazon Cognito ofrece autenticación, autorización y administración de usuarios para aplicaciones móviles y web. Puede utilizar los grupos de identidades no autenticadas de Amazon Cognito con Amazon Location para que las aplicaciones recuperen credenciales de AWS temporales y restringidas.
Para obtener más información, consulte Introducción a los grupos de usuarios en la Guía para desarrolladores de Amazon Cognito.
Es posible que desee utilizar esta forma de autenticación por los siguientes motivos:
-
Usuarios no autenticados: si tiene un sitio web con usuarios anónimos, puede utilizar los grupos de identidades de Amazon Cognito.
Para obtener más información, consulte la sección en Uso de Amazon Cognito para la autenticación.
-
Su propia autenticación: si desea utilizar su propio proceso de autenticación o combinar varios métodos de autenticación, puede utilizar Amazon Cognito Federated Identities.
Para obtener más información, consulte Introducción a las identidades federadas en la Guía para desarrolladores de Amazon Cognito.
Uso de Amazon Cognito y Amazon Location Service
Puede utilizar las políticas de AWS Identity and Access Management (IAM) asociadas a los roles de identidad no autenticados con las siguientes acciones:
Creación de un grupo de identidades en Amazon Cognito
Puede crear grupos de identidades de Amazon Cognito para dar acceso de invitados no autenticados a la aplicación mediante la consola de Amazon Cognito, la AWS CLI o las API de Amazon Cognito.
importante
El grupo que cree debe estar en la misma Cuenta de AWS de la región de AWS y en la misma región que los recursos de Amazon Location Service que esté utilizando.
Uso del grupo de identidades de Amazon Cognito en la web
En el siguiente ejemplo, se intercambia el grupo de identidades no autenticadas que ha creado por credenciales que, a continuación, se utilizan para llamar a CalculateIsolines. Para simplificar este trabajo, el ejemplo usa los procedimientos Cómo utilizar los ayudantes de autenticación de Amazon Location. Esto sustituye a la obtención de las credenciales y a la actualización de las mismas.
En este ejemplo, se utiliza el SDK de AWS para JavaScript v3.
import { GeoRoutesClient, CalculateIsolinesCommand , } from "@aws-sdk/client-geo-routes"; // ES Modules import import { withIdentityPoolId } from "@aws/amazon-location-utilities-auth-helper"; const identityPoolId = "<identity pool ID>"; // for example, us-east-1:1sample4-5678-90ef-aaaa-1234abcd56ef const authHelper = await withIdentityPoolId(identityPoolId); const client = new GeoRoutesClient({ ...authHelper.getClientConfig(), region: "<region>", // The region containing the identity pool }); const input = { DepartNow: true, TravelMode: "Car", Origin: [-123.12327, 49.27531], Thresholds: { Time: [5, 10, 30], }, }; const command = new CalculateIsolinesCommand(input); const response = await client.send(command); console.log(JSON.stringify(response, null, 2))