新しい RBAC ロールをオンデマンドで生成する方法を探しています。2 つの主要なパラメーターを持つ RBAC システムを開発しています。単にユーザーをロールに関連付け、そのロールを権限のグループに関連付けるだけではなく、ユーザーは「特定のプロジェクトの」ロールに関連付けることができ、ユーザーはそのプロジェクトのみ (またはユーザーがそのロールを保持している他のプロジェクト) に対してそのロールの権限を持つことができます。ユーザーは、あるプロジェクトで特定の役割を持ち、別のプロジェクトで別の役割を持つことができます。ロールに付与される権限は、すべてのプロジェクトで一貫しています。また、プロジェクトに対するユーザーの権限は、そのユーザーがプロジェクトで持っている役割に基づいています。
2 つのパラメーターを持つ RBAC システムに応答して、lmontrieuxプロジェクトごとに異なる役割を使用することをお勧めします。たとえば、ロール「admin」がプロジェクト「P1」と「P2」で使用されている場合、ロール「P1:admin」と別のロール「P2:admin」を作成します。これは進むべき道のように思えますが、静的な役割のセットを作成したくありません。まず第一に、いくつかのプロジェクトがあり、プロジェクト ID を除いてすべての点で同一のパーミッションのセットをいくつか書くべきではありません。次に、さらに重要なことに、プロジェクト「P3」、「P4」、および「P5」はまだ存在しておらず、存在する場合はユーザーによって作成されます。予測できない数の将来のプロジェクトに対して静的な役割ベースの権限を作成することはできないため、一般的な標準に基づいてプロジェクト固有の役割を生成する方法を開発する必要があります。
これは、オブジェクトとクラスを使用するのに適したアプリケーションだと思いますが、構造化する方法がわかりません。