我正在规划 OpenLDAP 服务器的结构,以便将其与多个应用程序(假设 10 个应用程序)集成。其中,我有 8 个内部应用程序(Web 和移动应用程序)和另外 2 个外部服务,例如 GitLab。
我们的场景是使用全部 10 个应用程序,有 1000 个用户。1000 个用户中将有不同的角色,如管理员、经理、开发人员等。
所有 1000 名用户都有权/访问登录应用程序(如图所示,cn=application3、cn=application4、cn=application5)。
对于 cn=application1 和 cn=application2(它们是类似 GitLab 的外部服务,并且根据外部应用程序包含单独的角色),只有少数用户有权限访问/使用。
根据我们的要求,我们在 cn=group1 中插入了 1000 个用户。并且我们将一些需要访问这些应用程序的用户移至 cn=application1 和 cn=application2。将来,我的组织规模将会增加,应用程序数量也会增加。目前,我们继续使用如图所示的结构。这是最佳实践吗?
有人能指导我如何解决这个问题吗?由于我是 OpenLDAP 新手,如果我提到任何错误,请告诉我。
答案1
你的布局看起来很奇怪。
- 通常情况下,用户被保留在
ou=users,dc=example,dc=com
、ou=accounts,dc=example,dc=com
或 中ou=people,dc=example,dc=com
。 - 角色通常被认为是由某一类型的群体(
groupOfNames
、groupOfUniqueNames
或organizationalRole
)组成的,并以 之类的形式持有ou=groups,dc=example,dc=com
。groupOfNames
是最常见的。 - 考虑将您的角色命名为类似
cn=admins+ou=app1,ou=groups,dc=example,dc=com
。这样,您可以通过搜索 来提取 app1 的所有角色ou=app1
。