Usar o Amazon Cognito para autenticação
Você pode usar a autenticação do Amazon Cognito como alternativa ao uso direto dos usuários do AWS Identity and Access Management (IAM) com SDKs de frontend e solicitações de SDK.
O Amazon Cognito fornece autenticação, autorização e gerenciamento de usuários para suas aplicações web e móveis. Você pode usar bancos de identidades não autenticados do Amazon Cognito com o Amazon Location como uma forma de os aplicativos recuperarem credenciais temporárias da AWS com escopo reduzido.
Para obter mais informações, consulte Introdução aos Grupos de Usuários no Guia do Desenvolvedor do Amazon Cognito.
Talvez você queira usar essa forma de autenticação pelos seguintes motivos:
-
Usuários não autenticados: se você tiver um site com usuários anônimos, poderá usar os bancos de identidades do Amazon Cognito.
Para obter mais informações, consulte a seção em Usar o Amazon Cognito para autenticação.
-
Sua própria autenticação: se você quiser usar seu próprio processo de autenticação ou combinar vários métodos de autenticação, você pode usar as Identidades Federadas do Amazon Cognito.
Para obter mais informações, consulte Conceitos básicos das identidades federadas no Guia do desenvolvedor do Amazon Cognito.
Usar o Amazon Cognito e o Amazon Location Service
Você pode usar políticas do AWS Identity and Access Management (IAM) associadas a funções de identidade não autenticadas com as seguintes ações:
Como criar um banco de identidades do Amazon Cognito
Você pode criar bancos de identidades do Amazon Cognito para permitir acesso de convidados não autenticados ao seu aplicativo pelo console do Amazon Cognito, a AWS CLI, ou as APIs do Amazon Cognito.
Importante
O banco que você cria deve estar na mesma região Conta da AWS e AWS dos recursos do Amazon Location Service que você está usando.
Usar banco de identidades do Amazon Cognito na web
O exemplo a seguir troca o banco de identidades não autenticado que você criou por credenciais que são então usadas para chamar CalculateIsolines. Para simplificar esse trabalho, o exemplo usa os procedimentos de Como usar auxiliares de autenticação do Amazon Location Service. Isso serve tanto para obter as credenciais quanto para atualizá-las.
Este exemplo usa o SDK da 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))