Conceitos básicos do Amazon Cognito

Documentação e recursos para começar a usar

Grupos de usuários do Amazon Cognito: um diretório para todos os usuários

Você pode criar rapidamente o seu próprio diretório para cadastramento e login de usuários, bem como para armazenar perfis de usuários usando os grupos de usuários do Amazon Cognito. Os grupos de usuários oferecem uma interface de usuário que pode ser personalizada de acordo com uma aplicação. Além disso, os grupos de usuários permitem uma fácil integração com provedores de identidade social (como Facebook, Google e Amazon) e provedores de identidade empresarial (como Microsoft Active Directory) por meio de SAML.

Bancos de identidades do Amazon Cognito – Controle de acesso para seus recursos

Você pode controlar o acesso a recursos e APIs de back-end da AWS por meio do Amazon Cognito. Dessa forma, os usuários da aplicação recebem apenas o acesso necessário. Os usuários podem ser mapeados a diferentes funções e permissões e obter credenciais temporárias da AWS para acessar serviços da AWS como Amazon S3, Amazon DynamoDB, Amazon API Gateway e AWS Lambda.

Vídeos online

Como criar um grupo de usuários do Amazon Cognito (7:37)
How to use Amazon Cognito user pool advanced security features (12:00)
How to create an Amazon Cognito identity pool (7:25)

Temos respostas para as perguntas frequentes

  • P: O que é o Amazon Cognito?
    O Amazon Cognito permite que você adicione facilmente cadastro e autenticação de usuário às suas aplicações móveis e da web. O Amazon Cognito também permite que você autentique usuários por meio de um provedor de identidade externo, além de disponibilizar credenciais de segurança temporárias para acessar recursos de back-end da sua aplicação na AWS ou qualquer serviço por trás do Amazon API Gateway. O Amazon Cognito trabalha com provedores de identidade externos compatíveis com SAML ou OpenID Connect, provedores de identidade social (como Facebook, Twitter e Amazon) e você pode também integrar seu próprio provedor de identidade.

    Além disso, o Amazon Cognito permite que você sincronize dados nos dispositivos de um usuário de modo que sua experiência com a aplicação permaneça uniforme quando ele alternar o uso entre dispositivos diferentes ou fizer o upgrade para um novo dispositivo. Sua aplicação pode salvar dados localmente nos dispositivos dos usuários, permitindo que suas aplicações funcionem mesmo quando os dispositivos estiverem off-line e sincronizem automaticamente os dados quando estiverem on-line novamente.

    Com o Amazon Cognito, você pode focar-se na criação de excelentes experiências com aplicações, em vez de preocupar-se com a criação, a proteção e a escalabilidade de uma solução que administre o gerenciamento, a autenticação e a sincronização de usuários em várias plataformas e dispositivos.

    P: Quem deve usar o Amazon Cognito?

    O Amazon Cognito foi criado para desenvolvedores que desejam adicionar a funcionalidade de gerenciamento e sincronização de usuários às suas aplicações móveis e da web. Os desenvolvedores podem usar o Cognito Identity para adicionar cadastro e login às aplicações e para permitir que seus usuários acessem com segurança os recursos das aplicações. O Cognito também permite que os desenvolvedores sincronizem dados em vários dispositivos, plataformas e aplicações.

    P: Como começo a usar o Amazon Cognito?
    Você pode começar a usá-lo facilmente ao acessar o Console da AWS. Se você não tem uma conta da Amazon Web Services, pode criar uma quando fizer login no Console. Após a criação de um pool de usuários para o gerenciamento de usuários ou um pool de identidades para identidades federadas ou operações de sincronização, você pode fazer o download do AWS Mobile SDK e integrá-lo à sua aplicação. Outra opção é chamar as APIs do Cognito no servidor diretamente, em vez de usar o SDK. Consulte o nosso guia do desenvolvedor para obter mais informações.

    P: O Amazon Cognito expõe as APIs no servidor?
    Sim. O Cognito expõe as APIs no servidor. Você pode criar sua própria interface personalizada para o Cognito chamando essas APIs diretamente. As APIs no servidor são descritas no guia do desenvolvedor.

    P: O Amazon Cognito é compatível com quais plataformas?
    O suporte para o Cognito está incluído no AWS Mobile SDK opcional, que está disponível para iOS, Android, Unity e Kindle Fire. O Cognito também está disponível no AWS SDK para JavaScript. No momento, seus grupos de usuários são compatíveis com AWS Mobile SDKs para iOS e Android, como também com AWS SDK para JavaScript do Cognito. Acesse a nossa página de recursos para fazer o download dos SDKs.

    P: Eu tenho de usar o AWS Mobile SDK?
    Não. O Cognito expõe suas APIs de controle e dados como serviços da web. Você pode implementar sua própria biblioteca do cliente chamando as APIs no servidor diretamente.

  • P: Posso ter meu próprio provedor de identidade para oferecer suporte a cadastramento e login?

    Sim, você pode adicionar com facilidade e segurança a funcionalidade de cadastro e login às suas aplicações com o Cognito Identity. Seus usuários podem fazer cadastro e login por meio de e-mail, número de telefone ou nome de usuário. Você também pode implementar recursos de segurança aprimorados, como verificação de e-mail e número de telefone, como também autenticação multifator. O Cognito Identity também permite que você personalize fluxos de trabalho ao, por exemplo, adicionar lógica específica da aplicação ao registro de usuários para a detecção de fraude e a validação de usuários por meio do AWS Lambda. Para saber mais, acesse a nossa documentação.

    P: O que é um grupo de usuários do Amazon Cognito?

    Um grupo de usuários é o diretório de usuários que você pode configurar para os suas aplicações móveis e da web. Um grupo de usuários armazena com segurança os atributos de perfil dos seus usuários. Você pode criar e gerenciar um grupo de usuários usando o Console da AWS, a AWS CLI ou o AWS SDK.

    P: Que informações de perfil de usuário são compatíveis com o Cognito Identity?

    Os desenvolvedores podem usar atributos de perfil de usuário baseados no OpenID Connect padrão (como nome de usuário, número de telefone, endereço, fuso horário, etc.) ou personalizar para adicionar atributos de usuário específicos da aplicação.

    P: Posso permitir que os usuários da minha aplicação façam cadastro ou login usando um endereço de e-mail ou número de telefone?

    Sim. É possível usar o recurso de alias para permitir que seus usuários façam cadastro ou login usando um endereço de e-mail e uma senha ou um número de telefone e uma senha. Para saber mais, consulte a nossa documentação.

    P: Posso configurar políticas de senha?

    Sim, você pode configurar políticas de senha, como requisitos de força da senha e tipo de caractere, durante a definição ou a configuração do seu pool de usuários.

    P: Posso verificar os endereços de e-mail e os números de telefone dos usuários da minha aplicação?

    Sim, com o Amazon Cognito você pode solicitar que os endereços de e-mail e os números de telefone dos usuários sejam verificados antes disponibilizar a eles acesso à sua aplicação. Durante o cadastro, um código de verificação será enviado ao número de telefone ou endereço de e-mail do usuário, e o usuário deverá inserir o código de verificação para concluir o cadastro e ser confirmado.

    P: O Amazon Cognito é compatível com a autenticação multifator (MFA) baseada em SMS?

    Sim, você pode permitir que os usuários finais da sua aplicação façam o cadastro com MFA baseada em SMS. Após a ativação da MFA baseada em SMS, será solicitado que seus usuários informem a senha (primeiro fator: o que eles sabem) e um código de segurança que só pode ser recebido em seus telefones celulares via SMS (segundo fator: o que eles têm).

    P: É possível personalizar o cadastro e o login de usuários nos fluxos de trabalho?

    Sim, você pode personalizar o cadastro e o login ao adicionar a lógica específica da aplicação aos fluxos de cadastro e login de usuário usando o AWS Lambda. Por exemplo, você pode criar funções do AWS Lambda para identificar fraude ou executar validações adicionais nos dados do usuário. É possível acionar funções do Lambda disponibilizadas pelo desenvolvedor durante o pré-registro, a pós-confirmação, a pós-autenticação, a autenticação para personalizar os desafios e a pós-autenticação. Também é possível usar funções do Lambda para personalizar mensagens enviadas como parte da verificação de e-mail ou número de telefone e da autenticação multifator.

    P: Posso memorizar os dispositivos associados aos usuários da minha aplicação em um grupo de usuários do Cognito?

    Sim. Você pode optar por memorizar os dispositivos usados para acessar sua aplicação. Associe esses dispositivos memorizados aos usuários da sua aplicação em um grupo de usuários do Cognito. Você também pode optar por usar dispositivos memorizados para suprimir desafios de segundo fator para os seus usuários após configurar a autenticação multifator.

    P: Como faço para migrar usuários atuais das aplicações para os grupos de usuários do Amazon Cognito?

    Agora, há duas formas de migração de usuários de aplicações de diretório ou banco de dados de usuários atuais para grupos de usuários.

    O Amazon Cognito ajuda a migração dos usuários em tempo real durante o login na aplicação usando um trigger incorporado do AWS Lambda. O trigger incorporado do Lambda permite migrar usuários sem que eles precisem redefinir sua senha.

    Como alternativa, você pode migrar usuários em massa fazendo upload de um arquivo CSV que contém dados de perfil dos usuários das aplicações. O upload do arquivo CSV pode ser efetuado por meio do console do Amazon Cognito, das APIs ou da ILC da AWS. No primeiro login, os usuários devem verificar a conta e criar uma nova senha usando um código de verificação enviado ao seu endereço de e-mail ou número de telefone.

    Para saber mais, consulte Importação de usuários para grupos de usuários.

  • P: Posso usar o Cognito Identity para federar identidades e proteger o acesso a recursos da AWS?
    Sim. O Cognito Identity permite que você autentique usuários por meio de um provedor de identidade externo, além de disponibilizar credenciais de segurança temporárias para acessar recursos de back-end da sua aplicação na AWS ou qualquer serviço por trás do Amazon API Gateway. O Amazon Cognito trabalha com provedores de identidade externos compatíveis com SAML ou OpenID Connect, provedores de identidade social (como Facebook, Twitter e Amazon) e você pode também integrar seu próprio provedor de identidade.


    P: Quais provedores públicos de identidade eu posso usar com o Amazon Cognito Identity?
    Você pode usar provedores de identidade como Amazon, Facebook, Twitter, Digits, Google e qualquer outro que seja compatível com o OpenID Connect.

    P: O que é um pool de identidades?
    Pools de identidades são os contêineres que o Cognito Identity usa para manter organizadas as identidades federadas das suas aplicações. O pool de identidades associa identidades federadas de provedores de identidade social com um identificador específico e exclusivo do usuário. Pools de identidades não armazenam nenhum perfil de usuário. Um pool de identidades pode ser associado a uma ou muitas aplicações. Se você usar dois pools de identidades diferentes para duas aplicações, o mesmo usuário final terá um identificador exclusivo diferente em cada pool de identidades.

    P: Como o fluxo de login funciona com os provedores de identidade públicos?
    Sua aplicação móvel é autenticada com um provedor de identidade (IdP) usando o SDK do provedor. Quando o usuário final for autenticado com o provedor de identidade (IdP), a declaração SAML ou o token do OAuth ou OpenID Connect retornado do IdP, ele será informado pela sua aplicação ao Cognito Identity, que retorna um novo ID do Cognito para o usuário e um conjunto de credenciais da AWS temporárias e de privilégio limitado.

    P: Posso registrar e autenticar os meus próprios usuários?
    O Cognito Identity pode integrar-se ao seu sistema de autenticação atual. Com uma chamada de API simples, você pode recuperar um ID do Cognito para usuários finais de acordo com o seu próprio identificador exclusivo de usuários. Após recuperar o ID do Cognito e o token OpenID disponibilizados pelo Cognito Identity, você pode usar o SDK de cliente do Cognito Identity para acessar recursos da AWS e sincronizar dados de usuário. O Cognito Identity é um provedor de identidade totalmente gerenciado que facilita a implementação do cadastro e login de usuário para as suas aplicações móveis e da web.

    P: Como o Cognito Identity me ajuda a controlar permissões e acessar serviços da AWS de forma segura?
    O Cognito Identity atribui aos seus usuários um conjunto de credenciais temporárias e de privilégio limitado para acessar recursos da AWS, o que torna desnecessário o uso das credenciais de conta da AWS. As permissões para cada usuário são controladas por meio de funções do AWS IAM que você mesmo cria. Você pode definir regras para escolher a função do IAM de cada usuário ou, se estiver usando grupos em um grupo de usuários do Cognito, poderá atribuir funções do IAM com base em grupos. O Cognito Identity também permite que você defina uma função do IAM separada com permissões limitadas para usuários convidados que não estejam autenticados. Além disso, você também pode usar o identificador único que o Cognito gera para os seus usuários para controlar o acesso a recursos específicos. Por exemplo, é possível criar uma política para um bucket do S3 que permita apenas que cada usuário acesse sua própria pasta dentro do bucket.

     

    P: Ao usar provedores públicos de identidade, o Amazon Cognito Identity armazena as credenciais de usuário?

    Não, sua aplicação se comunica diretamente com o provedor público de identidade compatível (Amazon, Facebook, Twitter, Digits, Google ou um provedor em conformidade com Open ID Connect) para autenticar usuários. O Cognito Identity não recebe nem armazena credenciais de usuário. O Cognito Identity usa o token do provedor de identidade para obter um identificador exclusivo para o usuário e, em seguida, o embaralha em uma direção para que o mesmo usuário possa ser reconhecido novamente no futuro, sem armazenar o identificador real do usuário.

    P: O Cognito Identity recebe ou armazena informações confidenciais sobre meus usuários dos provedores de identidade?
    Não. O Cognito Identity não recebe nenhuma informação confidencial (como endereço de e-mail, lista de amigos, etc.) dos provedores de identidade.

    P: Eu ainda preciso ter meus próprios sistemas de autenticação de back-end com o Cognito Identity?
    Não. O Cognito Identity é compatível com login por meio do Amazon, Facebook, Twitter, Digits e Google, além de oferecer compatibilidade a usuários não autenticados. Com o Cognito Identity, você pode sustentar a autenticação federada, o armazenamento de sincronização de dados de perfil e a distribuição de token de acesso da AWS sem escrever nenhum código de back-end.

    P: E se eu não quiser obrigar meus usuários a fazer login?
    O Cognito Identity é compatível com a criação e o processo de venda de tokens tanto para usuários autenticados quanto para não autenticados. Isso remove o dissabor de ter uma tela de login adicional em sua aplicação, mas ainda possibilita que você use credenciais temporárias de privilégio limitado para acessar os recursos da AWS.

    P: O que são usuários não autenticados?
    Usuários não autenticados são usuários que não fazem a autenticação com nenhum provedor de identidade, mas, em vez disso, acessam sua aplicação como um convidado. É possível definir uma função do IAM separada para esses usuários, visando disponibilizar permissões limitadas para acessar os recursos do seu back-end.

    P: O Cognito Identity é compatível com identidades separadas para diferentes usuários no mesmo dispositivo?

    Sim. O Cognito Identity é compatível com identidades separadas em um único dispositivo, como um iPad da família. Cada identidade é tratada separadamente e você tem controle total sobre como sua aplicação conecta e desconecta os usuários, e também sobre como os dados locais e remotos da aplicação são armazenados.

    P: Como eu armazeno dados associados ao Cognito Identity?
    Você pode criar programaticamente um conjunto de dados associado ao Cognito Identity e começar a salvar os dados na forma de pares de chave/valor. Os dados são armazenados tanto localmente no dispositivo quanto no armazenamento de sincronização do Cognito. O Cognito também pode sincronizar esses dados em todos os dispositivos do usuário final.

    P: O número de identidades no Console do Cognito Identity me informa quantos usuários estão usando minha aplicação?
    O número de identidades no Console do Cognito Identity mostra quantas identidades foram criadas por meio das APIs do Cognito Identity. Para identidades autenticadas (aquelas com um provedor de login, como Facebook ou um provedor de OpenID Connect), cada chamada da API GetId do Cognito Identity criará somente uma única identidade para cada usuário. No entanto, para identidades não autenticadas, a cada vez que o cliente em uma aplicação chamar a API GetId, uma nova identidade será gerada. Portanto, se uma aplicação chamar o GetId para identidades não autenticadas várias vezes para um único usuário, parecerá que um único usuário tem várias identidades. Então é importante que você faça o cache da resposta do GetId quando usa identidades não autenticadas e não chamá-la várias vezes por usuário.

    O SDK móvel oferece a lógica para fazer o cache do Cognito Identity automaticamente, para que você não precise se preocupar com isso. Se você está procurando uma solução de análise completa para sua aplicação, inclusive a capacidade de rastrear usuários exclusivos, confira o Amazon Mobile Analytics.

  • P: O que é o armazenamento de sincronização do Amazon Cognito?
    O armazenamento de sincronização do Amazon Cognito é um armazenamento de pares de chave/valor vinculado a uma identidade do Amazon Cognito. Não existe um limite para o número de identidades que você pode criar nos seus pools de identidades e no armazenamento de sincronização. Cada identidade do Amazon Cognito dentro do armazenamento de sincronização tem seu próprio armazenamento de informações do usuário.

    P: Os dados são salvos diretamente no armazenamento de sincronização do Amazon Cognito?
    Não. O AWS Mobile SDK opcional salva seus dados em um banco de dados SQLite no dispositivo local. Dessa forma, os dados podem sempre ser acessados pela sua aplicação. Os dados são enviados ao armazenamento de sincronização do Amazon Cognito chamando o método synchronize(). Se a sincronização por push está ativada, todos os outros dispositivos vinculados a uma identidade são notificados por meio do Amazon SNS sobre a alteração dos dados no armazenamento de sincronização.

    P: Como os dados são armazenados no armazenamento de sincronização do Amazon Cognito?
    Os dados associados a uma identidade do Amazon Cognito são organizados como pares de chave/valor. Uma chave é um rótulo, como “MusicVolume”, e um valor, como “11”. Os pares de chave/valor são agrupados e categorizados usando conjuntos de dados. Os conjuntos de dados são uma partição lógica de pares de chave/valor e são a entidade mais granular usada pelo Amazon Cognito para executar operações de sincronização.

    P: Qual é o tamanho máximo de um armazenamento de informações de usuários dentro do armazenamento de sincronização do Amazon Cognito?
    Cada armazenamento de informações de usuários pode ter um tamanho máximo de 20 MB. Cada conjunto de dados dentro do armazenamento de informações de usuários pode conter até 1 MB de dados. Dentro de um conjunto de dados, é possível ter até 1024 chaves.

    P: Que tipo de dados eu posso armazenar em um conjunto de dados?
    Tanto as chaves quanto os valores em um conjunto de dados são sequências alfanuméricas. Não há limite para o tamanho das sequências, mas o valor total dos valores em um conjunto de dados não poder exceder 1 MB. Dados binários podem ser armazenados como uma sequência codificada com base64 como um valor, contanto que não excedam o limite de 1 MB.

    P: Por que os conjuntos de dados estão limitados a 1 MB?
    A limitação do tamanho do conjunto de dados a 1 MB aumenta as chances de uma tarefa de sincronização ser concluída com êxito mesmo quando a largura de banda é limitada, sem muitas novas tentativas que consomem carga da bateria e dados dos planos de dados. 

    P: As identidades e os armazenamentos de informações dos usuários são compartilhados entre os desenvolvedores?
    Não, a identidade de um usuário e o armazenamento de informações são atrelados a uma conta da AWS específica. Se houver várias aplicações de diferentes editores em um determinado dispositivo que use o Amazon Cognito, cada aplicação usará o armazenamento de informações criado por cada editor.

    P: Como posso analisar e consultar os dados armazenados no armazenamento de sincronização do Cognito?
    O Cognito Streams permite enviar dados do armazenamento de sincronização por meio de push para um fluxo do Kinesis na sua conta da AWS. Em seguida, você pode consumir esse fluxo e armazenar os dados de uma forma que facilite sua análise, como um banco de dados do Amazon Redshift, uma instância do RDS ou até mesmo um arquivo do S3. Publicamos uma amostra de aplicação para consumidor do Kinesis para mostrar como armazenar os dados de atualizações no Amazon Redshift.

    P: Por que devo usar um stream do Kinesis em vez de uma exportação de banco de dados?
    O streaming dos dados para o Kinesis permite receber todo o histórico de alterações dos bancos de dados em tempo real. Isso significa que você recebe todas as alterações efetuadas por um usuário final em um conjunto de dados, além de ter a flexibilidade de armazenar esses dados na sua ferramenta preferida.

    P: E se eu já tiver dados armazenados no Cognito?
    A ativação do recurso de stream do Kinesis permite iniciar uma publicação de grande volume. Esse processo envia de forma assíncrona todos os dados armazenados no momento no armazenamento de sincronização do Cognito ao stream do Kinesis selecionado.

    P: Qual o preço desse recurso?
    O Cognito envia os dados por meio de push a um stream do Kinesis que pertence a você. Se esse recurso for ativado, o preço por sincronização do Cognito permanecerá o mesmo. Serão cobradas as tarifas padrão do Kinesis pelos seus fragmentos.

    P: Posso validar os dados antes de eles serem salvos?
    O Amazon Cognito Events permite que os desenvolvedores executem uma função do AWS Lambda em resposta a eventos importantes no Cognito. O evento Sync Trigger é um evento que ocorre quando qualquer conjunto de dados é sincronizado. Os desenvolvedores podem escrever uma função do AWS Lambda para interceptar o evento de sincronização. A função pode avaliar as alterações no conjunto de dados subjacente e manipular os dados antes de serem armazenados na nuvem e sincronizados de volta nos outros dispositivos do usuário. Alternativamente, a função do AWS Lambda pode falhar a operação de sincronização, para que os dados não sejam sincronizados com os outros dispositivos do usuário.

    P: Como os dados são sincronizados com o Amazon Cognito?
    Você pode disparar programaticamente a sincronização de conjuntos de dados entre dispositivos clientes e o armazenamento de sincronização do Amazon Cognito usando o método synchronize() no AWS Mobile SDK. O método synchronize() lê a versão mais recente dos dados disponível no armazenamento de sincronização do Amazon Cognito e a compara com a cópia local, armazenada em cache. Após a comparação, o método synchronize() grava as últimas atualizações conforme necessário no armazenamento de dados local e no armazenamento de sincronização do Amazon Cognito. Por padrão, o Amazon Cognito mantém a última versão gravada dos dados. É possível substituir esse comportamento e resolver os conflitos de dados programaticamente. Além disso, a sincronização por push permite usar o Amazon Cognito para enviar uma notificação silenciosa por push para todos os dispositivos associados a uma identidade e notificá-los da disponibilidade de novos dados.

    P: O que é uma notificação silenciosa por push?
    O Amazon Cognito usa o Amazon Simple Notification Service (SNS) para enviar notificações silenciosas por push aos dispositivos. Uma notificação silenciosa por push é uma mensagem por push recebida pelo sua aplicação no dispositivo de um usuário e que não é vista pelo usuário.

    P: Como posso usar a sincronização por push?
    Para ativar a sincronização por push, você precisa declarar uma aplicação de plataforma usando a página do Amazon SNS no Console de Gerenciamento da AWS. Em seguida, na página de pool de identidades do Amazon Cognito no Console de Gerenciamento da AWS, você pode vincular a aplicação de plataforma do SNS ao seu pool de identidades do Cognito. O Amazon Cognito usa automaticamente a aplicação de plataforma do SNS para notificar as alterações aos dispositivos.

    P: Como são tratados os conflitos no processo de sincronização?
    Por padrão, o Amazon Cognito mantém a última versão gravada dos dados. É possível substituir esse comportamento optando por responder a um retorno de chamada do AWS Mobile SDK, que conterá ambas as versões dos dados. Em seguida, é possível decidir qual versão dos dados (a local ou a que está no armazenamento de sincronização do Amazon Cognito) será mantida na aplicação e salvar no armazenamento de sincronização do Amazon Cognito.

  • P: Quanto custam os grupos de usuários do Amazon Cognito?

    Para obter os preços para o grupo de usuários do Amazon Cognito, consulte a página de preços do Amazon Cognito.

    P: Quanto custa a Sincronização do Amazon Cognito?

    Para obter os preços para a Sincronização do Amazon Cognito, consulte a página de preços do Amazon Cognito.

    P: O que é uma operação de sincronização?

    Quando você chama o método synchronize() usando o AWS Mobile SDK, isso conta como uma operação de sincronização. Se você está chamando as APIs do servidor diretamente, uma operação de sincronização é iniciada quando um novo token de sessão de sincronização é emitido e é concluída com uma gravação bem-sucedida ou a expiração do tempo limite do token de sessão. Independentemente de você usar o método synchronize() do SDK ou chamar a API do servidor diretamente, as operações de sincronização são cobradas com a mesma tarifa.

    P: O que são usuários ativos mensais (MAUs)?
    Um usuário é considerado ativo e contado como um MAU quando há uma operação (ex.: login, atualização de token, cadastro ou alteração de senha) associada ao usuário durante o mês de faturamento. Portanto, você não é cobrado por operações subsequentes durante o mês de faturamento ou usuários inativos. Geralmente, o número total de usuários e o número de operações são significativamente maiores do que o seu número total de MAUs.

    P: Quanto custa o uso de mensagens SMS com o Cognito?
    O uso do sistema de mensagens SMS para verificar números de telefone, enviar códigos para senhas esquecidas ou redefinição de senhas, ou para autenticação multifator é cobrado separadamente. Consulte a página de definição de preço global do SMS para obter mais informações.

    P: O Amazon Cognito faz parte do nível gratuito da AWS?
    Sim. Como parte do nível gratuito da AWS, o Cognito oferece 10 GB de armazenamento de sincronização e 1.000.000 de operações de sincronização em um mês, durante os 12 primeiros meses de uso. Seu pool de usuários do Cognito Identity é gratuito para os primeiros 50.000 MAUs. Após essa marca, nós oferecemos níveis baseados em volume. O recurso Federated Identities para autenticar usuários e gerar identificadores exclusivos é sempre gratuito no Cognito Identity.

    P: Cada gravação ou leitura da aplicação conta como uma operação de sincronização?
    Não. Você decide quando chamar o método synchronize(). Toda gravação ou leitura do dispositivo é armazenada no armazenamento do SQLite local. Dessa forma, você tem total controle sobre os seus custos.

    P: Qual o custo da sincronização por push?
    O Cognito usa o Amazon SNS para enviar notificações silenciosas por push. Não há cobrança adicional pelo uso do Cognito para sincronização por push, mas as notificações enviadas aos dispositivos são cobradas de acordo com as tarifas do Amazon SNS.

    P: Qual é o custo de utilização do Lambda com o Amazon Cognito Events?
    Não há custo adicional para usar o Cognito Events para disparar funções do Lambda, mas as taxas normais para seu uso do AWS Lambda e de outros serviços da AWS serão aplicadas enquanto suas funções do Lambda estiverem sendo executadas. Consulte a página de definição de preço do AWS Lambda para obter mais detalhes.