ben*_*orn 9 amazon-s3 amazon-web-services amazon-cognito aws-lambda
我正在尝试编写一个 Lambda 函数,该函数在以新确认的 Cognito 用户命名的 s3 存储桶中创建一个文件夹。这将允许我将该用户的访问权限限制在他们的文件夹中。我创建了一个 Lambda 函数,它可以使用通过 Lambda 的测试事件对象传递的用户名在 s3 中创建一个文件夹。我知道 cognito 有一个“确认事件”触发器,并且我选择了在该触发器上运行的函数,但我不知道如何从该事件中检索用户名。下面的屏幕截图是我的 Lambda 代码。
我的 lambda 函数。
如果我需要提供更多信息,请告诉我。我已经看到了关于可能使用亚马逊 API 网关的内容,但是在一个半小时左右的时间里,我弄乱了 API 网关,我还没有更接近弄清楚如何解决这个问题。
谢谢!~本
Mic*_* Z. 10
好问题,在文档(https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-lambda-trigger-syntax-post-confirmation.html)他们只说request.userAttributes这显然没有t 包含用户名。
当我检查时,确认后触发器的整个事件对象如下所示:
{
"version": "1",
"region": "eu-central-1",
"userPoolId": "eu-central-1_45YtlkflA",
"userName": "user4",
"callerContext": {
"awsSdkVersion": "aws-sdk-java-console",
"clientId": "4736lckau64in48dku3rta0eqa"
},
"triggerSource": "PostConfirmation_ConfirmSignUp",
"request": {
"userAttributes": {
"sub": "a2c21839-f9fc-49e3-be9a-16f5823d6705",
"cognito:user_status": "CONFIRMED",
"email_verified": "true",
"email": "asdfsdfsgdfg@carbtc.net"
}
},
"response": {}
}
Run Code Online (Sandbox Code Playgroud)
所以基本上,只会event.userName检索用户名。
更新
最近的文档:
| 归档时间: |
|
| 查看次数: |
2978 次 |
| 最近记录: |