自定义授权者 + 阶段配置值
Posted
技术标签:
【中文标题】自定义授权者 + 阶段配置值【英文标题】:Custom Authorizer + Stages configuration values 【发布时间】:2016-11-23 00:05:36 【问题描述】:我们在 API Gateway 中为 Auth0 配置了一个自定义授权方。我们希望它根据调用它的阶段加载不同的配置值。有没有已知的处理方法?
【问题讨论】:
【参考方案1】:你有两个选择:
如果您想对两个阶段使用相同的授权函数,您可以解析包含该阶段的input passed to the function:
"type":"TOKEN",
"authorizationToken":"<caller-supplied-token>",
"methodArn":"arn:aws:execute-api:<regionId>:<accountId>:<apiId>/<stage>/<method>/<resourcePath>"
如果您想在每个阶段使用不同的函数,您可以使用阶段变量。 注意:您必须使用 CLI 或 SDK 添加具有阶段变量的授权方。 CLI 示例:
aws apigateway update-authorizer --rest-api-id <apidId> --authorizer-id <authorizerId> --patch-operations '["op":"replace","path":"/authorizerUri","value":"arn:aws:apigateway:<region>:lambda:path/2015-03-31/functions/arn:aws:lambda:<region>:<accountId>:function:$stageVaribles.authorizer/invocations"]'
【讨论】:
谢谢!我们选择了选项 1。我认为对于可能存在更多配置变动的大型部署#2 将需要部署脚本。 var methodArn = event.methodArn.split('/')[1] || “发展”;配置 = 环境[methodArn];以上是关于自定义授权者 + 阶段配置值的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio基础项目-两个Activity的Intent传值自定义类数据(如数据库数据读取)。
Android Studio基础项目-两个Activity的Intent传值自定义类数据(如数据库数据读取)。