セキュリティの例

このトピックでは、レコードを非表示にする ClearQuest® セキュリティの例を示します。

レコードを非表示にする方法を示す この例では、Logic Equipment、Widgets Inc.、Modern Software の 3 社を顧客として持つ企業を 想定しています。Defect レコード タイプのレコードを制御し、 顧客が実動データベースにアクセスして、次のタスクを実行できるようにします。

Modern Software の顧客がデータベースにログインしたときは、Widgets Inc.、Logic Equipment、 社内のチームによって登録された障害が表示されないようにします。 また、Modern Software の顧客が Rational® ClearQuest クライアント で クエリーを作成した場合、結果セットに含まれる情報は、Modern Software のほかの顧客が登録した障害に関する情報に 限定します。

この例では、次の手順について説明します。

この手順には、さまざまなユーザー アクセス権限が必要です。 この例が示す手順のリストを完了するには、スーパーユーザー権限が必要です。

この例では、事前定義された DefectTracking スキーマに基づくスキーマを使用します。このスキーマには、Defect レコード タイプと Customer レコード タイプがあります。 また、スキーマがチェックアウトされていると仮定します。

セキュリティ コンテキスト フィールドの作成

Defect レコードへのアクセスを制御するため、Defect レコード タイプに、Customer レコードを参照する セキュリティ コンテキスト フィールドを作成します。レコード フィールド グリッドでフィールドを作成し、 そのフィールドをレコード フォームに追加して、スキーマの変更を適用します。

セキュリティ コンテキスト フィールドは、Reference フィールド タイプでなければなりません。複数のセキュリティ コンテキスト フィールドを追加できます。 そうする場合は、該当するタイプのレコードを表示できるいずれか 1 つのグループの メンバである必要があります。

Defect レコード タイプにセキュリティ コンテキスト フィールドを作成するには

  1. Designer を開始します。[レコード タイプ] > [Defect] をクリックして、[フィールド] をダブルクリックします。
  2. レコード フィールド グリッドで、customer_defects という名前のフィールドを作成し、 フィールド タイプとして [Reference] を選択します。(新規フィールドを作成しても、 既存の Reference タイプ フィールドを使用してもかまいません。)
  3. customer_defects フィールドを右クリックし、[フィールドのプロパティ] をクリックします。
  4. [フィールドのプロパティ] ウィンドウで、[参照先] リストから Customer レコードを選択します。

    [参照先] リストで Customer レコード タイプを 選択すると、[セキュリティ コンテキスト] チェック ボックスがオンになります。

    [Ratl_Security] という名前の ページが、セキュリティ コンテキスト (Customer) レコード タイプの登録フォームとデフォルト フォームに 追加されます。Rational ClearQuest クライアント でこのページを使用して、 レコードを表示できるグループを選択します。([Ratl_Security] ページの名前は変更できます。 「フォーム ページ (タブ) 名の変更」を参照してください。

注: フィールドを作成して、フィールドをレコード フォームに追加するには、 スキーマ デザイナ権限またはスーパーユーザー権限が必要です。

複数のセキュリティ コンテキスト フィールドを レコード タイプに追加する例として、Customer レコード タイプを参照する セキュリティ コンテキスト フィールドと、Quality_Assurance レコード タイプを参照する 別のセキュリティ コンテキスト フィールドを追加できます。 Customer レコード タイプに顧客を追加し、Quality_Assurance レコードに Quality Assurance グループのメンバを追加すると、 これらのレコード タイプのグループ リストに属するユーザーは誰でも、 セキュリティの制御下にあるレコードにアクセスできます。

ログインしたユーザーに基づいて、 フィールドにデータを取り込むフックを含めることができます。 こうすると、確実に有効な値をフィールドに 設定できます。特定のアクションをユーザーに実行させないようにすることもできます。 例えば、障害を閉じることができるのは社内のユーザーのみに制限して、 顧客はレコードを削除できないように設定できます。 詳細については、「その他の Rational ClearQuest セキュリティ機能の使用法」を参照してください。

フォームへのセキュリティ コンテキスト フィールドの追加

customer_defects フィールドを作成したら、 そのフィールドを Defect レコード フォームに追加する必要があります。

作成した customer_defects フィールドを Defect レコード フォームに追加するには

  1. Designer を開始します。
  2. [レコード タイプ] > [Defect] > [フォーム] をクリックして、[Defect_Base] をダブルクリックします。
  3. [フィールド リスト] で、[customer_defects] フィールドを選択し、 それをフォーム上にドラッグします。

スキーマ変更の適用

新規フィールドを追加したら、 スキーマをチェックインして、スキーマ変更をユーザー データベースに適用する必要があります。 この手順を実行すると、変更を元に戻すことはできません。詳細については、「スキーマのカスタマイズ」を参照してください。

ユーザー グループの作成

Customer セキュリティ コンテキスト レコードに 関連付けるグループを作成し、そのグループにユーザーを追加し、 新しいユーザー情報でユーザー データベースを更新します。 この例では、Widgets Inc.、Modern Software、Logic Equipment 用のユーザー グループを作成し、 各グループにユーザーを追加します。

各自のセキュリティ システムでは、既存のグループも使用できます。また、追加のグループも作成できます。 例えば、社内ユーザーが登録したすべてのレコードを表示できるグループ、 すべての企業が登録したすべてのレコードを表示できるグループ、 誰が登録したかに関係なくすべてのレコードを参照できるグループなどです。

グループ作成の詳細については、「新規ユーザー グループの作成」と「グループへのユーザーの追加」を参照してください。

注: ユーザーやグループを作成するには、 ユーザー管理者権限が必要です。

セキュリティ コンテキスト レコードの登録

データベースへのアクセスを 許可する各企業 (Widgets Inc.、Modern Software、Logic Equipment) の Customer レコードを登録します。

セキュリティ コンテキスト レコードを登録するには

  1. Rational ClearQuest クライアント で、[アクション] > [新規] > [Customer] をクリックします。
  2. Customer 登録ウィンドウで、Widgets Inc.、Modern Software、Logic Equipment の Customer レコードを 登録します。

すべてのレコードを参照できるグループを作成することもできます。 すべてのレコードを参照できるグループを作成する場合は、このグループを各 Customer レコードに追加します。

注: セキュリティ コンテキスト レコードを登録するには、セキュリティ管理者権限または スーパーユーザー権限が必要です。

各セキュリティ コンテキスト レコードへのグループの関連付け

次に、特定のグループを各セキュリティ コンテキスト レコードに関連付ける必要があります。 例えば、Widgets Inc.、Logic Equipment、Modern Software の各企業用に登録した Customer レコードに関連付けるユーザー グループを選択します。 これらのグループには、レコードを表示する権限と変更する権限を付与するユーザーが含まれます。

グループを Customer レコードに関連付けるには

  1. Rational ClearQuest クライアント で、 すべての Customer セキュリティ コンテキスト レコードのリストを表示する「すべての顧客」というクエリーを作成して実行します。
  2. Widgets Inc. の Customer レコードを開き、[Ratl_Security] タブをクリックします。 次に、[アクション] > [Modify] をクリックします。
  3. [Ratl_Security] ページで、Widgets Inc. グループを選択し、[追加] をクリックします。[適用] をクリックします。
  4. Modern Software のレコードと Logic Equipment のレコードについても、 ステップ 2 とステップ 3 を繰り返します。
注: グループを選択するには、 セキュリティ管理者権限またはスーパーユーザー権限が必要です。

レコードの編集によるグループへの権限の付与

次に、顧客がアクセスできる各 Defect レコードを編集して、顧客を customer_defects フィールドに割り当てます。 このアクションにより、Logic、Widgets、Modern の各グループに レコードへのアクセス権が与えられます。この手順は、セキュリティ コンテキスト レコードの値をセキュリティ コンテキスト フィールドに割り当てます。

Rational ClearQuest クライアント で、次の手順に従います。

  1. 制御する Defect レコードが格納されているデータベースにログオンします。
  2. 「すべての障害」クエリーを実行して、すべての Defect レコードを表示します。
  3. 制御するレコードを選択して編集します。 例えば、見出しに [ログイン画面にスペルミスがある] とある Defect レコードを選択します。
  4. [customer_defects] リストで、このレコードへのアクセス権を与える顧客を選択します。 例えば、Widgets Inc. を選択して、Widgets_Inc グループのユーザーにこのレコードへのアクセス権を与えます。
  5. 各レコードを編集して、Logic Equipment グループと Modern Software グループにも 権限を付与します。

これで、レコードを非表示にするために必要な作業は完了しました。

Widgets Inc. の顧客は、データベースにログインして、 次のタスクを実行できるようになりました。


フィードバック