【问题标题】:JWT authentication and forwarding using AWS API Gateway使用 AWS API Gateway 进行 JWT 身份验证和转发
【发布时间】:2020-03-27 18:29:08
【问题描述】:

我需要开发一个认证模块。到目前为止,我有一个 DynamoDB 和一些端点来注册用户。下一步是设置一些 API Gateway 端点来接收 JWT,对其进行验证,如果没问题,将请求转发到另一个端点。

我的问题是我想使用代码开发这个,比如 Serverless 或 SAM。现在我正在使用 AWS Web 控制台,但是随着更多端点的添加,这将变得难以管理。我想使用代码进行一些版本控制和部署功能。

简而言之。我需要一个带有 JWT 自定义授权器的 api,如果获得批准,它会将请求转发到另一个端点,该端点将依次处理请求并返回响应。

关于如何在不使用网络控制台的情况下完成此任务的任何想法?

【问题讨论】:

  • 您可能需要在 stackexchange 上发布此内容。除此之外,您是否询问如何在不使用 AWS 控制台的情况下进行部署,如果是,您可以设置 IAM 凭证并从 CICD 工具(例如 teamcity、circleci、bamboo 等)进行部署

标签: python node.js amazon-web-services aws-api-gateway jwt-auth


【解决方案1】:

您可以使用无服务器框架来做到这一点。

您需要定义一个 lambda 作为您的自定义授权方。然后就可以使用如下配置https://serverless.com/framework/docs/providers/aws/events/apigateway#http-endpoints-with-custom-authorizers

functions:
  create:
    handler: posts.create
    events:
      - http:
          path: posts/create
          method: post
          authorizer:
            name: authorizerFunc
            resultTtlInSeconds: 0
            identitySource: method.request.header.Authorization
            identityValidationExpression: someRegex
            type: token
  authorizerFunc:
    handler: handler.authorizerFunc

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-20
    • 2019-01-07
    • 2019-12-31
    • 2021-08-19
    • 2016-05-18
    • 2016-09-15
    • 2021-11-20
    • 1970-01-01
    相关资源
    最近更新 更多