授权者的策略文档可以通过一个上下文来丰富,您可以在该上下文中放置您的自定义数据。该数据将通过事件提供给business lambda。
下面是一个策略文档的示例:
const policy = {
context: {
customKey: 'payload data',
},
policyDocument: {
Statement: [{
Action: 'execute-api:Invoke',
Effect: effect,
Resource: resource,
}],
Version: '2012-10-17',
},
principalId: sub,
};
上下文包含一个“CustomKey”,其中有效载荷数据为字符串。
API的映射模板应该如下所示:
{
"customKey": "$context.authorizer.customKey"
}
exports.handler = async (event, context) => {
console.log(event.customKey);
.
.
.
};
我正在使用AWS API网关的自定义授权器来验证应用程序的令牌, 我能够正确地使用自定义授权器, 即。能够验证令牌并返回IAM策略, 该策略决定是否允许将请求转发到业务逻辑Lambda函数。 到目前为止,我发现有两种方法可以实现这一点- 1。将数据作为要返回的策略中的主体Id。 2。在策略的Context对象中设置数据,该对象可以根据代码作为检索 我正在尝试第二种方法,但无法检索在上下文中设置的数
我是API网关的新手。我尝试使用“自定义授权程序”。我遵循了下面的文档,并使用了网站提供的示例代码。https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html “令牌类型的lambda授权者”是工作的。 但是... 我对“请求类型”感到困惑,不知道如何将quer
我目前正在构建一个web应用程序,其后端完全构建在API Gateway/lambda中。我构建了一个自定义的JSON Web令牌(JWT)授权器来授权用户。目前我正在头字段中传递令牌。 不幸的是,我只能定义一个头字段,将令牌发送到API网关。我的应用程序将令牌存储在一个cookie中。 有什么办法吗?谢谢!
Mono Apr 10 09:42:35 UTC 2017:转换后的endpoint请求主体:{“Type”:“Token”,“AuthorizationToken”:“ABC123”,“MethodArn”:“arn:aws:execute-api:ap-southeast-1:007183653813:OHLQXU9P57/null/Get/”}Mono Apr 10 09:42:36 UTC
但是看起来在我的lambda响应和API网关之间发生了一些奇怪的事情, 变量在内部的某个地方被压缩得更低, 而我仍然得到了相同的解析错误, 它会接受其他格式的响应吗?字符串也不起作用。 我还应该尝试什么?我的策略格式错误吗? 我从这些站点获得了两种不同的策略格式- 1。http://docs.aws.amazon.com/apigateway/latest/developerguide/use-c