【问题标题】:Accessing Cognito Custom Attributes in a post-confirmation lambda function在确认后 lambda 函数中访问 Cognito 自定义属性
【发布时间】:2019-04-27 17:49:47
【问题描述】:

我有一个确认后 lambda 函数,它将用户属性信息写入 dynamoDB 表。我已经设法通过执行类似

的操作来访问“事件”参数中的标准用户属性字段
event.request.userAttributes.sub

但试图运行

event.request.userAttributes.role //where role is the name of my custom attribute

似乎不起作用。任何人都知道正确的语法是什么?我是否需要为自定义属性设置任何特殊的读取权限?我最初创建此用户池后很长时间才创建此自定义属性,如果这会改变的话。

【问题讨论】:

    标签: aws-lambda amazon-cognito


    【解决方案1】:

    所有自定义属性都以custom: 前缀 (Documentation - Custom Attributes) 为前缀。

    因此(我假设您在这里使用 JavaScript - 如果您不能随意指定,我可以更改此示例),您需要使用:

    event.request.userAttributes['custom:role']

    您不需要设置任何特殊的读取权限 - 所有用户属性都在 PostConfirmation lambda 中返回。

    【讨论】:

    • 假设 cognito 用户池中没有字段。我们可以从后确认 lambda 中为该用户添加一个到 cognito 用户池吗?
    • no- 必须提前配置自定义属性。您还需要小心这样做,因为它们不能被删除并且您被限制为 25 岁。
    猜你喜欢
    • 2021-09-17
    • 2018-03-25
    • 2017-09-16
    • 1970-01-01
    • 2019-11-25
    • 2021-05-06
    • 2018-04-29
    • 2015-09-22
    • 2011-11-09
    相关资源
    最近更新 更多