我正在建立一个saas平台,我正在努力解决如何建模我的auth流程。该系统将是多个多租户应用程序,但我想统一用户授权和认证。基本上,每个美国州都有自己的网络应用程序/资源服务器/数据库,该州的每个县都将是一个单独的租户。我无法将所有状态组合到一个应用程序中,因此这不是一个选项。
我想将所有用户及其信息/密码放入一个连接到我的身份验证服务的数据库中。但每个州(网络应用程序)中的每个县(租户)管理员都需要能够添加&管理他们的用户和他们的角色。因此,身份验证服务需要了解每个应用程序中的所有不同租户。我还需要能够将在每个数据库中创建的项链接到创建它的用户。如果我创建对象“X”并且我县中的另一个用户查看该项目,他们可以看到“Kovaci”创建了这个。
我也不希望状态之间存在SSO,但如果可能,我希望用户在一个应用程序中成为多个租户的一部分(尽管不是必需的)。原生iOS /移动应用程序是我需要支持此流程的另一个客户端。
我使用这个bitoftech文章基于:http://bitoftech.net/2014/10/27/json-web-token-asp-net-web-api-2-jwt-owin-authorization-server/comment-page-1/#comments
这是我的油漆快速模型:multi saas design
我的问题一般是如何设计这个身份验证部分?我可以将所有用户存储在一个auth db中,就像我的目标一样吗?如果是这样,租户管理员如何管理它们以及如何将单独的应用程序数据库中的表链接到用户在auth db中的当前信息?