Jay*_*dha 6 json amazon-cognito aws-lambda
我正在使用Pre Token Generation来更新IdToken的声明.
我成功地使用单键更新声明:值对.下面是示例.
event["response"] = {"claimsOverrideDetails":{"claimsToAddOrOverride":{"scope": "test.debug"}}}
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试在其中添加字符串数组时,它会给我内部服务器错误(来自AWS Cognito的响应)
例如:
event["response"] = {"claimsOverrideDetails":{"claimsToAddOrOverride":{"scope": ["test1","test2]}}}
Run Code Online (Sandbox Code Playgroud)
使用lambda函数的'Test'选项可以正常工作.
如果我正在使用groupsToOverride,那么它将覆盖cognito:groups声明.
有帮助吗?
Sam*_*les 10
我认为这一定是 Cognito 的一个错误,不幸的是,在解决之前需要一个解决方法。
我知道这并不理想,但我已经通过使用分隔字符串解决了这个问题,然后我在收到令牌时将其解析为数组。
拉姆达:
exports.handler = (event, context, callback) => {
event.response = {
"claimsOverrideDetails": {
"claimsToAddOrOverride": {
"scope": "test1|test2"
}
}
};
// Return to Amazon Cognito
callback(null, event);
};
Run Code Online (Sandbox Code Playgroud)
客户:
const token = jwt.decode(id_token);
const scopes = token.scope.split('|');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
885 次 |
| 最近记录: |