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

发布时间:2026/7/5 14:38:19
API网关的核心功能主要包括请求路由(A)、身份认证与鉴权(B)、流量控制(限流)与服务容错(熔断)(D)等,用于统一管理、保护和治理后端微服务 API网关的核心功能主要包括请求路由A、身份认证与鉴权B、流量控制限流与服务容错熔断D等用于统一管理、保护和治理后端微服务。C. 代码编译 ——不属于API网关的功能。代码编译是开发阶段由编译器或构建工具如 Maven、Gradle、Go build、tsc 等完成的静态过程API网关运行在运行时Runtime不参与源码解析或编译仅处理 HTTP/HTTPS 请求的转发与策略控制。因此正确答案是C. 代码编译API网关实现JWTJSON Web Token身份鉴权是其核心安全功能之一通常在请求进入后端服务前完成校验避免将未授权请求透传。其验证流程如下以典型网关如 Kong、Spring Cloud Gateway、Apigee 或自研网关为例✅完整JWT鉴权流程接收请求客户端在 HTTP 请求头中携带Authorization: Bearer JWT或自定义 Header如X-Auth-Token。提取Token网关从请求头中解析并提取 JWT 字符串形如xxxxx.yyyyy.zzzzz。基础格式校验检查是否为三段式Header.Payload.Signature用.分隔Base64Url 解码 Header 和 Payload验证 JSON 结构有效性拒绝格式错误、缺少签名段或含非法字符的 Token。签名验证关键步骤读取网关预配置的密钥对称密钥HS256或公钥非对称RS256/ES256使用对应算法重新计算签名并与 Token 中 Signature 段比对签名不匹配 → 拒绝请求401 Unauthorized。载荷Payload业务校验检查标准声明claimsexp过期时间→ 防止使用过期 Tokennbf生效时间→ 防止提前使用iat签发时间→ 可选校验时序合理性iss签发者、aud受众→ 确保 Token 由可信认证服务签发且面向本系统校验自定义声明如roles,tenant_id,permissions→ 支持细粒度 RBAC/ABAC 授权如网关根据roles: [admin]决定是否放行/admin/**路径。可选黑名单/状态检查查询 Redis 等缓存确认该 JWT 是否已被主动注销如登出或列入黑名单需配合 JWT 黑名单机制或短生命周期刷新令牌策略。鉴权通过 → 注入上下文 转发将解析后的用户身份信息如user_id,roles注入请求头如X-User-ID,X-Roles或网关上下文透传至后端服务供其做二次鉴权或个性化处理执行路由转发。⚠️ 注意网关不生成 JWT由独立认证服务如 Auth0、Keycloak、Oauth2 授权服务器签发网关不存储用户密码或会话状态符合无状态设计原则生产环境推荐使用 RS256 公钥验签避免密钥泄露风险。客户端 → [Auth Server 获取 JWT] ↓ 客户端 → [API网关] → 验证签名/时效/声明 → ✅ → 添加身份头 → 转发至后端服务 ↓ ❌ 401/403 响应