Need to Knowコンポーネントの管理

この付録では、コンテンツ・サーバーでNeed to Know (NTKまたはNtkDocDisclosure)コンポーネントをインストールおよび構成する方法について説明します。また、このコンポーネントを使用してコンテンツ・サーバーのセキュリティ分野(コンテンツへのユーザー・アクセス、検索結果、ユーザー資格情報、メタデータ変更の動作、および検索でのWHERE句の使用など)をカスタマイズする方法についても説明します。

ここで説明する項目は、次のとおりです。

概要

Need to Know (NtkDocDisclosureまたはNTK)コンポーネントでは、次のコンテンツ・サーバー・セキュリティ分野のカスタマイズをサポートしています。

たとえば、標準セキュリティでは、ユーザーが表示できるのは最低でも読取り権限を持つコンテンツのみです。Need to Knowコンポーネントでは、これを次の2通りの方法で変更できます。

Need to Knowコンポーネントには、HTML管理インタフェースが用意されており、セキュリティ構成ステータス情報の表示、セキュリティ構成値の編集、およびセキュリティ構成値に対するIdocスクリプトの表示とテストを行うことができます。

機能

Need to Knowコンポーネントの特徴は、次のとおりです。

アプリケーション

このコンポーネントは、次のような複雑なセキュリティ実装の開始点として使用できます。

Need to Knowコンポーネントのインストール

コンポーネントは、「コンポーネント・ウィザード」またはコマンドラインのComponentToolを使用してインストールします。

トピック

コンポーネント・ウィザードによるNTKコンポーネントのインストール

この手順では、コンポーネント・ウィザードを使用してNeed to Knowコンポーネントをインストールする方法を説明します。

  1. コンポーネント・ウィザードを起動します。スタンドアロン・アプリケーションの使用の詳細は、「スタンドアロン・モードでの管理アプリケーションの実行」を参照してください。

  2. 「コンポーネント・ウィザード」ページで、「オプション」「追加」を選択します。

  3. 「コンポーネントの追加」ウィンドウで、「既存のコンポーネントを使用」のラジオ・ボタンを選択します。

  4. WebCenter Content shiphomeがインストールされた場所に移動し、Need to Knowコンポーネントを直接見つけます。たとえば:

    MW_HOME\WC_CONTENT_ORACLE_HOME\ucm\cs\idc\components\NeedToKnow

  5. NeedToKnow.hdaファイルを選択し、「OK」をクリックします。

  6. 「有効化」をクリックします。

NTKコンポーネントが有効化されます。

ComponentToolを使用したNTKコンポーネントのインストール

この手順では、コンポーネント・ツールを使用してNeed to Knowコンポーネントをインストールする方法を説明します。

Component Toolを実行し、WC_CONTENT_ORACLE_HOMEの構成名とパスを使用して、次のパスのNeedToKnow.hdaファイルを指定します:

*MW\_HOME\\WC\_CONTENT\_ORACLE\_HOME*\ucm\cs\idc\components\NeedToKnow\NeedToKnow.hda

Need to Knowコンポーネントの構成

この項では、Need to Knowコンポーネントを使用した基本的なセキュリティ構成の設定手順について説明します。この手順では、セキュリティ構成変数、カスタム・メタデータ・フィールドおよびヒット・リスト・ロールの設定方法について説明します。基本的な構成の設定後、Need to Knowコンポーネント・インタフェースを使用して、セキュリティ構成の編集、テストおよび改善を行うことができます。

  1. コンテンツ・サーバー・ポータルで、「管理」「管理サーバー」「一般構成」を選択します。

  2. 「一般構成」の「追加の構成変数」で、テキスト領域の最下部までスクロールし、次のコードを追加します:

    SpecialAuthGroups=*group1*,*group2*,...

    コードでは、次の点に注意してください:

    • group1,group2,…を、Need to Knowコンポーネントを使用するセキュリティ・グループに置き換えます。

    • セキュリティ・グループは、小文字で入力する必要があります。

    • リストされていないセキュリティ・グループには、標準セキュリティが適用されます。

    ノート:

    Oracle WebCenter Content: Recordsなどのその他の製品にもSpecialAuthGroups構成変数を使用できるため、Need to Knowコンポーネントを使用するセキュリティ・グループに一意の名前を使用するよう注意してください。

  3. コンテンツ・アイテム・レベルの問合せを指定する場合は、Configuration Managerを使用して新規メタデータ・フィールドを追加します。(グローバル問合せのみを使用する場合は不要です)。新規メタデータ・フィールドは、Configuration Managerを使用して追加する必要があります。Need to Knowコンポーネント・インタフェースからは追加できません。

    • DocDisclosureQueryNeedToKnowなど、任意のフィールド名とタイトルを使用できます。

    • フィールドは、メモ・フィールドとして指定する必要があります。

    • フィールドの追加後、「データベース設計の更新」「検索索引の再構築」の順にクリックします。

    ノート:

    コンテンツ・サーバー・インスタンスに多くのコンテンツがすでに含まれている場合、検索索引の再構築には時間がかかります(数日かかる場合もあります)。システムの保守期間やシステムがあまり使用されていないときに再構築するように考慮してください。

  4. 「ユーザー管理」管理アプレットを使用して、ヒット・リスト・ロールを追加します。

    • hitlistNTKroleなど、任意のロール名を使用できます。

    • SpecialAuthGroups構成エントリで指定したすべてのセキュリティ・グループに、読取りアクセス権を付与します。

    • SpecialAuthGroups構成エントリで指定したセキュリティ・グループをチェックイン・ページまたは更新ページにリストするには、このロールに書込みアクセス権を付与する必要があります。

    • 2つのヒット・リスト・ロールを作成し、別の名前と権限を付与することができます。1つ目のロールを、コンテンツ検索の問合せロールとしてNeed to Knowコンポーネントに構成し、もう1つのロールを、コンテンツ・チェックインおよび更新の更新ロールとしてNeed to Knowコンポーネントに構成できます。

    • このロールはユーザーに割り当てないでください。ヒット・リスト・ロールが問合せまたは更新ロールとして構成された場合、ユーザーの属性に自動的に追加されます。

  5. Need to Knowセキュリティの範囲を超えるアクセス権をユーザーに設定する場合、「一般構成」ページを使用して「追加の構成変数」セクションに追加セキュリティ構成設定を含めます。テキスト領域の最下部までスクロールし、必要な構成設定を入力します。

  6. Need to Know問合せで使用する新規ユーザー属性フィールドを追加する場合、「ユーザー管理」ツールを使用してユーザー属性フィールドを追加します。

  7. Content Serverインスタンスを再起動します。

ノート:

Need to Knowコンポーネントをインストールすると、特定のセキュリティ構成値がIntradocDir/data/needtoknow/ntk_config.hdaファイルに格納されます。これらの値を編集するには、「管理インタフェース」で説明しているNeed to Know管理インタフェースを使用するか、ntk_config.hdaファイルを直接編集します。

Need to Knowコンポーネントの使用

この項の内容は次のとおりです。

セキュリティ構成のカスタマイズ

Need to Knowコンポーネントには、次の分野に重点を置いた追加のセキュリティ構成が用意されています。

コンテンツ・セキュリティ

標準セキュリティでは、セキュリティ・ロール、グループおよびアカウントを使用して、コンテンツ・アイテムへのアクセスに必要な権限レベルがユーザーにあるかどうかを判断します。Need to Knowコンポーネントでは、ユーザー権限の決定プロセスをカスタマイズできます。Need to Knowコンポーネント・インタフェースを使用して、構成フィールドを設定し、読取り、書込みおよび削除の権限レベルを設定するIdocスクリプトを作成します。Idocスクリプトに、ユーザーおよびコンテンツ・メタデータ値を含めることもできます。

Need to Knowコンポーネントでは、次のプロセスを使用してコンテンツ・セキュリティを導出します。

  1. ユーザーがコンテンツ情報を表示するリンクをクリックします。

  2. ユーザーにadminロールがある場合、標準セキュリティが使用され、ユーザーはコンテンツを表示することができます。

  3. コンテンツ・アイテムのセキュリティ・グループがNeed to Know認可グループでない場合、標準セキュリティを使用してユーザーの読取りリクエストが評価されます。

  4. Need to Knowセキュリティが、読取り権限レベルで有効でない場合、標準セキュリティを使用してユーザーの読取りリクエストが評価されます。

  5. Need to Knowセキュリティが読取り権限レベルで制限されておらず、ユーザーがコンテンツ・アイテムへの標準セキュリティ・アクセス権を持つ場合、ユーザーはコンテンツへのアクセスが許可されます。

  6. Need to KnowセキュリティIdocスクリプト(この場合は、読取りセキュリティ・スクリプト)が評価されます。

  7. Need to Knowアクセス・フラグ(この場合は、isNTKReadAccess)が評価され、コンテンツへのアクセス権がユーザーにあるかどうかが判断されます。アクセスは、Need to Knowアクセス・フラグに基づいて、許可または拒否されます。

Need to Knowコンポーネントでは、読取り、書込み、削除の各アクセス・レベルに対してセキュリティ構成スクリプトをテストすることもできます。テストでは、ユーザーおよびコンテンツIDを指定でき、ロールとアカウントを指定できます。テストでは、ユーザーの実際の属性ではなく、これらの属性が使用されます。たとえば、属性にアクセスできない外部ユーザーを使用してIdocスクリプトをテストできます。テストの実行後、コンテンツ・アイテムへのアクセス権がユーザーにあるかどうか、Need to Knowセキュリティが使用されたかどうか、Need to Knowセキュリティが使用されなかった場合はその理由がコンポーネントからレポートされます。

Need to Knowコンポーネント・インタフェースを使用したコンテンツ・セキュリティの構成の詳細は、「NTK構成情報ページ」および「コンテンツ・セキュリティ構成情報ページ」を参照してください。コンテンツ・セキュリティを構成できるIdocスクリプトのサンプルは、「セキュリティ・カスタマイズのサンプル」を参照してください。

次のIdocスクリプト関数をスクリプト・フィールドで使用して、コンテンツ・セキュリティを判断できます。『Oracle WebCenter Contentでの開発』Idocスクリプトのカスタム・スクリプト言語の概要に関する項を参照してください。

Idocスクリプト関数 説明
allStrIntersect 2つのカンマ区切りの文字列を必須パラメータとし、1つのブール・フラグをオプション・パラメータとします。2番目の文字列のすべての値が最初の文字列に出現する場合、関数はtrueを返します。オプション・パラメータがtrueに設定され、2番目の値が空の文字列の場合、関数はtrueを返します。デフォルトでは、オプション・パラメータはfalseです。カンマ区切りの文字列値の比較では、大文字と小文字は区別されません。
includeNTKDeleteSecurityScript 削除セキュリティ・スクリプトを評価し、isNTKDeleteAccess変数を読取りセキュリティ・スクリプトまたは書込みセキュリティ・スクリプトで使用できるようにします。この関数が削除セキュリティ・スクリプトで使用された場合は、無視されます。
includeNTKReadSecurityScript 読取りセキュリティ・スクリプトを評価し、isNTKReadAccess変数を書込みセキュリティ・スクリプトまたは削除セキュリティ・スクリプトで使用できるようにします。この関数が読取りセキュリティ・スクリプトで使用された場合は、無視されます。
includeNTKWriteSecurityScript 書込みセキュリティ・スクリプトを評価し、isNTKWriteAccess変数を読取りセキュリティ・スクリプトまたは削除セキュリティ・スクリプトで使用できるようにします。この関数が書込みセキュリティ・スクリプトで使用された場合は、無視されます。
isDisclosureQuery 開示フィールド(指定されている場合)に対して問合せを評価し、trueまたはfalseを返します。オプションのパラメータを指定して、開示問合せが空の場合にtrueまたはfalseを返すかどうかを指定することができます。開示フィールドが指定されていない場合、または存在しない場合、この関数は常にfalseを返します。
isMetaChange コンテンツ・セキュリティ・コールにコンテンツの更新またはチェックインが含まれる場合、この変数が設定されます。
isStrIntersect 2つのカンマ区切りの文字列を必須パラメータとし、1つのブール・フラグをオプション・パラメータとします。2番目の文字列の1つ以上の値が最初の文字列に出現する場合、関数はtrueを返します。オプション・パラメータがtrueに設定され、2番目の値が空の文字列の場合、関数はtrueを返します。デフォルトでは、オプション・パラメータはfalseです。カンマ区切りの文字列値の比較では、大文字と小文字は区別されません。
stdSecurityCheck 現在のアクセス・レベルに対する標準セキュリティを確認します。たとえば、関数が読取りセキュリティ・スクリプトに含まれる場合、読取りアクセス・レベルでセキュリティを確認します。

検索結果

Need to Knowコンポーネントでは、検索問合せから返される検索結果の表示をカスタマイズできます。NTKインタフェースを使用して、「非表示フィールド」「スクリプト」の2つの構成値を設定できます。

非表示フィールド値は、「検索結果」ページのビューに表示されないフィールドのリストです。値は空の文字列に設定されます。フィールドを非表示にするには、コンポーネントの検索結果Idocスクリプトで、フィールドhideFieldsを設定する必要があります。

Idocスクリプトで、検索結果の表示を制御します。検索結果の行ごとに、Idocスクリプトが評価されます。スクリプト内に多くのフィールドを設定して、検索結果の表示を変更できます。フィールドのリストと、Need to Knowコンポーネント・インタフェースを使用した検索結果の表示スクリプトのカスタマイズの詳細は、「検索結果構成情報」ページを参照してください。

Need to Knowコンポーネントでは、securityCheck Idocスクリプト関数を使用して検索結果の表示を指定します。securityCheck関数では、構成値に応じて、現在のコンテンツ・アイテムに対するセキュリティ(標準セキュリティまたはNeed to Knowセキュリティ)が確認されます。関数には、確認するアクセス・レベルを指定するオプション・パラメータがあります。

securityCheckにパラメータが使用されない場合、デフォルトで読取りアクセス・レベルが確認されます。

検索結果の表示を変更するIdocスクリプトのサンプルは、「セキュリティ・カスタマイズのサンプル」を参照してください。

ヒット・リスト・ロール

ヒット・リスト・ロールでは、コンテンツの検索、コンテンツ・チェックイン、更新の各ページを使用するためのユーザー資格証明を変更できます。「ユーザー管理」アプレットを使用して、任意の名前でヒット・リスト・ロールを追加できます。ロールが有効になると、検索、チェックインまたは更新時にロールが自動的にユーザーの属性に追加されるため、ロールをユーザーに割り当てないでください。

ヒット・リスト・ロールを作成する場合は、SpecialAuthGroups構成エントリに指定するすべてのセキュリティ・グループに読取りアクセス権を付与する必要があります。これらのセキュリティ・グループをコンテンツ・チェックイン・ページまたは「更新」ページにリストするには、ヒット・リスト・ロールに書込みアクセス権も追加する必要があります。

Need to Knowコンポーネントの「ヒット・リスト・ロール構成情報」ページを使用して、問合せ更新の2つの形式のヒット・リスト・ロールを実装できます。問合せに使用されるヒット・リスト・ロールは、コンテンツ検索に適用されます。更新に使用されるヒット・リスト・ロールは、コンテンツのチェックインおよび更新に適用されます。

ヒット・リスト・ロールの使用方法の詳細は、「NTK構成情報」ページおよび「ヒット・リスト・ロール構成情報」ページを参照してください。ヒット・リスト・ロールの使用サンプルは、「セキュリティ・カスタマイズのサンプル」を参照してください。

WHERE句の導出

Need to Knowコンポーネントには、検索結果の取得に使用される問合せのWHERE句をカスタマイズできる2つのフィルタが用意されています。

これらのフィルタのコードは、NTKFilter Javaクラスにあります。これらのフィルタの動作のサンプルは、「セキュリティ・カスタマイズのサンプル」を参照してください。

コンテンツ・メタデータ・セキュリティ

Need to Knowコンポーネントには、コンテンツ・アイテムがチェックインまたは更新されたときのメタデータの変更動作を変更できるcheckMetaChangeSecurityという名前のフィルタが用意されています。

このフィルタのコードは、NTKFilter Javaクラスにあります。このフィルタの動作の例は、「セキュリティ・カスタマイズのサンプル」を参照してください。

Disclosure Query Securityアプレット

「Disclosure Query Security」アプレットは、チェックイン時の特定のコンテンツ・アイテムに対する問合せの定義に使用されます。

images/disc_query.gifについては周囲のテキストで説明しています。

アプレットにアクセスするには、「コンテンツ・チェックイン・フォーム」ページの「DocDisclosureQuery」フィールドの横にある「更新」ボタンをクリックします。

要素 説明
フィールド 問合せに指定するユーザー属性フィールドを選択します。このリストには、「ユーザー・ロケール」、「ユーザー名」、「ユーザー・ロール」と、すべてのカスタム・ユーザー属性フィールドが含まれています。
演算子 「フィールド」および「値」に適用する演算子を選択します。次の演算子は、「ユーザー・ロール」を除くすべてのフィールドに使用されます:
次の値に等しい: 指定した「フィールド」の値が、指定した「値」と一致します。
次の値に等しくない: 指定した「フィールド」の値が、指定した「値」と一致しません。
次の語で始まる: 指定した「フィールド」の値が、指定した「値」で始まります。
次を含む: 指定した「フィールド」の値に、指定した「値」が含まれます。
「ユーザー・ロール」フィールドには「メンバーあり」という1つの演算子のみが含まれ、「値」フィールドにロールのドロップダウン・リストが表示されます。
問合せで指定する値を入力します。
- 選択したフィールドにオプション・リストが指定されている場合は、ドロップダウン・リストから値を選択します。
- 選択したフィールドにオプション・リストが指定されていない場合、テキスト・ボックスに値を入力します。
追加 「フィールド」、「演算子」および「値」フィールドで指定した問合せを、「問合せ式」テキスト・ボックスに入力します。「追加」ボタンをクリックするたびに、現在の設定がAND句として問合せに追加されます。
更新 選択した問合せ句を、「フィールド」、「演算子」、「値」の各フィールドで指定したパラメータで更新します。
マージ 選択した問合せ句に対するOR句を作成(パイプ文字を挿入)します。このボタンは、次の条件下で有効になります:
- ドロップダウン・リストのフィールドが、選択した問合せ句で指定されたフィールドと一致する。
- 選択した問合せ句の演算子を「次の値に等しくない」にできない。
- ドロップダウン・リストの演算子を「次の値に等しくない」にできない。
ノート: パイプ文字は、ユーザー・ロールの問合せ句の問合せ式には表示されず、DocDisclosureQueryフィールドに表示されます。
問合せ式 問合せの各句を1行に表示します。
Delete 選択した問合せ句を削除します。
Append 「コンテンツ・チェックイン・フォーム」ページの「DocDisclosureQuery」フィールドの既存の問合せに「問合せ式」を追加します。
Replace 「コンテンツ・チェックイン・フォーム」ページの「DocDisclosureQuery」フィールドの既存の問合せを「問合せ式」で置き換えます。
Cancel 問合せの変更を適用せずに、「Disclosure Query Security」アプレットを閉じます。

問合せ構文

「Disclosure Security Query」アプレットでは、正しいIdocスクリプト構文で問合せが作成されますが、独自の問合せを「DocDisclosureQuery」フィールドに直接入力することもできます。次のIdocスクリプト構文が開示問合せに使用されます。

ノート:

「DocDisclosureQuery」フィールドに直接入力する場合の問合せ句の正しい書式は、「Disclosure Query Security」アプレットを使用して学習できます。

Like演算子

like演算子では、部分文字列とワイルドカード文字列が照合されます。文字列全体を一重引用符で囲みます。

部分文字列

like演算子を使用して部分文字列を照合します。

ワイルドカード文字列

ワイルドカード文字列を使用して可変文字とオプションを照合します。ワイルドカード文字列には、次の構文が使用されます。

dDocName like '*MyClient*|199? Reports'

ブール演算子

問合せ句は、andorおよびnotのブール演算子で結合できます。

UserName変数

変数UserNameは、現在ログインしているユーザーの名前です。たとえば、次のコードはユーザーjgreenまたはhbrownにのみ権限を付与します。

UserName like 'jgreen|hbrown'

stdSecurity変数

変数stdSecurityは、標準セキュリティ・モデルを指定します。stdSecurityCheck Idocスクリプト関数にマップされます。この変数は、他の問合せ句とのブール組合せに使用して、アクセスを制限(and演算子を使用)または拡張(or演算子を使用)することができます。たとえば、次のコードは、ユーザーがドキュメントに通常アクセスできる場合、あるいはユーザーがjgreenまたはhbrownの場合に、ドキュメントへのアクセスを許可します。

stdSecurity or UserName like 'jgreen|hbrown'

ユーザー属性フィールド

問合せにユーザー属性フィールドを指定する場合、uFieldNameの形式を使用します。たとえば:

uMyUserField like 'Value'

ユーザー・ロール

UserRoles Idocスクリプト関数は、現在のユーザーに対するすべてのロールをカンマ区切り形式で返すため、ユーザー・ロールには特別な形式が必要です。(この例では、この関数用にuRolesショートカットが定義されています)。たとえば、uRolesの値は次のようになります。

role1,role2,...,role10

このため、値role1を含む問合せ文字列を指定するには、ロール・リスト内の位置に関係なく値が認識されるようにワイルドカードを含める必要があります。たとえば:

uRoles like '*role1*'

ただし、この問合せ文字列では、付与する必要のないロールrole10のユーザーにもセキュリティ・アクセス権が付与されます。問合せに指定されたロールにのみuRolesの値を限定するには、DelimitedUserRoles関数と構文を使用する必要があります。次のように、ロール値の両側に一重引用符とコロンを含めます。

uRoles like '*:role1:*'

role1またはrole2と一致するには、次の構文を使用します:

uRoles like '*:role1:*|*:role2:*'

コンテンツ・レベル問合せの定義

個々のコンテンツ・アイテムに対して問合せを定義するには:

  1. 「コンテンツ・チェックイン・フォーム」ページ(新しいコンテンツ・アイテムの場合)または「情報更新フォーム」ページ(既存のコンテンツ・アイテムの場合)を開きます。

  2. DocDisclosureQueryフィールド(このフィールドの名前はインストール時に指定した名前)の横にある「更新」ボタンをクリックします。

  3. 「Disclosure Query Security」アプレットで、問合せ句を作成するための「フィールド」、「演算子」、および「値」を選択します。

    • フィールド: 「ユーザー・ロケール」、「ユーザー名」、「ユーザー・ロール」と、すべてのカスタム・ユーザー属性フィールドが含むユーザー属性リストから選択します。

    • 演算子: 「フィールド」および「値」に適用する演算子を選択します。次の演算子が「ユーザー・ロール」以外のすべてのフィールドに使用されます。

      • 次の値に等しい: 指定した「フィールド」の値が、指定した「値」と一致します。

      • 次の値に等しくない: 指定した「フィールド」の値が、指定した「値」と一致しません。

      • 次の語で始まる: 指定した「フィールド」の値が、指定した「値」で始まります。

      • 次を含む: 指定した「フィールド」の値に、指定した「値」が含まれます。

      「ユーザー・ロール」フィールドには、「メンバーあり」演算子のみがあり、「値」フィールドにロールのドロップダウン・リストが表示されます。

    • : 選択したフィールドに対するオプション・リストが指定されている場合は、ドロップダウン・リストから値を選択します。選択したフィールドに対するオプション・リストが指定されていない場合は、テキスト・ボックスに値を入力します。

  4. 「追加」をクリックします。

    問合せ句が、「問合せ式」テキスト・ボックスに追加されます。

  5. 問合せの構築を続けます。

    • and演算子を使用して別の問合せ句を追加するには、値を入力して「追加」をクリックします。

    • 既存の問合せ句を変更するには、新しい値を入力し、変更する問合せの行を選択して「更新」をクリックします。

    • or句を作成するには、新しい値を入力し、変更する問合せの行を選択して「マージ」をクリックします。

    • 問合せ句を削除するには、問合せの行を選択して「削除」をクリックします。

  6. DocDisclosureQueryフィールドに問合せ式を入力します。

    • DocDisclosureQueryフィールドの既存の問合せを、アプレットの問合せ式で置き換えるには、「置換」をクリックします。

    • アプレットの問合せ式をDocDisclosureQueryフィールドの既存の問合せに追加するには、「追加」をクリックします。

    Disclosure Query Securityアプレットでは、問合せ句が適切な構文に変換されて、「コンテンツ・チェックイン・フォーム」ページまたは「情報更新フォーム」ページのDocDisclosureQueryフィールドに問合せが入力されます。

    ノート:

    DocDisclosureQueryフィールドに直接入力する場合の問合せ句の正しい書式は、Disclosure Query Securityアプレットを使用して学習できます。

  7. 残りのフィールドに入力したら、「チェックイン」または「更新」をクリックします。

    開示問合せが検証されます。問合せの書式が間違っている場合は、エラー・メッセージに問合せの特定の問題が示されます。

管理インタフェース

Need to Knowコンポーネントのインストール後、「管理」トレイまたはメニューから「NTK構成情報」リンクが使用可能になります。このリンクから「NTK構成情報」ページにアクセスできます。このページには、セキュリティ構成ステータス情報が表示され、セキュリティ構成の編集機能を使用できます。

Need to Knowコンポーネントには、次の構成ページが用意されています。

「NTK構成情報」ページ

「NTK構成情報」ページには、、Need to Knowコンテンツ・セキュリティ構成、検索結果構成およびヒット・リスト・ロール構成に関する情報が示されます。またこのページでは、セキュリティ構成の編集、検索結果構成の編集、ヒット・リスト・ロール構成の編集、構成用のIdocスクリプトと非表示フィールドの表示およびIdocスクリプトのテストを行うこともできます。

images/ntkconfall.gifについては周囲のテキストで説明しています。

このページにアクセスするには、メイン・メニューから「管理」「NTK構成情報」を選択します。

要素 説明
アクセス・レベル コンテンツ・アイテムにアクセスするための権限レベル(読取り、書込み、削除)を表示します。
有効 読取り、書込みまたは削除アクセスに対してNeed to Knowセキュリティが有効かどうかを示します。
いいえ: Need to Knowセキュリティは、アクセス・レベルで無効です。これがデフォルトです。
はい: Need to Knowセキュリティは、アクセス・レベルで有効です。
アクセスの制限 読取り、書込みおよび削除アクセスがNeed to Knowセキュリティで制限されているかどうかを指定します。ユーザー・アクセスの制限にNeed to Knowセキュリティが使用されている場合、コンテンツ・アイテムに対する標準の読取り、書込みまたは削除アクセス権がユーザーにあるかどうかに関係なくアクセスは制限されます。ユーザー・アクセスの制限にNeed to Knowセキュリティが使用されない場合、ユーザーはコンテンツ・アイテムへの標準アクセス権を持ちます。この機能によって、標準セキュリティ・モデルより制限の強いセキュリティ・モデルを作成できます。
いいえ: アクセスはNeed to Knowセキュリティで制限されません。これがデフォルトです
はい: アクセスはNeed to Knowセキュリティで制限されます。
スクリプト コンテンツ・アイテムに対する読取り、書込み、削除のアクセス権がユーザーにあるかどうかを評価するIdocスクリプトを表示またはテストするリンクがあります。Need to Knowコンポーネントは、次の3つのパラメータの1つをフラグとして使用して、アクセス権が付与されているかどうかを判断します:
読取りアクセス: isNTKReadAccess
書込みアクセス: isNTKWriteAccess
削除アクセス: isNTKDeleteAccess
Need to Knowコンポーネントが、ユーザーの権限が読取りアクセス、書込みアクセスまたは削除アクセスのいずれであるかを判断するために評価するIdocスクリプトを表示するアクセス・レベルに対応する行で、「表示」をクリックします。
Need to Knowセキュリティ構成をテストするアクセス・レベルに対応する行で、「テスト」をクリックします。「NTKコンテンツ・セキュリティのテスト」ページが表示されます。このページを使用して、セキュリティ構成用のIdocスクリプトのテストを作成および実行できます。詳細は、「NTKコンテンツ・セキュリティのテスト」ページ」を参照してください。
開示フィールド Idocスクリプト関数isDisclosureQueryに対して評価されるカスタム・メタデータ・フィールドを表示します。開示フィールドを使用して、コンテンツ固有の問合せを作成できます。デフォルト値は<none>です。
構成マネージャを使用してこのフィールドを作成し、それをメモ・フィールド・タイプにします。詳細は、「Need To Knowコンポーネントのインストール」および「Need to Knowコンポーネントの構成」を参照してください。
開示フィールドが存在する場合は、そのフィールドの横に「更新」ボタンが表示されます(「コンテンツ・チェックイン・フォーム」ページでの表示位置)。ボタンをクリックして、Disclosure Query Securityアプレットにアクセスします(「Disclosure Query Securityアプレット」を参照)。アプレットは、ユーザー・メタデータに基づいた問合せの作成に役立ちます。
セキュリティ認証グループ Need to Knowセキュリティが使用されるセキュリティ・グループのリストを表示します。グループは、SpecialAuthGroups構成変数のサブセットです。グループが選択されていない場合、すべてのSpecialAuthGroupsが使用されます。SpecialAuthGroupsのデフォルト値は<All Special Auth Groups>です。
構成マネージャを使用してconfig.cfgファイルにSpecialAuthGroups値を指定します。詳細は、「Need To Knowコンポーネントのインストール」および「Need to Knowコンポーネントの構成」を参照してください。
デバッグ デバッグ・オプションのステータスを表示します。
はい: コンテンツ・アイテムに対して行われたセキュリティ・チェックに関するデバッグ情報がログ・ファイルに書き込まれます。管理者ロールを持つユーザーは、コンテンツ・アイテムへのアクセスが常に許可されるため、ログに記録されません。
いいえ: デバッグ情報はログ・ファイルに書き込まれません。
編集
(コンテンツ・セキュリティ統合情報)
「コンテンツ・セキュリティ構成情報」ページを表示します。このページでは、コンテンツ・セキュリティ構成を変更できます。
非表示フィールド 「表示」をクリックすると、「検索結果」ページで非表示にできるフィールドのリストが表示されます。
スクリプト 「表示」をクリックすると、「検索結果」ページの表示を制御するIdocスクリプトが表示されます。
編集
(検索結果構成情報)
「検索結果構成情報」ページを表示します。このページでは、検索結果セキュリティ構成を変更できます。
問合せロール 問合せロールの名前または<none>を表示します。このロールは「検索」問合せページで適用されます。
更新ロール 更新ロールの名前または<none>を表示します。このロールは、コンテンツ・チェックインまたは更新ページで適用されます。
匿名ユーザーへのヒット・リスト・ロールの許可 ヒット・リスト・ロールを匿名ユーザーに適用します。
いいえ: ヒット・リスト・ロールは、匿名ユーザーに適用されません。これがデフォルト値です。
はい: ヒット・リスト・ロールは、匿名ユーザーに適用されます。
編集
(ヒット・リスト・ロール構成情報)
「ヒット・リスト・ロール構成情報」ページを表示します。このページでは、ヒット・リスト・ロール・セキュリティ構成を変更できます。

「コンテンツ・セキュリティ構成情報」ページ

「コンテンツ・セキュリティ構成情報」ページでは、読取り、書込み、削除のセキュリティとアクセス構成、およびNeed to Knowコンポーネントの他のオプションを変更できます。

images/secconf.gifについては周囲のテキストで説明しています。

このページにアクセスするには、「NTK構成情報」ページの「コンテンツ・セキュリティ構成情報」領域の「編集」をクリックします。

要素 説明
読取りオプション: セキュリティ使用 「スクリプト」フィールドで指定されたとおりにセキュリティを使用します。
いいえ: Need to Knowコンテンツ・セキュリティを使用しません。これがデフォルト値です。
はい: Need to Knowコンテンツ・セキュリティを使用します。
読取りオプション: アクセスの制限 「スクリプト」フィールドで指定されたとおりにアクセス権限を制限します。
いいえ: アクセス権限を制限しません。これがデフォルト値です。
はい: アクセス権限を制限します。
読取りオプション: スクリプト このフィールドにIdocスクリプトを入力し、読取り権限に対するNeed do Knowセキュリティ構成を指定します。
書込みオプション: セキュリティ使用 「スクリプト」フィールドで指定されたとおりにセキュリティを使用します。
いいえ: Need to Knowコンテンツ・セキュリティを使用しません。これがデフォルト値です。
はい: Need to Knowコンテンツ・セキュリティを使用します。
書込みオプション: アクセスの制限 「スクリプト」フィールドで指定されたとおりにアクセス権限を制限します。
いいえ: アクセス権限を制限しません。これがデフォルト値です。
はい: アクセス権限を制限します。
書込みオプション: スクリプト このフィールドにIdocスクリプトを入力し、書込み権限に対するNeed do Knowセキュリティ構成を指定します。
削除オプション: セキュリティ使用 「スクリプト」フィールドで指定されたとおりにセキュリティを使用します。
いいえ: Need to Knowコンテンツ・セキュリティを使用しません。これがデフォルト値です。
はい: Need to Knowコンテンツ・セキュリティを使用します。
削除オプション: アクセスの制限 「スクリプト」フィールドで指定されたとおりにアクセス権限を制限します。
いいえ: アクセス権限を制限しません。これがデフォルト値です。
はい: アクセス権限を制限します。
削除オプション: スクリプト このフィールドにIdocスクリプトを入力し、削除権限に対するNeed do Knowセキュリティ構成を指定します。
その他のオプション: 開示フィールド リストから開示フィールドの名前を選択します。このフィールドは、コンテンツ固有の問合せでセキュリティを構成する場合に使用します。
ノート: 構成マネージャを使用してコンテンツ・アイテム・レベルの問合せに対するメタデータ・フィールドを作成した場合、そのフィールドがオプションとしてリストに表示されます。
その他のオプション: セキュリティ認証グループ コンテンツ固有の問合せで使用されるSpecialAuthGroupsを入力します。「一般構成」ページを使用してNeed to Knowコンポーネントに対する特定のセキュリティ・グループを作成した場合、ここでグループを指定できます。セキュリティ・グループを追加する必要がある場合、config.cfgファイルで追加の構成変数のSpecialAuthGroups値を編集することもできます。
その他のオプション: すべての認証グループ Need to Knowコンポーネントで「セキュリティ認証グループ」フィールドにリストされている特定のグループではなく、すべてのSpecialAuthGroupsを使用するように指定します。このチェック・ボックスはデフォルトで選択されています。
ノート: Records Managementなどの他の製品でもSpecialAuthGroups変数を使用できます。Need to Knowセキュリティ構成で使用するセキュリティ・グループのみを指定するよう注意してください。
その他のオプション: デバッグ コンテンツ・アイテムのセキュリティ・チェックを表示するためにデバッグを使用するかどうかを選択します。
はい: コンテンツ・アイテムに対して行われたセキュリティ・チェックに関するデバッグ情報がログ・ファイルに書き込まれます。管理者ロールを持つユーザーは、コンテンツ・アイテムへのアクセスが常に許可されるため、ログに記録されません。
デバッグを使用する場合、2つの追加オプション(「表示」「クリア」)が表示されます。「表示」をクリックして、デバッグ情報のログ・ファイルを表示します。「クリア」をクリックして、情報のログ・ファイルを空にします。
いいえ: デバッグは使用されず、情報はログ・ファイルに書き込まれません。これはデフォルト値です。
更新 新しい設定を使用してコンテンツ・セキュリティ情報を更新し、コンテンツ・サーバー・インスタンスを再起動して、「NTK構成情報」ページに戻ります。
リセット コンテンツ・セキュリティ構成設定を、最後に保存された値に戻します。

「検索結果構成情報」ページ

「検索結果構成情報」ページでは、検索問合せから返される検索結果をカスタマイズできます。返されるコンテンツ・アイテムは影響を受けません。結果の表示方法のみが影響を受けます。

images/ntksrconf.gifについては周囲のテキストで説明しています。

このページにアクセスするには、「NTK構成情報」ページの「検索結果構成情報」領域の「編集」をクリックします。

要素 説明
非表示フィールド コンテンツ検索問合せの結果のビューに表示されないフィールドのリストを表示します。値は空の文字列に設定されます。検索結果スクリプトでフィールドhideFieldsが設定されている場合、これらのフィールドは表示されません。
使用できるフィールド コンテンツ検索問合せの結果に含まれるフィールドのリストを表示します。
追加 フィールド名を選択して「追加」をクリックし、フィールドを「使用できるフィールド」リストから「非表示フィールド」リストに移動すると、フィールドがコンテンツ検索結果で非表示になります。
削除 フィールド名を選択して「削除」をクリックし、フィールドを「非表示フィールド」リストから「使用できるフィールド」リストに移動すると、フィールドがコンテンツ検索結果で表示されます
スクリプト ドこのフィールドにIdocスクリプトを入力し、検索結果の表示を制御します。検索結果の行ごとに、Idocスクリプトが評価されます。表示を変更するために設定できるフィールドが多数あります:
- docInfo:enabled: 0に設定すると、コンテンツ情報リンクが無効になります。
- docInfo:link: コンテンツ情報ページ・リンクを変更する場合に設定します。
- docInfo:image_small: 情報リンクの小さいイメージを変更する場合に設定します。
- docInfo:image_large: 情報リンクの大きいイメージを変更する場合に設定します。
- url:enabled: 0に設定すると、URLリンクが無効になります。
- url:link: URLリンクを変更する場合に設定します。
- url:image: URLリンクのイメージを変更する場合に設定します。
- revHistory:enabled: 0に設定すると、リビジョン履歴リンクが無効になります。
- revHistory:link: リビジョン履歴リンクを変更する場合に設定します。
- checkout:enabled: 0に設定すると、チェックアウト・リンクが無効になります。
- checkout:linkF: チェックアウト・リンクを変更する場合に設定します。
- actions:enabled: 0に設定すると、アクション・ポップアップ・リンクが無効になります。
- checkInSimilar:enabled: 0に設定すると、「類似をチェックイン」リンクが無効になります。
- email:enabled: 0に設定すると、電子メール・リンクが無効になります。
- dynConv:enabled: 0に設定すると、Dynamic Converterリンクが無効になります。
更新 検索問合せ結果の構成を更新し、コンテンツ・サーバー・インスタンスを再起動して、「NTK構成情報」ページに戻ります。
リセット 検索結果構成設定を前回保存された値に戻します。

「ヒット・リスト・ロール構成情報」ページ

The「ヒット・リスト・ロール構成情報」ページでは、ユーザーのヒット・リスト・ロールを構成できます。

images/hitlist.gifについては周囲のテキストで説明しています。

このページにアクセスするには、「NTK構成情報」ページの「ヒット・リスト・ロール構成情報」領域の「編集」をクリックします。

要素 説明
問合せロール 「検索」ページが使用される際に、問合せロールとして適用されるヒット・リスト・ロールを選択します。読取りアクセス権を持つセキュリティ・グループ・ロールが選択リストに表示されます。ユーザーがすでに読取りアクセス権を持つセキュリティ・グループ・ロールはすべて含まれます。
このロールは、コンテンツ・セキュリティとは別のものです。コンテンツ・セキュリティ用に構成された検索結果にコンテンツ・アイテムを表示できても、そのアイテムの「コンテンツ情報」ページを表示できない場合があります。
更新ロール 「更新」ページが使用される際に、更新ロールとして適用されるヒット・リスト・ロールを選択します。書込みアクセス権を持つセキュリティ・グループが選択リストに表示されます。ユーザーがすでに書込みアクセス権を持つセキュリティ・グループ・ロールも含まれます。コンテンツ・アイテムが実際にチェックインまたは更新されるとき、このロールは適用されません
このフィールドは、コンテンツ・セキュリティと組み合せて使用すると非常に便利です。このフィールドの使用例は、「セキュリティ・カスタマイズのサンプル」を参照してください。
匿名ユーザーへのヒット・リスト・ロールの許可 ヒット・リスト・ロールを匿名ユーザーに適用します。
いいえ: ヒット・リスト・ロールを匿名ユーザーに適用しません。これがデフォルト値です。
はい: ヒット・リスト・ロールを匿名ユーザーに適用します。
更新 ヒット・リスト構成を更新し、コンテンツ・サーバー・インスタンスを再起動して、「NTK構成情報」ページに戻ります。
リセット ヒット・リスト・ロール構成設定を前回保存された値に戻します。

「NTKコンテンツ・セキュリティのテスト」ページ

「NTKコンテンツ・セキュリティのテスト」ページでは、ユーザーに対するテスト・セキュリティ・スクリプトを実行できます。

images/ntktest.gifについては周囲のテキストで説明しています。

このページにアクセスするには、「NTK構成情報」ページに表示されている、いずれかのアクセス権限レベルの「スクリプト」列の「テスト」をクリックします。

要素 説明
アクセス・レベル テストするよう選択した権限レベルに対するアクセスレベル(読取り、書込みまたは削除)を表示します。
スクリプト コンテンツ・セキュリティ構成をテストすIdocスクリプトを入力します。
ユーザー テスト用のユーザーID を入力します。
属性の設定 チェック・ボックスを選択して、ユーザーの既存の属性と一致するユーザー属性を自動的に設定します。
ロール テスト用にユーザーに割り当てるロールを入力します。属性にアクセスできない外部ユーザーを使用してテストを行う場合、このフィールドを使用します。
アカウント テスト用にユーザーに割り当てるアカウントを入力します。属性にアクセスできない外部ユーザーを使用してテストを行う場合、このフィールドを使用します。
コンテンツID テスト用のコンテンツIDを入力します。
テスト 「テスト」をクリックして、「NTKコンテンツ・セキュリティのテスト」ページで指定した構成をテストします。Need to Knowコンポーネント・テストから結果(指定したアクセス権がユーザーにあるかどうか、Need to Knowセキュリティが使用されたかどうか、Need to Knowセキュリティが使用されなかった場合はその理由)が返されます。
リセット 「NTKコンテンツ・セキュリティのテスト」構成の設定を、最後に保存された値に戻します。

セキュリティ・カスタマイズのサンプル

この項では、セキュリティ・モデルのカスタマイズ例を示します。

コンテンツ・セキュリティのサンプル

この項では、コンテンツ・セキュリティのカスタマイズ例を示します。

単純なIdocスクリプト関数

このサンプルでは、ユーザーのColorカスタム・フィールドとコンテンツのColorカスタム・フィールドが一致した場合に読取りアクセスが許可されます。

<$if strEquals(uColor, xColor)$>
<$isNTKReadAccess=1$>
<$endif$>

stdSecurityCheckの使用

このサンプルでは、ユーザーのColorBlueで、コンテンツへの標準セキュリティがユーザーにある場合に読取りアクセスが許可されます。

<$if stdSecurityCheck() and strEquals(uColor, "Blue")$>
<$isNTKReadAccess=1$>
<$endif$>

isStrIntersectの使用

このサンプルでは、3が最初の文字列のメンバーであるため、trueが返されます。

<$if isStrIntersect("1,2,3,4", "5,3")$>
<$isNTKReadAccess=1$>
<$endif$>

このサンプルでは、5も6も最初の文字列のメンバーでないため、falseが返されます。

<$if isStrIntersect("1,2,3,4", "5,6")$>
<$isNTKReadAccess=1$>
<$endif$>

このサンプルでは、2番目の文字列が空で、3番目のパラメータが指定されていないため、falseが返されます。

<$if isStrIntersect("1,2,3,4", "")$>
<$isNTKReadAccess=1$>
<$endif$>

このサンプルでは、2番目の文字列が空で、3番目のパラメータがtrueのため、trueが返されます。

<$if isStrIntersect("1,2,3,4", "", 1)$>
<$isNTKReadAccess=1$>
<$endif$>

このサンプルでは、2番目の文字列が空で、3番目のパラメータがfalseのため、falseが返されます。3番目のパラメータは文字列("True"や"T"など)でも数値(1、0など)でもよいことに注意してください。

<$if isStrIntersect("1,2,3,4", "", 0)$>
<$isNTKReadAccess=1$>
<$endif$>

allStrIntersectの使用

このサンプルでは、5が最初の文字列のメンバーでないため、falseが返されます。

<$if allStrIntersect("1,2,3,4", "5,3")$>
<$isNTKReadAccess=1$>
<$endif$>

このサンプルでは、3および4が最初の文字列のメンバーであるため、trueが返されます。

<$if allStrIntersect("1,2,3,4", "3,4")$>
<$isNTKReadAccess=1$>
<$endif$>

3番目のパラメータを使用する「isStrIntersectの使用」(4-2ページ)のサンプルは、allStrIntersectでも同様に動作します。

includeNTKReadSecurityScriptの使用

読取りスクリプト:

<$if strEquals(dDocType, "Document")$>
<$isNTKReadAccess=1$>
<$endif$>

書込みスクリプト:

<$includeNTKReadSecurityScript()$>
<$if isNTKReadAccess and strEquals(uColor, "Red")$>
<$isNTKWriteAccess=1$>
<$endif$>

読取りアクセス権(タイプはDocument)があり、ユーザーのColorRedの場合、ユーザーはコンテンツ・アイテムへの書込みアクセス権を持ちます。

検索結果のサンプル

この項では、検索結果のカスタマイズ例を示します。

リンクの無効化

このサンプルでは、コンテンツ・アイテムの読取りアクセス権がユーザーにない場合、URLとコンテンツ情報のリンクが無効になります。これは、検索結果に追加のコンテンツ・アイテムを表示する問合せロールを設定するが、追加アイテムへのリンクをユーザーに表示しない場合などに使用できます。

<$if not securityCheck()$><$docInfo:enabled=0$><$url:enabled=0$><$endif$>

リンクの変更

このサンプルでは、コンテンツのColorRedの場合、コンテンツ情報とURLのリンクを別のサービスに変更します。

<$if strEquals(xColor, "Red")$><$docInfo:link=HttpCgiPath & "?IdcService=GET_USER_INFO"$><$url:link="javascript:alert('Cannot view content.')"$><$endif$>

イメージの変更

このサンプルでは、コンテンツ・アイテムのColorGreenの場合、コンテンツ情報のリンクを変更します。

<$if strEquals(xColor, "Green")$><$docInfo:image_small=HttpImagesRoot & "oracle/tree_icons/historical.gif"$><$endif$>

ヒット・リスト・ロールのサンプル

この項では、ヒット・リスト・ロールのカスタマイズ例を示します。

問合せヒット・リスト・ロールの使用

問合せロールをqueryRoleに設定し、queryRoleにセキュリティ・グループNTKGroupへの書込みアクセス権がある場合、NTKGroupはセキュリティ・グループ・オプション・リストに表示されます。検索結果構成値をカスタマイズすることで、コンテンツ情報の表示を制限できます。

ブラック・ホール・チェックインの作成

更新ロールを使用して、ユーザーがコンテンツ・アイテムをチェックインし、そのアイテムの表示も編集もできないシナリオを作成できます。次の処理を行う必要があります。

  1. セキュリティ・グループNTKGroupへの読取り/書込みアクセス権を持つupdateRoleという名前のロールを作成します。

  2. メタ変更が発生し、セキュリティ・グループがNTKGroupの場合、アクセスを許可するように書込みコンテンツ・セキュリティ・スクリプトを更新します。

<$if isMetaChange and strEquals(dSecurityGroup, "NTKGroup")$><$isNTKWriteAccess=1$><$endif$>