Lambda授权者不尊重资源

时间:2019-05-01 20:05:23

标签: aws-lambda aws-api-gateway lambda-authorizer

我正在生成以下已缓存的策略:

{
    'principalId': 'test_user_user_ea8a2822-0b00-4a9c-ad79-27af44700801@123.com',
    'policyDocument': {
        'Version': '2012-10-17',
        'Statement': [{
            'Action': 'execute-api:*',
            'Effect': 'Deny',
            'Resource': 'arn:aws:execute-api:us-east-1:12345:hahd712723/active/GET/v1/AccountA'
        }]
    }
}

然后我向arn:aws:execute-api:us-east-1:12345:hahd712723/active/GET/v1/AccountB'

发出请求

应生成:

{
    'principalId': 'test_user_user_ea8a2822-0b00-4a9c-ad79-27af44700801@123.com',
    'policyDocument': {
        'Version': '2012-10-17',
        'Statement': [{
            'Action': 'execute-api:*',
            'Effect': 'Allow',
            'Resource': 'arn:aws:execute-api:us-east-1:12345:hahd712723/active/GET/v1/AccountB'
        }]
    }
}

但是我没有正确地设置拒绝策略,而不是新的缓存集。

似乎唯一的问题是主体ID,而资源却不受尊重。

1 个答案:

答案 0 :(得分:1)

根据您选择的标头/ API密钥而不是基于标头和资源来缓存策略。 应该为所有资源(而不只是请求的资源)构建策略。