elasticsearch 存储用户配置文件,elasticsearch,ldap,identity,openldap,opendj,elasticsearch,Ldap,Identity,Openldap,Opendj" /> elasticsearch 存储用户配置文件,elasticsearch,ldap,identity,openldap,opendj,elasticsearch,Ldap,Identity,Openldap,Opendj" />

elasticsearch 存储用户配置文件

elasticsearch 存储用户配置文件,elasticsearch,ldap,identity,openldap,opendj,elasticsearch,Ldap,Identity,Openldap,Opendj,我想存储用户配置文件信息。在网上研究了一下之后,我对以下选项感到困惑: 使用LDAP服务器(例如:OpenDJ)——我可以编写Java客户端,它可以使用LDAP API与LDAP服务器交互 将用户配置文件作为JSON文档存储在数据库中(如弹性数据库中)——然后,无SQL数据库可以索引文档以缩短查找时间 在选择其中一种方法之前,我应该记住哪些因素?如果您的用户群是一个已知的组,可能已经在现有LDAP存储库中拥有帐户,或者需要在系统之间共享用户帐户信息,那么使用并添加到现有LDAP存储库是有意义的

我想存储用户配置文件信息。在网上研究了一下之后,我对以下选项感到困惑:

  • 使用LDAP服务器(例如:OpenDJ)——我可以编写Java客户端,它可以使用LDAP API与LDAP服务器交互

  • 将用户配置文件作为JSON文档存储在数据库中(如弹性数据库中)——然后,无SQL数据库可以索引文档以缩短查找时间


  • 在选择其中一种方法之前,我应该记住哪些因素?

    如果您的用户群是一个已知的组,可能已经在现有LDAP存储库中拥有帐户,或者需要在系统之间共享用户帐户信息,那么使用并添加到现有LDAP存储库是有意义的

    如果您从零开始,主要是外部未知用户,除了这一个应用程序之外,他们与您的基础架构没有其他交互,那么LDAP在imo中不是一个好的选择,因为您在创建和管理服务器时会遇到开销。然后,轻量级JSON方法似乎更合适(即使LDAP中的L代表“轻量级”)

    预期用户的数量不太重要——在这两种情况下,您都需要小心地处理大量用户


    如果您的用户群是一个已知的组,可能已经在现有LDAP存储库中拥有帐户,或者需要在系统之间共享用户帐户信息,则使用并添加到现有LDAP存储库是有意义的

    如果您从零开始,主要是外部未知用户,除了这一个应用程序之外,他们与您的基础架构没有其他交互,那么LDAP在imo中不是一个好的选择,因为您在创建和管理服务器时会遇到开销。然后,轻量级JSON方法似乎更合适(即使LDAP中的L代表“轻量级”)

    预期用户的数量不太重要——在这两种情况下,您都需要小心地处理大量用户


    请参阅此问题,以了解更多信息。首先,如果您正在存储密码,那么在我看来,使用LDAP是一件轻而易举的事。请参阅


    否则,我建议您对每个解决方案进行PoC(不要忘记为OpenDJ添加索引,您也可以使用Rest2LDAP),看看它们如何满足您的需求。这两种产品都是开源的,因此很容易入门。

    首先,如果您存储密码,那么在我看来,使用LDAP是一件轻而易举的事。请参阅


    否则,我建议您对每个解决方案进行PoC(不要忘记为OpenDJ添加索引,您也可以使用Rest2LDAP),看看它们如何满足您的需求。这两种产品都是开源的,因此很容易入门。

    感谢您的回复。据我所知,LDAP将数据存储在树结构中,而像弹性搜索这样的无SQL数据库将JSON文档存储在平面结构中。如果我使用的是无SQL数据库,是否有任何特定的用例会因为不使用LDAP树结构而面临问题?我想到的一个用例是,某个特定组下的所有用户都需要移动到另一个组。您能告诉我您对此的想法吗?大多数LDAP服务器使用平面层次结构来存储用户ID。除非它也用于文件和打印。(即Microsoft Active Directory)。LDAP是无sql的好选择,通常具有内置的访问控制、密码策略等。我不明白LDAP中的树结构为什么对您很重要。除非您希望在层次结构树中组织用户群,例如使用组织单位(OU),否则我认为LDAP数据以树形式存储对您来说并不重要,因为所有用户对象都将位于同一个节点中。感谢您的响应。据我所知,LDAP将数据存储在树结构中,而像弹性搜索这样的无SQL数据库将JSON文档存储在平面结构中。如果我使用的是无SQL数据库,是否有任何特定的用例会因为不使用LDAP树结构而面临问题?我想到的一个用例是,某个特定组下的所有用户都需要移动到另一个组。您能告诉我您对此的想法吗?大多数LDAP服务器使用平面层次结构来存储用户ID。除非它也用于文件和打印。(即Microsoft Active Directory)。LDAP是无sql的好选择,通常具有内置的访问控制、密码策略等。我不明白LDAP中的树结构为什么对您很重要。除非您想在层次结构树中组织用户群,例如使用组织单位(OU),否则我认为LDAP数据以树的形式存储这一事实对您来说并不重要,因为所有用户对象都将位于同一个节点中。回答得好。仔细想想,LDAP是一个很好的无sql选择,并且通常具有内置的访问控制。仔细想想,LDAP是一个很好的无sql选择,并且通常具有内置的访问控制。