AWS Custom Lambda Authorizer: разрешать и запрещать на основе параметров URL с одинаковым ведущим URL - PullRequest
0 голосов
/ 09 апреля 2019

Я пишу свой собственный лямбда-авторизатор AWS для шлюза AWS API. Мне нужно разрешить следующий URL:

/api/v1/get?detail=yes

но в той же политике я также хочу запретить следующий URL.

/api/v1/get?detail=no

Я посмотрел на условие политики и не могу найти способ поместить параметр URL detail в условие.

Кто-нибудь знает подробности о том, как это сделать?

1 Ответ

0 голосов
/ 10 апреля 2019

Вы можете получить параметр URL следующим образом: event["queryStringParameters"]['detail']

Так что код должен выглядеть примерно так:

def auth(event, context):
 detail = event["queryStringParameters"]['detail']
 if detail == 'yes':
  return {
        'principalId': principal_id,
        'policyDocument': {
            'Version': '2012-10-17',
            'Statement': [
                {
                    "Action": "execute-api:Invoke",
                    "Effect": effect,
                    "Resource": resource

                }
            ]
        }
    }
 else:
   raise Exception('Unauthorized')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...