Пользовательский Authorizer не работает при использовании с AWS Chalice - PullRequest
0 голосов
/ 08 июля 2019

Я использую AWS Custom Authorizer для защиты лямбда-функции. Я не могу использовать пользовательский авторизатор из-за некоторых проблем конфигурации.

когда я пытался подключить авторизатор из API Gateway Console, он работал нормально Когда авторизатор присоединяется к коду, он не выдает никакой ошибки. Я попытался проверить журналы cloudwatch, журналы не генерируются для лямбда-функций (как для авторизатора, так и для функции helloworld).

Ниже приведен пример кода, который я написал:

from chalice import Chalice
from chalice import CustomAuthorizer
app = Chalice(app_name='helloworld-python')

authorizer = CustomAuthorizer(
    'MyCustomAuth', header='Authorization',
    authorizer_uri=('arn:aws:apigateway:{region}:lambda:path/2015-03-31'
                    '/functions/arn:aws:lambda:{region}:{account-id}:'
                    'function:{function-name}/invocations'))

@app.route('/test/test_authorizer', authorizer=authorizer)
def index():
    return {'hello': 'world'}

Я настроил следующую политику:

{
    "Version": "2012-10-17",
    "Statement": [
      {
        "Effect": "Allow",
        "Action": [
          "execute-api:Invoke"
        ],
        "Resource": [
          "*"
        ]
      }
    ]
  }

Я не могу добавить авторизатор к лямбда-функции. Когда я запускаю конечную точку, она выдает мне следующую ошибку:

Конечная точка: https://{rest -api-ID} .Execute-апи. {Область} .amazonaws.com / DEV / тест / test_authorizer

Http метод: GET

Код ошибки: 500.

Тело ошибки: { "message": null }

Как мне этого добиться. Пожалуйста, предоставьте мне необходимую информацию.

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