有没有一种方法可以使用Lambda从Cognito池中批量删除用户?

时间:2020-02-13 12:58:55

标签: node.js aws-lambda amazon-cognito

我正在使用congnito对我的应用程序的用户进行身份验证,但我有一个问题,可以在其中逐个处理用户,但是在某些情况下,我希望一次批处理一次删除所有用户。

问题在于,文档对此一无所知,而其他A&Q网站却说没有办法。

我正在考虑在一系列cognito客户端中使用UPDATE t SET val=2, dt=140000 WHERE id=1 来将其批量删除吗?但是我不知道是否可能,或者这可能会导致我的lanmbda超时吗?

我想到的是这样的东西。

Promise.all()

这行得通吗?是不好的做法吗?有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

另一个不使用lambda函数的选项是,如果您在Windows中配置了aws cli,则可以将以下脚本用作bat文件,以从listing命令输出中删除在单个页面上列出的用户,重复直到所有用户被删除。

您需要下载JQ,并将其路径添加到系统环境路径中,才能进行以下操作。

-delete.bat ---

@回显 setlocal

/ f“ delims =” %% I in('aws cognito-idp list-users --user-pool-id $ COGNITO_USER_POOL_ID ^ | jq -r“ .Users |。[] | .Username”')做( aws cognito-idp管理员删除用户--user-pool-id $ COGNITO_USER_POOL_ID-用户名%% I 回声%% I已删除 )

-delete.bat ---