具有基本身份验证和IP白名单的无服务器+ next.js

时间:2019-10-18 07:10:24

标签: aws-lambda next.js serverless aws-serverless

我一直在努力解决以下问题:如果IP与白名单不匹配,如何使用IP白名单授权配置无服务器并回退到BasicAuth(到根路径)?

添加IP白名单授权(https://github.com/0is1/nextjs-serverless-test/blob/master/serverless.yml#L23-L34)非常容易。并且添加https://serverless.com/framework/docs/providers/aws/events/apigateway#http-endpoints-with-custom-authorizers之类的BasicAuth(或一般的任何授权者)也很容易。但是如何将两者与无服务器+ AWS CloudFormation配置结合起来?

似乎如果使用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与无服务器的白名单不匹配,如何将IP白名单和回退合并到另一个授权者
  2. 如果使用serverless-nextjs-plugin,如何向应用程序根目录添加BasicAuth

提前谢谢!

0 个答案:

没有答案