news 2026/7/5 14:38:05

API网关的核心功能主要包括请求路由(A)、身份认证与鉴权(B)、流量控制(限流)与服务容错(熔断)(D)等,用于统一管理、保护和治理后端微服务

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
API网关的核心功能主要包括请求路由(A)、身份认证与鉴权(B)、流量控制(限流)与服务容错(熔断)(D)等,用于统一管理、保护和治理后端微服务

API网关的核心功能主要包括请求路由(A)、身份认证与鉴权(B)、流量控制(限流)与服务容错(熔断)(D)等,用于统一管理、保护和治理后端微服务。

C. 代码编译 ——不属于API网关的功能。代码编译是开发阶段由编译器或构建工具(如 Maven、Gradle、Go build、tsc 等)完成的静态过程,API网关运行在运行时(Runtime),不参与源码解析或编译,仅处理 HTTP/HTTPS 请求的转发与策略控制。

因此,正确答案是:C. 代码编译

API网关实现JWT(JSON Web Token)身份鉴权,是其核心安全功能之一,通常在请求进入后端服务前完成校验,避免将未授权请求透传。其验证流程如下(以典型网关如 Kong、Spring Cloud Gateway、Apigee 或自研网关为例):

完整JWT鉴权流程:

  1. 接收请求
    客户端在 HTTP 请求头中携带Authorization: Bearer <JWT>(或自定义 Header,如X-Auth-Token)。

  2. 提取Token
    网关从请求头中解析并提取 JWT 字符串(形如xxxxx.yyyyy.zzzzz)。

  3. 基础格式校验

    • 检查是否为三段式(Header.Payload.Signature),用.分隔;
    • Base64Url 解码 Header 和 Payload,验证 JSON 结构有效性;
    • 拒绝格式错误、缺少签名段或含非法字符的 Token。
  4. 签名验证(关键步骤)

    • 读取网关预配置的密钥(对称密钥HS256)或公钥(非对称RS256/ES256);
    • 使用对应算法重新计算签名,并与 Token 中 Signature 段比对;
    • 签名不匹配 → 拒绝请求(401 Unauthorized)
  5. 载荷(Payload)业务校验

    • 检查标准声明(claims):
      • exp(过期时间)→ 防止使用过期 Token;
      • nbf(生效时间)→ 防止提前使用;
      • iat(签发时间)→ 可选校验时序合理性;
      • iss(签发者)、aud(受众)→ 确保 Token 由可信认证服务签发且面向本系统;
    • 校验自定义声明(如roles,tenant_id,permissions)→ 支持细粒度 RBAC/ABAC 授权(如网关根据roles: ["admin"]决定是否放行/admin/**路径)。
  6. (可选)黑名单/状态检查

    • 查询 Redis 等缓存,确认该 JWT 是否已被主动注销(如登出)或列入黑名单(需配合 JWT 黑名单机制或短生命周期+刷新令牌策略)。
  7. 鉴权通过 → 注入上下文 & 转发

    • 将解析后的用户身份信息(如user_id,roles)注入请求头(如X-User-ID,X-Roles)或网关上下文;
    • 透传至后端服务,供其做二次鉴权或个性化处理;
    • 执行路由转发。

⚠️ 注意:

  • 网关不生成 JWT(由独立认证服务如 Auth0、Keycloak、Oauth2 授权服务器签发);
  • 网关不存储用户密码或会话状态,符合无状态设计原则;
  • 生产环境推荐使用 RS256 + 公钥验签,避免密钥泄露风险。
客户端 → [Auth Server 获取 JWT] ↓ 客户端 → [API网关] → 验证签名/时效/声明 → ✅ → 添加身份头 → 转发至后端服务 ↓ ❌ 401/403 响应

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/5 14:37:23

Python练习题002篇

文章目录 模块一:布尔类型与比较运算符 练习题 模块二:基本if单分支选择结构 练习题 模块三:if-else双分支选择结构 练习题 模块四:逻辑运算符(and / or / not) 练习题 模块五:多重if(elif)多分支选择结构 练习题 模块六:嵌套if选择结构 练习题 综合练习题(侧重Linu…

作者头像 李华
网站建设 2026/7/5 14:36:33

2026年值得关注的 5 款新兴 AI 工具:你可能还没听说过

2026年值得关注的 5 款新兴 AI 工具&#xff1a;你可能还没听说过2026年的AI工具市场已经过热。真正值得关注的不是“又一个ChatGPT套壳”&#xff0c;而是那些已经切入具体工作流、能替代一段真实劳动、并且开始出现增长信号的新兴产品。本文筛选5款你可能还没系统用过的AI工具…

作者头像 李华
网站建设 2026/7/5 14:35:29

用 AI 写小说实战:开源 Agent 从建书到出第一章

"怎么用 AI 写小说"网上多是贴个网页工具截图。这篇走另一条路&#xff1a;用开源写作 Agent InkOS&#xff08;AGPL 协议&#xff0c;项目仓库&#xff09;跑一遍完整流程&#xff0c;从装环境到产出第一章&#xff0c;命令都能直接复制。 一、安装 它是 npm 包&…

作者头像 李华
网站建设 2026/7/5 14:35:23

前端登录白屏排查-RSA时序竞态

记一次前端登录白屏问题排查&#xff1a;RSA 密钥时序竞态导致的服务端校验失败 1. 问题现象 生产环境中&#xff0c;部分用户反馈打开门户系统登录页后&#xff0c;​扫码登录成功或手动刷新页面时会出现白屏​&#xff0c;页面无任何报错信息&#xff0c;F12 控制台也无明显错…

作者头像 李华
网站建设 2026/7/5 14:33:25

【ESP32】ESP-IDF开发环境搭建(cursor)

1 前言 ESP-IDF 是乐鑫主推的ESP32的开发框架&#xff0c;旨在协助用户快速开发物联网 (IoT) 应用&#xff0c;可满足用户对 Wi-Fi、蓝牙、低功耗等方面的要求。 [https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/get-started/index.html] 如需在 ESP32 上使用…

作者头像 李华