自定义授权程序+阶段配置值

时间:2016-07-19 22:38:47

标签: amazon-web-services aws-api-gateway auth0

我们在API网关中配置了Auth0的自定义授权程序。我们希望它根据调用的阶段加载不同的配置值。有没有一种已知的方法可以解决这个问题?

1 个答案:

答案 0 :(得分:2)

您有两个选择:

  1. 如果您想对两个阶段使用相同的授权者功能,您可以解析包含阶段的input passed to the function

    {
      "type":"TOKEN",
      "authorizationToken":"<caller-supplied-token>",
      "methodArn":"arn:aws:execute-api:<regionId>:<accountId>:<apiId>/<stage>/<method>/<resourcePath>"
    }
    
  2. 如果要在每个阶段使用不同的功能,可以使用阶段变量。 注意:您必须使用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"}]'