2

我需要您对以下多租户的建议:

实际上我需要为我的应用程序实现多租户。我已经将它用于使用 DB/Schema 的传统流程(例如,每个租户的单独模式)。

现在我还需要集成来自 LDAP 和多租户的用户验证。所以我在想的是,如果我将用户信息 + 数据库/架构信息(数据库连接信息)存储在 LDAP 服务器中以获得应用程序的更多动态特性。因为有了这个我就可以连接任何数据库/模式(不管它们的物理位置)。

您对这种方法有何看法,真的可行吗?如果您有任何缺点,请分享。

感谢和问候。

4

1 回答 1

0

听起来您正试图在您的系统上托管多个客户端的系统,并且每个客户端可能有来自多个位置的多个连接。从您的问题来看,尽管数据库可能不在同一个集群上,但您似乎为每个数据库放置了一个客户。

要做的第一件事是在 pg_hba.conf 中适当地锁定 PostgreSQL,并仅公开您想要公开的那些数据库/用户组合。如果你走这条路,LDAP 对我来说发布连接信息听起来很理智,因为这意味着你可以控制谁可以访问哪些帐户。另一个可能紧密相关的选择是颁发 SSL 证书并由客户端使用证书身份验证,因此可以向他们颁发证书并使用它进行连接。您甚至可以针对 LDAP 对 PostgreSQL 进行身份验证。

因此,一旦您以其他方式妥善保护了东西,这里就有很多选项可以将这两者结合使用。祝你好运。

于 2012-09-08T14:21:38.977 回答