Serverless + next.js с базовым аутентификационным и ip белым списком - PullRequest
0 голосов
/ 18 октября 2019

Я боролся со следующей проблемой: как настроить безсерверный сервер с авторизацией белого списка IP и откат к BasicAuth (к корневому пути), если IP не совпадает с белым списком?

Добавить довольно простоАвторизация белого списка IP-адресов (https://github.com/0is1/nextjs-serverless-test/blob/master/serverless.yml#L23-L34).) Кроме того, довольно просто добавить BasicAuth (или любой другой Authorizer), например https://serverless.com/framework/docs/providers/aws/events/apigateway#http-endpoints-with-custom-authorizers. Но как объединить эти два параметра с безсерверными + конфигурациями AWS Cloud Formation?

Похоже, что если используется serverless-nextjs-plugin, то невозможно использовать конфигурацию без сервера, например:

functions:
   handler:
     handler: handler
     events:
       - http:
           path: / # Add basic auth to root
           method: GET
           authorizer: ${self:custom.authorizer.users} # this is doing nothing if serverless-nextjs-plugin is on

Или возможно, но она ничего не делает.

Я имеюсоздал тестовое репо о прогрессе на данный момент https://github.com/0is1/nextjs-serverless-test

Подводя итог:

  1. Как объединить белый список IP-адресов и запасной вариант с другим Authorizer, если ip не соответствует белому списку с бессерверным
  2. Как добавить BasicAuth в корень приложения, если используется serverless-nextjs-plugin

Заранее спасибо!

...