You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS Serverless中全局配置自定义授权器并豁免指定路由?

解决方案:全局配置默认授权器,仅排除公开路由

可以实现这种“默认保护、例外公开”的配置,具体操作如下:

1. 全局设置默认自定义授权器

在你的Serverless配置的httpApi根节点下,添加defaultAuthorizer字段,指定你已经定义好的authAuthorizer。这样所有HTTP API路由会默认启用该授权器,无需逐个手动配置。

修改后的全局配置示例:

httpApi:
  authorizers:
    authAuthorizer:
      type: request
      functionName: authAuthorizer
  defaultAuthorizer: authAuthorizer # 新增这行,设置全局默认授权器

2. 为公开路由跳过授权

对于不需要保护的路由(比如登录、公开信息查询等),只需要在该路由的httpApi事件配置里显式设置authorizer: false,即可跳过全局授权器的校验。

示例:

loginUser:
  handler: src/loginUser.main
  events:
    - httpApi:
        method: POST
        path: /login
        authorizer: false # 跳过授权,允许公开访问

注意事项

  • 确保你的Serverless框架版本支持httpApi.defaultAuthorizer配置(Serverless v3及以上版本均支持)。
  • 自定义授权器函数authAuthorizer的逻辑需要正确处理授权校验,比如验证请求头中的令牌、返回正确的IAM策略等。

这种配置方式正好解决了你担心的“遗漏授权导致重要路由公开”的问题,所有路由默认受保护,只有你明确标记的路由才会公开。

内容的提问来源于stack exchange,提问作者Guilherme Chiara

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 09:27:16