ロールに基づいたOpenLDAP構造とユーザーメンテナンス

ロールに基づいたOpenLDAP構造とユーザーメンテナンス

私は OpenLDAP サーバーの構造を計画しており、複数のアプリケーション (10 個のアプリケーションとします) と統合します。これには 8 つの内部アプリケーション (Web およびモバイル アプリケーション) と、GitLab などの外部サービスが 2 つあります。

LDAP ユーザーとアプリケーションの階層

このシナリオは、1000 人のユーザーが 10 個のアプリケーションすべてを使用するようなものです。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=comou=accounts,dc=example,dc=comまたはに保持されますou=people,dc=example,dc=com
  • 役割は一般に、ある種のグループ ( groupOfNamesgroupOfUniqueNamesまたはorganizationalRole) によって担われると考えられており、 のようなもので保持されますou=groups,dc=example,dc=comgroupOfNamesが最も一般的です。
  • ロールに のような名前を付けることを検討してくださいcn=admins+ou=app1,ou=groups,dc=example,dc=com。こうすることで、 を検索して app1 のすべてのロールを取得できるようになりますou=app1

関連情報