Amazon web services 整合cognito和dynamoDB表

Amazon web services 整合cognito和dynamoDB表,amazon-web-services,amazon-dynamodb,amazon-cognito,Amazon Web Services,Amazon Dynamodb,Amazon Cognito,基本上,这就是我使用aws cognito服务作为应用程序的id服务器的场景,我有一些dynamo表可以保存一些用户 当我在cognito池中删除同一个用户时,我需要删除这些dynamoDB表中的一个用户 这就是工作流程 用户在cognito上被删除 Lambda或任何适当的服务侦听事件触发器 Lambda或任何适当的服务从dynamoDB表中删除用户 我正在阅读aws和其他人关于stackoverflow的问题的文档,我意识到cognito没有特定的删除事件触发器 如何实现所描述的工作流 提前

基本上,这就是我使用aws cognito服务作为应用程序的id服务器的场景,我有一些dynamo表可以保存一些用户

当我在cognito池中删除同一个用户时,我需要删除这些dynamoDB表中的一个用户

这就是工作流程

  • 用户在cognito上被删除
  • Lambda或任何适当的服务侦听事件触发器
  • Lambda或任何适当的服务从dynamoDB表中删除用户
  • 我正在阅读aws和其他人关于stackoverflow的问题的文档,我意识到cognito没有特定的删除事件触发器

    如何实现所描述的工作流


    提前感谢。

    不幸的是,Amazon Cognito不支持开箱即用。您必须结合其他亚马逊服务编写自己的解决方案

    有很多方法可以实现这一点,但我们在应用程序中做了一件事:

    首先,创建自己的API端点,例如:DELETE/user。你可以用它来做

    第二,将API端点连接到Lambda函数,或者将代码托管在其他地方,但是您需要使用代码调用Cognito用户池API并将其删除。下面是如何在NodeJS中实现这一点的一个片段

    const AWS = require('aws-sdk');
    AWS.config.update({
      accessKeyId: 'access key id',
      secretAccessKey: 'secret access key',
      region: 'region',
    });
    const cognito = new AWS.CognitoIdentityServiceProvider();
    
    await cognito.adminDeleteUser({
      UserPoolId: 'pool id',
      Username: 'username',
    }).promise();
    

    (有关如何使用代码删除用户的完整答案,请勾选此项)

    您的AWS服务有任何限制吗?你不能用cognito池来做这件事。谢谢你的回复@SamRastovich,不,我没有任何限制。我如何使用cognito池来做这件事?我是aws大学的新手知道吗,我会尝试使用这种方法