如何解决WSO2 API 管理器 - 范围验证失败
发布的 API 中有两个资源,如下所示:
资源 /servico-vault-nubank/access
与通过以下配置生成的令牌一起工作:
当我调用 /servico-vault/accounts/1
时,它返回以下错误:
<ams:fault
xmlns:ams="http://wso2.org/apimanager/security">
<ams:code>900910</ams:code>
<ams:message>The access token does not allow you to access the requested resource</ams:message>
<ams:description>User is NOT authorized to access the Resource: /servico-vault/accounts/{userId}. Scope validation failed.</ams:description>
</ams:fault>
我在这里看到的唯一区别是第二种情况下的 URL 模板。支持模板的网址有什么特殊的配置吗?
重要提示:此错误仅在我通过 API 产品调用时发生。直接呼叫有效。
更新:如果我将端点从 GET /api/user/{userId}
更改为 GET /api/user/{userId}/list
,它确实有效。似乎如果 URL 变量是 URI 的最后一部分,就会出错。
提前致谢,
解决方法
好吧,似乎没有优雅的解决方案。我不得不删除 API 产品并重新创建。现在它可以工作了。
我在 WSO2-AM 官方 github 中打开了一个错误报告。
https://github.com/wso2/product-apim/issues/9766
如果有人对此问题有更好的解决方案,请告诉我。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。