将用户 Table aws cognito 移动到 MongoDB

Move user Table aws cognito to MongoDB

我了解了 aws cognito 和 lambda。通常,aws cognito 将数据存储到 aws dynamoDB。但是,在我的项目中我使用 mongoDB。那么,如何将数据从 aws cognito 存储到 mongoDB?

如果您想将现有数据从 AWS Cognito 存储到 MongoDB,您可以使用 AWS SDK

npm i aws-sdk

import AWS from 'aws-sdk'

const cognitoidentityserviceprovider = new AWS.CognitoIdentityServiceProvider();
const params = {
  UserPoolId: 'STRING_VALUE', /* required */
  AttributesToGet: [
    'STRING_VALUE',
    /* more items */
  ],
  Filter: 'STRING_VALUE',
  Limit: 'NUMBER_VALUE',
  PaginationToken: 'STRING_VALUE'
};
cognitoidentityserviceprovider.listUsers(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

获取用户后,将用户列表存储到MongoDB。

此功能有分页功能。最大限制是 60(如果我没记错的话)。因此,如果您有超过 60 个用户,您将创建一个递归函数来获取所有用户。 有关详细信息,请查看 AWS CognitoDocumentation.

对于未来,如果将用户存储到 Cognito,从结果中获取 Cognito 用户名和 Cognito 子,并将用户数据附加这些属性存储到 MongoDB .