離散数学

情報システムにおけるアクセスロールの組合せ設計

情報システムにおけるアクセス権限の組合せ設計は、システム管理者が様々なロールを定義する上で不可欠です。この問題では、特定の制約条件下で作成可能なロールの総数を、組合せ論の原理を用いて計算します。

組合せ論

情報システムにおけるアクセス権限の組合せ設計は、システム管理者が様々なロールを定義する上で不可欠です。この問題では、特定の制約条件下で作成可能なロールの総数を、組合せ論の原理を用いて計算します。

情報システムにおけるアクセスロールの組合せ設計

ある情報システムには、以下の6つの独立したセキュリティ権限があります。 {P1, P2, P3, P4, P5, P6}

システム管理者は、これらの権限を組み合わせて「ロール」を定義します。ロールは以下の要件を満たす必要があります。

  1. 1つのロールは、最低2つ、最大4つの異なる権限を含む。
  2. 権限 P1 は、すべてのロールに必ず含まれる。
  3. 権限 P2P3 は、同時に同じロールに含まれることはできない。(どちらか一方、あるいは両方含まないことは許容されます。)

上記の条件を満たす異なるロールは何通り作成できますか?

解答を見る

この問題を解くために、与えられた条件を順に適用しながら可能な組合せを数えます。

ステップ1: P1 を必須とする条件の適用 すべてのロールは P1 を必ず含む必要があります。これは、P1 を選ぶことは既に決定されており、残りの権限 {P2, P3, P4, P5, P6} の中から選択することになります。残りの権限は5つです。

ステップ2: ロールのサイズ条件の適用 ロールは最低2つ、最大4つの異なる権限を含む必要があります。 P1 は既に含まれているため、残りの5つの権限の中から選ぶべき権限の数は、以下のようになります。

  • ロールが合計2つの権限を持つ場合: P1 以外の権限を1つ選ぶ。
  • ロールが合計3つの権限を持つ場合: P1 以外の権限を2つ選ぶ。
  • ロールが合計4つの権限を持つ場合: P1 以外の権限を3つ選ぶ。

ステップ3: P2P3 の排他条件の適用 P2P3 は同時に同じロールに含まれることはできません。これを考慮して、残りの5つの権権限 {P2, P3, P4, P5, P6} から選ぶ数を計算します。この条件は以下の3つのケースに分けられます。

ケースA: P2 を含み、P3 を含まない ケースB: P3 を含み、P2 を含まない ケースC: P2P3 も含まない

残りの選択肢は {P4, P5, P6} の3つの権限です。

各ロールサイズごとの計算

I. ロールが合計2つの権限を持つ場合 ( P1 以外の権限を1つ選ぶ)

  • ケースA (P2を含む): P1P2 を含み、P3 を含まない。残り1つの権限を選びますが、既に2つ選んでいるため、これ以上選ぶ権限はありません。このケースはロールサイズが2で完結します。
    • 組合せ: P1, P2 のみ。 (1通り)
  • ケースB (P3を含む): P1P3 を含み、P2 を含まない。
    • 組合せ: P1, P3 のみ。 (1通り)
  • ケースC (P2もP3も含まない): P1 を含み、P2, P3 を含まない。残りの権限 {P4, P5, P6} から1つ選ぶ。
    • 組合せ: C(3, 1) = 3通り

合計: 1 + 1 + 3 = 5通り

II. ロールが合計3つの権限を持つ場合 ( P1 以外の権限を2つ選ぶ)

  • ケースA (P2を含む): P1P2 を含み、P3 を含まない。残りの権権限 {P4, P5, P6} から1つ選ぶ。
    • 組合せ: C(3, 1) = 3通り
  • ケースB (P3を含む): P1P3 を含み、P2 を含まない。残りの権権限 {P4, P5, P6} から1つ選ぶ。
    • 組合せ: C(3, 1) = 3通り
  • ケースC (P2もP3も含まない): P1 を含み、P2, P3 を含まない。残りの権権限 {P4, P5, P6} から2つ選ぶ。
    • 組合せ: C(3, 2) = 3通り

合計: 3 + 3 + 3 = 9通り

III. ロールが合計4つの権限を持つ場合 ( P1 以外の権限を3つ選ぶ)

  • ケースA (P2を含む): P1P2 を含み、P3 を含まない。残りの権権限 {P4, P5, P6} から2つ選ぶ。
    • 組合せ: C(3, 2) = 3通り
  • ケースB (P3を含む): P1P3 を含み、P2 を含まない。残りの権権限 {P4, P5, P6} から2つ選ぶ。
    • 組合せ: C(3, 2) = 3通り
  • ケースC (P2もP3も含まない): P1 を含み、P2, P3 を含まない。残りの権権限 {P4, P5, P6} から3つ選ぶ。
    • 組合せ: C(3, 3) = 1通り

合計: 3 + 3 + 1 = 7通り

最終結果 すべてのケースを合計します。 総ロール数 = (ロールサイズ2の合計) + (ロールサイズ3の合計) + (ロールサイズ4の合計) 総ロール数 = 5 + 9 + 7 = 21通り

したがって、上記の条件を満たす異なるロールは21通り作成できます。