WSO2 IS(6.1.0)作为WSO2 AM(4.2.0)密钥管理器时API订阅验证失败
解决WSO2 AM 4.2.0订阅验证失败(错误码900908)问题
以下是针对该错误的排查和解决步骤:
1. 确认应用与API的订阅关联有效性
- 核实开发者门户中PizzaApp对PizzaShack API的订阅状态为Active,且订阅的环境(Production/Sandbox)与调用API时使用的环境完全一致。
- 检查生成客户端凭据的应用确实是已完成订阅的PizzaApp,避免误选其他未订阅的应用。
2. 同步IS与AM的订阅数据
- 登录WSO2 IS控制台,进入服务提供者模块,找到PizzaApp对应的服务提供者,确认其OAuth2/OpenID Connect配置中已正确关联AM的API订阅信息。
- 重启WSO2 AM和IS节点,强制触发两者间的元数据与订阅数据同步。
3. 验证令牌的Scope权限
- 生成令牌时,确保请求参数中包含API所需的Scope(例如PizzaShack API默认的
pizzashack_api_scope或自定义Scope)。 - 使用JWT解码工具解析令牌,检查
scope字段是否包含API要求的权限,若缺失需重新生成携带正确Scope的令牌。
4. 检查密钥管理器的订阅验证配置
- 登录WSO2 AM控制台,进入密钥管理器,找到WSO2 IS密钥管理器的配置项,确认订阅验证功能处于开启状态。
- 确认配置中的API Publisher和Store地址指向正确的AM节点,且IS节点能正常访问这些地址。
5. 查看日志定位具体原因
- 打开WSO2 AM节点的
repository/logs/wso2carbon.log,搜索错误码900908,通过详细日志定位验证失败的具体触发点(如订阅过期、应用-API关联不匹配等)。 - 同时检查WSO2 IS节点的日志,排查令牌生成与验证流程中的异常信息。
内容的提问来源于stack exchange,提问作者Lilan Mihiranga
相关产品推荐
相关产品推荐

