带有请求参数的 AWS 自定义授权方

AWS Custom Authorizer with request parameters

我正在使用无服务器构建休息 API。我已经构建了一个自定义授权方来检索自定义策略,一切正常,直到我遇到使用请求参数检索策略,例如:base/As/{aId}/Bs/{bId}

我正在检索的政策示例:

{
"principalId": "some id",
"policyDocument": {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "allow",
            "Action": "execute-api:Invoke",
            "Resource": "arn:aws:execute-api:{region}:{apiId}/{stage}/GET/As/*"
        }
    ]
}

所以我的问题是上面的策略应该只检索特定的 "A",但是当我想调用一些只能通过 "A" 访问的 "B" 时,我'将需要调用像 base/As/{aId}/Bs/{bId} 这样的端点,使用上述策略我将有权访问请求此端点,而我不应该这样做。

有没有办法在策略中的资源中包含请求参数?

无法将请求参数放入资源策略中。我不明白这怎么可能是安全的。该政策应该只说明 明确允许 对资源的操作。

您可能需要在策略中枚举多个资源(允许数组)。