当前位置: 首页 > 知识库问答 >
问题:

多租户微服务中的RBAC

公孙栋
2023-03-14

>

  • 我是否应该有一个中央authz微服务来管理我的rbac autz?a.如果authz服务失败,那么所有的微服务都会受到影响,并且平台很容易出现或者无法使用。服务将存储跨微服务的所有资源的角色/权限。对于到达api gw的每个请求,post auth将转到authz,并且在调用微服务之前,它可以被拒绝。(好的)

    我应该为每个微服务有一个侧车作为我的autz没有单点故障...如果authz为某个服务失败了,其他服务可以继续工作。(好)每个服务都有其on权限。(好)Auth服务可以存储角色和组信息,用于它必须达到的权限到个别服务的管理(权限CRUD)。(坏)authz评估发生在个别服务级别。(不确定)

    还有别的办法吗?

    谢谢Jeet

  • 共有1个答案

    慕佑运
    2023-03-14

    我想选择下面的解决方案

    >

  • API网关进行基本的身份验证检查(令牌有效性、租户标识等、客户端id验证等),如果任何健全性检查失败,则从这里返回401

    在单个微服务中,我们将有一个中间件,它拦截请求,并根据正在操作的资源(实体)检查正确的权限,如果没有权限,则让微服务从这里返回一个403。

  •  类似资料:
    • 如果想把多租户系统扩展到 Northwind 数据库中的其他表,我们会重复角色所做的相同步骤。虽然看起来没那么难,但是有太多的手工工作。 Serenity 提供服务行为系统,它可以允许我们拦截添加、更新、检索、列表、删除的操作处理并向其添加用户自定义代码。 在这些处理中有一些操作(如像获取日志、唯一约束验证等)已经使用服务行为实现了。 行为(Behaviors)可能被所有的行(rows)激活,或被

    • 目前为止,我们已经让用户页面在多租户风格下工作。为使它工作,我们看起来并没有做太多的变化。但请记住,我们正在对一个原来不是多租户的系统作修改。 让我们在 Roles 表应用类似的原则。 再一次,一个租户的用户在不能查看或修改其他租户的角色,每个租户的用户是相互独立工作的。 我们先在 RoleRow.cs 添加 TenantId 属性: namespace MultiTenancy.Administ

    • 我在创建可以动态连接到多个数据库的spring boot应用程序时遇到问题,具体取决于用户输入。基本上,应用程序在不同的数据库上运行相同的sql查询。建模我的尝试在此之后,我收到以下错误: -- 配置类: 属性文件: 关于我如何实现这一点有什么想法吗?正如你所知,我对这种多数据库配置还不是非常精通。

    • 保护数据。 清除租户级别的旧数据。 到目前为止,我们的调查结果是,我们可以为每个租户使用单独的Redis实例--这对我们来说不是一个好的解决方案。 我们发现的另一个选项是用“tenant_id:”前缀命名密钥空间。这个选项解决了第一点--数据现在是安全的,但我们还有第二点需要解决。

    • 我有一个由3个节点组成的HDF集群,其中安装了Nifi。我的目标是在Nifi水平上实现多租户(也许不是最好的词)。意思是我想要两件事: null 任何帮助都很感激... 谢谢你的回答

    • 当使用 tenant2 身份登录并打开它的编辑窗体,没有显示选择 Tenant 下拉列表,因此就不能改变它的 Tenant 吗? 错! 如果是一个普通的用户,就不能改变 Tenant。但如果有一些 Serenity 及服务器工作原理的知识,就能修改 Tenant。 当你正在使用 web 时,你得更认真地对待安全。 非常容易就在 web 应用程序中创建安全漏洞,除非你在客户端和服务器端都进行验证处理