ユーザーが Identity Manager システムに追加された場合、新しいアカウントに対する承認者として割り当てられている管理者は、アカウント作成を検証する必要があります。
Identity Manager は、3 つの承認カテゴリをサポートします。
「組織」。組織に追加されるユーザーアカウントに承認が必要です。
「ロール」。ロールに割り当てられるユーザーアカウントに承認が必要です。
「リソース」。リソースに対するアクセス権を与えられるユーザーアカウントに承認が必要です。
加えて、変更承認が有効にされている状態でロールが変更された場合、変更承認作業項目が、指定されたロール所有者に送信されます。
Identity Manager は、「ロール定義」による変更承認をサポートします。管理者がロール定義を変更すると、指定されたロール所有者からの変更承認が必要になります。変更を実行するには、ロール所有者が作業項目を承認する必要があります。
Identity Manager では、デジタル署名された承認を設定できます。手順については、「デジタル署名付き承認およびアクションの設定」を参照してください。
Identity Manager に慣れていない管理者は、「承認」の概念と「アテステーション」の概念を混同しないように注意してください。意味は同じように思えますが、承認とアテステーションでは発生するコンテキストが異なります。
承認は、新しいユーザーアカウントの検証に関連があります。ユーザーが Identity Manager に追加されると、その新しいアカウントの認可を検証するために、1 つ以上の承認が必要になります。
アテステーションは、既存のユーザーが適切なリソースに対する適切な特権のみを持っていることの検証に関連があります。定期的アクセスレビュープロセスの一環として、Identity Manager ユーザー (アテスター) が、別のユーザーのアカウントの詳細 (つまり、そのユーザーの割り当て済みリソース) が有効かつ適切であることを保証するように求められる場合があります。このプロセスをアテステーションといいます。
組織、ロール、およびリソースを承認するアカウント承認者の設定は省略可能ですが、推奨されています。アカウントの作成では、承認者を設定するカテゴリごとに、少なくとも 1 つの承認が必要です。1 人の承認者がリクエストの承認を拒否した場合、アカウントは作成されません。
各カテゴリに複数の承認者を割り当てることができます。1 つのカテゴリ内で必要な承認は 1 つのみであるため、複数の承認者を設定して、ワークフローが遅延または停止していないかどうかを確認できます。1 人の承認者が利用不可能な場合は、ほかの承認者を利用してリクエストを処理できます。承認は、アカウント作成にのみ適用されます。デフォルトでは、アカウントの更新と削除に承認は必要ありません。承認を必要とするように、このプロセスをカスタマイズすることもできます。
Identity Manager IDE を使用すると、承認の流れを変更したり、アカウントの削除や更新を取得して、ワークフローをカスタマイズすることができます。
Identity Manager IDE の詳細については、https://identitymanager.dev.java.net を参照してください。作業項目の詳細と、承認ワークフローの変更例については、『Sun Identity Manager Deployment Reference』の第 1 章「Workflow」を参照してください。
Identity Manager 承認者は、承認リクエストを承認または拒否できます。
管理者は、Identity Manager インタフェースの「作業項目」領域で、保留中の承認を表示および管理することができます。保留中の承認を表示するには、「作業項目」ページで「自分の作業項目」をクリックします。承認を管理するには、「承認」タブをクリックします。
デジタル署名を使用して作業項目を承認する場合は、「デジタル署名付き承認およびアクションの設定」の説明に従って、まずデジタル署名を設定する必要があります。
Identity Manager 管理者インタフェースで、「作業項目」を選択します。
「承認」タブをクリックします。
リストから承認を 1 つまたは複数選択します。
承認のコメントを入力して、「承認」をクリックします。
Identity Manager からアプレットを信頼するかどうか尋ねられます。
「常時」をクリックします。
承認の概要が日付付きで表示されます。
キーストアの場所を入力するか、「参照」をクリックして指定します。この場所は、署名付き承認の設定 (「PKCS12 を使用した署名付き承認のサーバー側設定を有効にする」の手順 10m) で設定します。
キーストアのパスワードを入力します。このパスワードは、署名付き承認の設定 (「PKCS12 を使用した署名付き承認のサーバー側設定を有効にする」の手順 10l) で設定します。
「署名」をクリックしてリクエストを承認します。
承認に署名すると、それ以後の承認アクションでは、キーストアパスワードを入力して「署名」をクリックするだけで済みます。Identity Manager は、前回の承認で使用したキーストアの場所を記憶します。
次の情報と手順を使用して、デジタル署名を設定します。次のものにデジタル署名できます。
承認 (変更承認を含む)
アクセスレビューアクション
コンプライアンス違反の是正
この節では、& Product_IDMgr; に署名付き承認の証明書と CRL を追加するために必要な、サーバー側とクライアント側の設定について説明します。
システム設定オブジェクトを開いて、security.nonrepudiation.signedApprovals=true と設定します。
システム設定オブジェクトを編集する方法については、「Identity Manager 設定オブジェクトの編集」を参照してください。
PKCS11 を使用している場合は、security.nonrepudiation.defaultKeystoreType=PKCS11 も設定する必要があります。
カスタム PKCS11 キープロバイダを使用している場合は、さらに security.nonrepudiation.defaultPKCS11KeyProvider=<プロバイダ名> も設定する必要があります。
カスタムプロバイダを記述する必要がある状況の詳細については、REF キットの次の項目を参照してください。
com.sun.idm.ui.web.applet.transactionsigner.DefaultPKCS11KeyProvider (Javadoc) REF/transactionsigner/SamplePKCS11KeyProvider |
REF (Resource Extension Facility) キットは、製品の CD の /REF ディレクトリまたはインストールイメージにあります。
自分の認証局 (CA) の証明書を信頼できる証明書として追加します。そのためには、まず証明書のコピーを取得する必要があります。
たとえば、Microsoft CA を使用している場合には、行う手順は次のようになります。
この証明書を Identity Manager に信頼できる証明書として追加します。
次の手順で、CA の証明書失効リスト (CRL) を追加します。
「テスト接続」をクリックして、URL を確認します。
「保存」をクリックします。
jarsigner を使用して applets/ts2.jar に署名します。
詳細については、http://java.sun.com/j2se/1.5.0/docs/tooldocs/windows/jarsigner.html を参照してください。Identity Manager とともに提供されている ts2.jar ファイルは、自己署名付き証明書を使用して署名されているため、本稼働システムには使用しないでください。本稼働では、信頼できる CA によって発行されたコード署名証明書を使用して、このファイルを署名し直すことをお勧めします。
PKCS12 を使用した署名付き承認のための設定情報は、次のとおりです。証明書と非公開鍵を取得して、PKCS#12 キーストアにエクスポートします。たとえば、Microsoft CA を使用している場合には、行う手順は次のようになります。
Identity Manager では、JRE 1.5 以上が必要になりました。
Internet Explorer を使用して、http://IPAddress /certsrv を参照し、管理特権でログインします。
証明書のリクエストを選択して、「次へ」をクリックします。
リクエストの詳細設定を選択して、「次へ」をクリックします。
「次へ」をクリックします。
「証明書テンプレート」で「ユーザー」を選択します。
次のオプションを選択します。
「送信」をクリックして、「OK」をクリックします。
「この証明書のインストール」をクリックします。
「ファイル名を指定して実行」を選択し、mmc と入力して mmc を起動します。
証明書スナップインを追加します。
「コンソール」、「スナップインの追加と削除」の順に選択します。
「追加」をクリックします。
「コンピュータアカウント」を選択します。
「次へ」をクリックして、「完了」をクリックします。
「閉じる」をクリックします。
「OK」をクリックします。
「証明書」、「個人」、「証明書」の順に選択します。
「管理者」を右クリックして、「すべてのタスク」、「エクスポート」の順に選択します。
「次へ」をクリックします。
「次へ」をクリックして、非公開鍵がエクスポートされていることを確認します。
「次へ」をクリックします。
パスワードを設定して、「次へ」をクリックします。
証明書の場所を指定します。
「次へ」をクリックして、「完了」をクリックします。「OK」をクリックして確認します。
クライアント側の設定の手順 10l (パスワード) と 10m (証明書の場所) で使用した情報をメモしておいてください。この情報は、承認の署名のために必要です。
署名付き承認に PCCS11 を使用している場合は、次の操作を行います。
REF キットにある次のリソースを参照して、設定情報を確認します。
com.sun.idm.ui.web.applet.transactionsigner.DefaultPKCS11KeyProvider (Javadoc) REF/transactionsigner/SamplePKCS11KeyProvider |
REF (Resource Extension Facility) キットは、製品の CD の /REF ディレクトリまたはインストールイメージにあります。
この節では、Identity Manager 監査ログレポートで、トランザクション署名を表示する方法について説明します。
Identity Manager 管理者インタフェースで、「レポート」を選択します。
「レポートの実行」ページで、オプションの「新規...」リストから「監査ログレポート」を選択します。
「レポートタイトル」フィールドに、タイトルを入力します (「承認」など)。
「組織」選択領域で、すべての組織を選択します。
「アクション」オプションを選択して、「承認」を選択します。
「保存」をクリックしてレポートを保存し、「レポートの実行」ページに戻ります。
「実行」をクリックして、「承認」レポートを実行します。
詳細リンクをクリックして、トランザクション署名情報を表示します。
表示されるトランザクション署名情報は、次のとおりです。
発行者
主体
証明書シリアル番号
署名されたメッセージ
署名
署名アルゴリズム
Identity Manager では、RFC 3161 準拠のデジタルタイムスタンプを含む XMLDSIG 形式の署名付き承認を、Identity Manager 承認プロセスに追加できます。XMLDSIG 署名付き承認を使用するように Identity Manager を設定する場合、監査ログで承認を確認しないかぎり、承認者が認識できる変更はありません。監査ログレコードに格納される署名付き承認の形式だけが変更されます。
これまでの Identity Manager の署名付き承認と同様、クライアントマシンでアプレットが起動され、承認者に対して署名のための承認情報が表示されます。承認者は承認の署名に使用するキーストアとキーを選択します。
承認者が承認に署名すると、承認データを含む XMLDSIG ドキュメントが作成されます。このドキュメントは、XMLDSIG 署名付きドキュメントを検証するサーバーに返されます。処理が成功し、RFC 3161 デジタルタイムスタンプが設定されている場合は、このドキュメントに対してデジタルタイムスタンプも生成されます。タイムスタンプ証明局 (TSA) から取得したタイムスタンプのエラーがチェックされ、証明書の有効性が確認されます。問題がなければ、最後に Identity Manager は監査ログレコードを生成し、XMLDSIG 形式の署名付き証明書オブジェクトを XML のブロブ列に格納します。
XMLDSIG 形式の証明書オブジェクトは、次のような形式になります。
<XMLSignedData signedContent="...base64 transaction text ..."> <XMLSignature> <TSATimestamp> ...The base64 encoded PKCS7 timestamp token returned by the TSA... </TSATimestamp <Signature> <SignedInfo>...XMLDSIG stuff...</SignedInfo> <SignatureValue>...base64 signature value</SignatureValue> <KeyInfo>...cert info for signer</KeyInfo> </Signature> </XMLSignature> </XMLSignedData>
次の点に注意してください。
base64 承認データは、アプレットで承認者に表示される実際の承認データテキストで構成され、base64 形式でエンコードされます。
<TSATimestamp> 要素には、base64 でエンコードされた、タイムスタンプ証明局 (TSA) からの PKCS7 タイムスタンプ応答が含まれます。
<Signature> 全体で、XMLDSIG 署名データを構成します。
この XMLDSIG ドキュメントは、監査ログ承認レコードの XML 列に格納されます。
XMLDSIG 署名付き承認を使用するためのインストールと設定の要件は、「署名付き承認に関するサーバー側の設定を有効にする」 で説明した要件と同じです。ただし、追加の手順が 1 つだけあります。ts2.jar ファイルへの署名に加えて、xmlsec-1.4.2.jar ファイルにも署名が必要です。
システム設定属性を使用して、次の操作を実行できます。
SignedData 形式または XMLSignedData 形式を選択できます。一度に設定できるのはどちらか一方の形式だけです。管理者は必要に応じて、この設定を変更できます。
設定された RFC 3161 タイムスタンプ証明局 (TSA) から取得した、デジタルタイムスタンプを含めることができます。
このタイムスタンプを取得する URL を、HTTP のみで指定できます。
これらの属性を編集するには、Identity Manager デバッグページを使用して、システム設定オブジェクトを編集します。これらの設定はすべて、ほかの署名付き承認属性と一緒に security.nonrepudiation 以下で指定します。
XMLDSIG 属性には次のものがあります。
security.nonrepudiation.useXmlDigitalSignatures は、XMLDSIG 署名を有効にするブール型の値です。
security.nonrepudiation.timestampXmlDigitalSignatures は、XMLDSIG 署名に RFC 3161 デジタルタイムスタンプを含めるブール型の値です。
security.nonrepudiation.timestampServerURL は、タイムスタンプを取得する HTTP ベースの TSA の URL を指定する文字列値です。
これらの属性を有効にするには、既存の useSignedApprovals 属性を true に設定する必要があります。
Identity Manager は、一般的なプロビジョニングリクエストで、1 つの承認または複数の署名付き承認に対して複数の署名をサポートしません。