如何与关系数据库一起维护LDAP系统的完整性?

时间:2016-08-20 10:30:05

标签: java postgresql ldap rdbms referential-integrity

目前,我正在开发一个针对外部LDAP系统对用户进行身份验证的应用程序。但是,应用程序特定数据保存在关系数据库中。

我的问题是,是否存在设计模式或类似的最佳做法,以保持我的数据库中有关用户条目的参照完整性?

我的一个想法是从LDAP系统中获取用户的唯一标识符(一旦首次登录此用户),并将其与生成的主键一起存储在我的数据库的表中。如果我这样做,我将能够在其他表中引用主键。这是一个好方法吗?还有更好的选择吗?

我使用的是Active Directory,java后端和postgres数据库。

1 个答案:

答案 0 :(得分:0)

您所描述的基本上是我为在单独的数据库中存储用户登录信息(或实际上任何LDAP相关信息)的应用程序所采用的方法。

基本上,当他们登录解码他们的objectGuid属性值以获取他们的UUID并使用该UUID字符串在数据库中执行其余的查找时。这有助于用户帐户重命名,因为您可以只查找UUID,如果匹配,则重新同步用户的数据(如果其他任何内容保存在数据库中)。