在多租户微服务中的RBAC。

问题描述 投票:0回答:1

我是多租户云SaaS开发的一部分.目前我们有大约15个微服务.我们使用mongo作为后端,每个租户的db作为租户的sepration.我们现在正试图为整个平台设计rbac.下面是我有关于相同的问题。

  1. 我应该有一个中央的authz微服务来管理我的rbac autz吗? a. 有了这个,如果authz服务失败,所有的微服务都会受到影响,而且平台很容易或无法使用。

  2. 我是否应该为每个微服务配备一辆副车作为我的autz 没有单点故障......如果某项服务的authz故障,其他服务可以继续工作。(好)每个服务都有自己的权限......(好)认证服务可以存储角色和组信息的权限,它必须达到个别服务的管理(权限CRUD)......(坏)Authz评估发生在个别服务级别。

还有其他方法吗?

谢谢Jeet

authorization microservices multi-tenant saas rbac
1个回答
0
投票

我想选择以下解决方案

  1. API网关会做基本的认证检查(令牌有效性、租户识别等、客户端id验证等),如果任何理智性检查失败,从这里返回401

  2. 在单个的Microservice中,我们会有一个中间件拦截请求,并针对被操作的资源(实体)检查是否有正确的权限,如果没有权限,就让微服务从这里返回403。

© www.soinside.com 2019 - 2024. All rights reserved.