✅已解决 | isAllowed方法性能问题

managementClient.acl().isAllowed(userId, resource, action)

官方文档上说,对于上述方法

Authing 策略引擎会根据你配置的权限策略,动态执行策略,最后返回 true 或者 false,你只需要根据返回值就能判断用户是否具备操作权限

我理解的就是直接调用Authing saas的API去做判断。那么我的API每次的权限判断都是需要去调用Authing的API进行决策用户是否有权限,这种做法对吗?是不是会有性能上的问题?或者说authing对于isAllowed调用能提供什么样的SLA保证?

我们服务内部有缓存优化、数据库查询优化、决策引擎优化决策的效率和高可用性。我们建议在客户端也根据对实效性的要求添加缓存机制和逃生机制。

如果对实时性要求没那么高,也可以使用 OIDC AccessToken 的 scope,可以在本地根据 AccessToken 的 scope 来做权限校验。

OK,谢谢~~~~