この章では、Oracle WebCenter Contentでサポートされるプロバイダと、WebCenter Content ServerとOracle WebLogic Serverまたはライトウェイト・ディレクトリ・アクセス・プロトコル(LDAP)などその他のプロバイダ間のプロバイダ接続の使用が必要な状況と使用方法について説明します。
この章の内容は次のとおりです。
プロバイダとは、コンテンツ・サーバー・インスタンスと外部エンティティ間の接続を確立するアプリケーション・プログラミング・インタフェース(API)です。エンティティには、次のものがあります。
Oracle WebLogic Server
LDAPサーバー
データベース
サーバー・ソケット
ファイル・ストア・システム
Inbound Refinery
デフォルトでは、コンテンツ・サーバー・インスタンスには、3つのシステム・プロバイダがあります。
SystemDatabase: システム・データベース。
SystemServerSocket: ブラウザ・リクエストをリスニングするサーバー・ソケット。
DefaultFileStore: ファイル・ストア・システム。
さらに、次のタイプのプロバイダを作成できます。
送信: 外部エンティティに対して開始された接続。このタイプを使用して、コンテンツ・サーバー・インスタンス間の通信ができます。送信プロバイダでSSLを使用する方法の詳細は、第14.3項を参照してください。
受信: :ブラウザまたはクライアント・アプリケーションのような、外部エンティティから開始された接続。プロバイダは、受信接続を認識するために、指定されたポート上でリスニングを行います。受信プロバイダでSSLを使用する方法の詳細は、第14.3項を参照してください。
データベース: 接続および通信用のAPIを提供する情報リポジトリ・サーバー。これは、情報を取得し、情報をデータベースで変更できるようにします。このタイプの例は、システム・データベースです。
プレビュー: 出力プロバイダ接続で、オプションのHTML Preview機能とともに使用します。
JpsUser: Oracle WebLogic Serverインスタンスに対する接続。このプロバイダでは、Java Platform Security (JPS)を使用して、Oracle WebLogic Serverインスタンスを介したユーザー認証、ユーザー認可、およびユーザー・メタデータの取得を実行します。このタイプのプロバイダは、JpsUserProviderコンポーネントによってサポートされており、これはデフォルトではコンテンツ・サーバー・インスタンスとともにインストール(有効化)されます。
Ldapuser: ライトウェイト・ディレクトリ・アクセス・プロトコル(LDAP)サーバーに対して開始される接続で、コンテンツ・サーバー・インスタンスに対する外部ユーザー・アクセスを管理します。このタイプのプロバイダは、ActiveDirectoryLdapコンポーネントによってサポートされており、これはデフォルトではインストール時にインストール(無効化)されます。
注意: 11g リリース1(11.1.1)以後、Ldapuserの機能はほとんどの場合(特にネストされたグループのサポートの場合)、JpsUserがかわりに使用されています。 |
HTTP: HTTPプロトコルを使用して、コンテンツ・サーバー・インスタンス間の通信を可能にする接続。このタイプのプロバイダは、ProxyConnectionsコンポーネントによってサポートされており、これはデフォルトではコンテンツ・サーバー・インストール時にインストール(有効化)されます。このタイプの接続の使用が必要な状況と使用方法の詳細は、第22章を参照してください。
前項で説明した様々なタイプのプロバイダは、特定の状況の下で、その他の各種Oracle製品およびユーティリティを使用するために使用されます。この後の各項では、それらの状況と、各状況で使用する必要のある特定のプロバイダのタイプについて説明します。
送信プロバイダは、コンテンツ・サーバーのアーカイバ・ユーティリティおよびOracle WebCenter Content: Inbound Refineryを使用するために必要です。送信プロバイダでSSLを使用するか、キープアライブにする場合、第14.3項の詳細を参照してください。
アーカイバ・ユーティリティ(コンテンツ・サーバー): アーカイバは、核となるコンテンツ・サーバー内のユーティリティで、システム管理者がコンテンツをコピーおよび削除し、今後の使用のために格納できるようにします。ユーザーは、コンテンツ・サーバー・インスタンスに一連のコンテンツを問い合せ、それをアーカイブにエクスポートできます。アーカイブはその他のコンテンツ・サーバー・インスタンスにインポートすることも、メタデータ・フィールドを変更した元のインスタンスにインポートすることもできます。
送信プロバイダは、ファイアウォールを越えて、あるいは1つのファイル・システムを共有していない2つのシステム間で、コンテンツをアーカイブするために使用されるアーカイバ転送機能を使用する際に必要です。転送機能、各種の転送および送信プロバイダの要件の詳細は、第24章を参照してください。
Inbound Refinery: Inbound Refineryサーバーでは、コンテンツ・サーバーにチェックインされたコンテンツを処理し、それを指定されたフォーマットに変換します。Inbound Refineryサーバーへの送信接続は、コンテンツ・サーバーとの通信に必要です。詳細は、Oracle Fusion Middleware Oracle WebCenter Contentの管理を参照してください。
データベース・プロバイダは、外部データベースを使用するために必要です。デフォルトのコンテンツ・サーバー・データベースではないデータベースでデータベース問合せを実行する場合に、望ましい、または必要になることがしばしばあります。この場合、カスタマイズされたデータベース・プロバイダを作成して、データを処理しているデータベース管理システムに関係なく、任意のアプリケーションから任意のデータにアクセスできるようにすることが可能です。カスタマイズされたデータベース・プロバイダを使用して、外部データベースをコンテンツ・サーバーに統合すると、1つの検索ページで検索結果を結合して表示できます。さらに、これらの外部データベース・ソースからデータをインポートできます。
管理者は、次の2つの方法のいずれかで、データベース・プロバイダを作成できます。
Oracle WebLogic Serverの管理コンソールを使用して、データベースにOracle WebLogic Serverデータ・ソースを作成し、コンテンツ・サーバー・データベース・プロバイダでそのデータ・ソースが使用できるように構成します。WebLogicドメイン・サーバーのJDBCデータ・ソースの作成方法の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』を参照してください。
コンテンツ・サーバー・データベース・プロバイダを作成して、Oracle WebLogic Serverデータ・ソースを使用せずに、JDBC接続を介してデータベースに直接接続します。このモードは、構成内に事前に接続が存在するインスタンス用に提供されています。
受信プロバイダは、WebDAVサポートおよびコンテンツ・サーバー・アーカイバ・ユーティリティを使用するために必要です。受信プロバイダでSSLを使用するか、キープアライブにする場合、第14.3項の詳細を参照してください。
アーカイバ・ユーティリティ(コンテンツ・サーバー): アーカイバは、コンテンツ・サーバー内のユーティリティで、システム管理者がコンテンツをコピーおよび削除し、今後の使用のために格納できるようにします。ユーザーは、コンテンツ・サーバー・インスタンスに一連のコンテンツを問い合せ、それを別のインスタンスにエクスポート、インポートまたはレプリケートしたり、メタデータ・フィールドを変更したりできます。システム内で最も頻繁に実行されるタスクは、情報の転送、バックアップおよび再編成です。
一般に、データまたはコンテンツ・アイテムが1つのリポジトリから別のリポジトリに移されると、アーカイバ・ユーティリティではプッシュ・テクノロジを使用してファイルを移動します。ただし、システムではファイルのプッシュよりプルが必要になることがあります。この場合、受信プロバイダを作成する必要があります。
Oracle WebDAVサポート: コンテンツ・サーバーのバージョン7.0以降では、カスタム機能によりWebベース分散オーサリングおよびバージョニングが提供されるため、受信プロバイダとサーブレット・エンジンは必要ありません。
詳細は、Oracle Fusion Middleware Oracle WebCenter Contentの管理を参照してください。
プレビュー・プロバイダは、HTMLプレビューおよびContent Categorizerを使用するために必要です。
HTMLプレビュー: HTMLプレビューは、公開Webサイトでユーザーのコンテンツがどのように表示されるのかのフィードバックを、即時にユーザーに提供する機能です。この機能によりユーザーは、コンテンツが実際にチェックインされる前に、元のコンテンツを変更できます。HTMLプレビューは、正しいメタデータがコンテンツに割り当てられていることをユーザーが確認するのにも役立ちます。プレビュー・プロバイダは、インストール・プロセス中に作成する必要があります。HTMLプレビューに関する追加の概要およびインストール情報は、Oracle Fusion Middleware Oracle WebCenter Contentの管理を参照してください。
Content Categorizer: Content Categorizerでは、コンテンツ・サーバーにチェックインするドキュメントや、メタデータを再適用する必要がある既存のドキュメントに対して、メタデータ値を提案します。Content Categorizerでドキュメントの構造上のプロパティが認識されるには、ファイルをXMLに変換する必要があります。
Content Categorizerの詳細は、Oracle Fusion Middleware Oracle WebCenter Contentの管理を参照してください。このマニュアルでは、必須またはオプションの追加製品の関連情報を提供しています。
JpsUserは、Oracle WebLogic Server管理コンソールで管理されるユーザー情報および資格証明と通信するための、WebCenter Content Serverインスタンスのデフォルトのプロバイダです。Oracle WebCenter Contentインスタンスおよびコンテンツ・サーバー・インスタンスには、JpsUserプロバイダを使用することをお薦めします。
注意: リリース11g R11以降、コンテンツ・サーバー・インスタンスでは、特にネストされたグループのサポートの場合などに、JpsUserプロバイダが直接のLDAPプロバイダ機能のかわりに使用されています。 |
注意: サイトがWebCenter Contentソフトウェアの10g以前のリリースからアップグレードしている場合、またActive Directory、LDAPまたはActive DirectoryとLDAPを使用している場合、これらのプロバイダに関する情報は、リリース10gR3ドキュメントセキュリティおよびユーザー・アクセスの管理で参照できます。JpsUserプロバイダを使用するようにサイトをアップグレードすることをお薦めします。 |
システム定義のJpsUserプロバイダでは、コンテンツ・サーバー・インスタンスに接続し、Oracle WebLogic Server認証メカニズム(基本、フォーム、シングル・サインオン、WNAなど)をサポートします。Javaプラットフォーム・セキュリティ(JPS)には、バックエンドのユーザー・ストレージ(XML、LDAP、データベース、Active Directoryなど)に関係なく、Oracle WebCenterアプリケーションからユーザーの認証および認可を行う統一インタフェースがあります。JPS APIコールは、ユーザー認証、ユーザー認可およびユーザー・メタデータ取得の実行に使用されます。
JpsUserProviderコンポーネントは、コンテンツ・サーバー・インスタンスがOracle WebLogic Serverインスタンスに対してインストールされているときに、システム・コンポーネントとしてインストールし、有効化します。JpsUserProviderは、標準のコンテンツ・サーバー・コンポーネントとしても使用可能です。
注意: サイトでシステム定義のJpsUserプロバイダに加えてさらにJpsUserプロバイダが追加されることはまずありません。そのように別のプロバイダを追加すると、WebCenter Content Serverのインストールに問題が生じる可能性があります。 |
コンテンツ・サーバー・インスタンスの「プロバイダ」ページを使用してJpsUserプロバイダを編集できます。接続の構成も、アイデンティティ・ストアおよび資格証明ストアを使用するように、jps-config.xml
ファイルを介して編集できます。
JPSストアに対して認証する場合、JpsUserプロバイダを使用してOracle WebLogic Serverインスタンス上の別のアプリケーションと同じセキュリティ記憶域を共有できます。たとえば、JpsUserプロバイダを使用すると、Oracle WebLogic Serverインスタンスにインストールされているイメージおよび処理マネージャ・ソフトウェアと、セキュリティ記憶域を共有できます。
注意: リリース11 |
JpsUserプロバイダには、コンテンツ・サーバーで認証プロバイダでのユーザーの直接および間接グループ・メンバーシップを取得するか、またはユーザーの直接グループ・メンバーシップのみを使用するかを指定するUseNestedGroups構成オプションが含まれます。
UseNestedGroupsがFALSEに設定されている場合、ユーザーの直接メンバーシップのみが認証プロバイダから取得されます。
UseNestedGroupsがTRUEに設定されている場合、直接および間接メンバーシップの両方が認証プロバイダから取得されます。これはJpsUserプロバイダのデフォルトの動作です。
構成設定はファイルIntradocDir
/data/providers/jpsuserprovider/provider.hda
内に配置されています。
JpsUserプロバイダを介してLDAPサービスからWebCenter Contentにカスタム・フィールドをマップする場合に、カスタム・フィールドが空であった場合のデフォルトの動作では、何のアクションも実行されません。たとえば、値123456789を持つカスタム・フィールドがあり、この値を削除すると、Oracle WebCenter Contentでは欠落している属性が無視され、通常カスタム・フィールドが空になることはないという原則に基づいて、引き続き123456789が反映されます。
WebCenter Contentでカスタム・フィールドを空にするには、JpsUserプロバイダのprovider
.hda
ファイルで変数ClearMissingAttributes=true
を有効化および設定して、デフォルト動作を変更する必要があります。このファイルのデフォルトの場所は、Domain_Home
/ucm/cs/data/providers/jpsuserprovider/provider.hda
です。ファイル内の@end行より前に変数を追加してください。次に例を示します。
SourcePath=jpsuser ProviderClass=idc.provider.jps.JpsUserProvider ClearMissingAttributes=true @end
この変数の詳細は、Oracle Fusion Middleware Oracle WebCenter Content構成リファレンスを参照してください。
WebCenter Contentでは、/
(スラッシュ)文字にマップされるセパレータとして %
(パーセント記号)文字など、フラットLDAP構造から取得されたアカウント階層を指定するための1文字のマッピングの使用がサポートされます。マッピングは、その他すべてのフィルタリングが実行され、名前が閉じられてから行われます。
次の3つの設定によりこの動作が制御されます。これらはDomain_Home
/ucm/cs/data/providers/jpsuserprovider/provider.hda
ファイルまたはDomainHome
/ucm/cs/config/config.cfg
ファイル内で指定できます。
DoAccountCharMap: (ブール型) オプションを有効または無効にします。1
またはtrue
に設定できます。デフォルトは、false
です。
AccountCharMapSource: ユーザー・ストア・グループ(アカウント)内の1つの文字を指定します。デフォルトは%です。
AccountCharMapTarget: Oracle WebCenter Contentアカウント名内の1つの文字を指定します。デフォルトは/です。
次に例を示します。
DoAccountCharMap=true AccountCharMapSource=% AccountCharMapTarget=/
Domain_Home
/ucm/cs/data/providers/jpsuserprovider/provider.hda
ファイルで変数ProviderCredentialsMap=
name_of_map
を有効化および設定して、JpsUserプロバイダに資格証明マップを定義できます。この変数の詳細は、Oracle Fusion Middleware Oracle WebCenter Content構成リファレンスを参照してください。資格証明マッピングの詳細は、第22.2項を参照してください。
Lightweight Directory Access Protocol (LDAP)は、TCP/IPで実行されるディレクトリ・サービス・プロトコルです。これは、ネットワーク内のリソース管理の高度な機能性を提供し、アプリケーションとともに使用して、セキュリティおよびユーザー認証を管理します。LDAPディレクトリ・サービス・モデルは、属性のコレクションに基づいており、情報ディレクトリに格納されている情報へのアクセスに使用されます。このように、LDAPは、ユーザー名およびパスワード資格証明のセットを認証ソースに照合して検証するために使用されます。このプロセスにより、ユーザーにはWebリソースにアクセスする権限が付与されます。
LDAPサーバーには、コンテンツ・サーバーやその他のOracle製品のモジュールなどのアプリケーションからアクセスできるユーザー関連情報のソースが1つあります。
注意: リリース11gR1以後、コンテンツ・サーバーにはLdapuserプロバイダ機能のかわりにJpsUserProviderが使用されています。コンテンツ・サーバーのユーザーおよびセキュリティ管理にコンテンツ・サーバーLDAPプロバイダを使用することはお薦めできません。詳細は、第14.2.5項を参照してください。 |
LDAPサーバー(コンテンツ・サーバー・インスタンスと直接統合できるActive Directory以外)の使用を決定する場合、コンテンツ・サーバー・インスタンスとLDAPサーバー間の通信を設定するために、Ldapuserプロバイダを設定する必要があります。正しく構成されている場合、Ldapuserプロバイダでは、ロールの割当ておよびアカウント権限(LDAPプロバイダ・ページで定義)にリンクするマッピング・プロパティを通じて、外部ユーザーが認可されます。
Oracle Fusion MiddlewareでサポートされるLDAPサーバーの詳細は、次のOracle Technology Networkで動作保証情報を参照してください。
必須ではありませんが、コンサルティング・サービスを利用して、LDAPセキュリティ・モデルを作成し、LDAP統合をデプロイすることをお薦めします。詳細は、営業担当者にご連絡ください。
次のコンテンツ管理製品およびアーキテクチャでも、LDAP統合が役立つことがあります。
Content Tracker: Content Trackerは、組み合せたときに、ユーザーが標準ブラウザを使用して、統合された一連の分析ツールを介してコンテンツの使用を追跡できるソフトウェア機能の集まりから構築されるシステムです。コンテンツ・サーバー・インスタンスにより提供されるデータは、Webサーバー・ログ・データ、コンテンツ・サーバー・データおよびユーザー情報などのログ・データから導出されます。Content Trackerでは、このデータにアクセスし、データの分析を行い、説明的なレポートを作成します。LDAPディレクトリ・サーバーとContent Trackerの統合はオプションです。ただし、LDAPが使用される場合、LDAPプロバイダを作成する必要があります。
関連するデータ・リポジトリ、レポート生成、問合せの作成およびインストール手順の詳細は、Oracle Fusion Middleware Oracle WebCenter Contentの管理を参照してください。
コンテンツ・サーバーとその他のOracleアプリケーション間のセキュリティ構成統合に加えて、コンテンツ・サーバー自体のSecurityProvidersコンポーネントは、基本の受信および送信ソケット・プロバイダに2つの新しいタイプのプロバイダを加えて拡張することで、セキュリティ強化に使用できます。
Secure Socket Layer (SSL)プロバイダ
キープアライブ・プロバイダ
セキュリティ・プロバイダを鍵および証明書とともに適切に使用すると、コンテンツ・サーバー・インスタンスとのネットワークおよびインターネット通信のセキュリティを強化できます。SecurityProvidersコンポーネントを使用する利点には、次のものがあります。
通信の暗号化および認証を提供することにより、SSLがWeb通信のセキュリティを強化します。
セキュリティ・プロバイダにより、ソケットまたはサーバー認証に証明書を使用できます。
キープアライブおよび接続プーリング・ロジックは、SSLソケットの作成および解除の量を減らすことで、SSL費用のオーバーヘッドを避けるのに役立ちます。
SecurityProvidersコンポーネントは、デフォルトではコンテンツ・サーバー・インスタンスによりインストール(有効化)されます。
リファレンス
SecurityProvidersコンポーネントを使用するには、ソケット・プロバイダ、セキュリティおよび認証、SSL、キープアライブ、およびネットワーク通信のその他のセキュリティ面に精通している必要があります。SecurityProvidersコンポーネントで作業する場合、次の情報ソースが役立ちます。
『Java Secure Socket Extension (JSSE) Reference Guide for the Java 2 SDK, Standard Edition』
このオンライン・ドキュメントはオラクル社から入手可能です。これには広範囲に及ぶ関連ドキュメント・セクションがあり、参考図書、セキュリティ基準、政府のセキュリティに関する政策および規制、暗号化およびSSLに関する書籍一覧が含まれています。
『keytool Key and Certification Management Tool』
このオンライン・ドキュメントはオラクル社から入手可能です。
RSA社の『Public Key Cryptography Standards』
このオンライン・ドキュメントは、RSA社から入手可能です。
RSA社の『Cryptography FAQ』
このオンライン・ドキュメントは、RSA社から入手可能です。
『SSL Certificate FAQ』
このオンライン・ドキュメントは、Linux Documentation Projectから入手可能です。
用語集
次の表では、この項で使用されるいくつかのセキュリティ用語の定義を示しています。詳細は、情報参照先のリスト、またはセキュリティおよび認証基準の情報源を参照してください。
用語 | 説明 |
---|---|
証明書 |
エンティティ(人または組織)のアイデンティティおよび公開鍵を確認するデジタル署名。証明書は、認証局または個々のエンティティで発行できます。 |
認証局(CA) |
他のエンティティのために証明書を発行するエンティティで、VeriSignやThawteのような、有名で信頼できる証明書の発行元として認識されています。 |
キーストア |
認証処理に使用される鍵の情報のファイルまたはデータベース。 |
秘密鍵 |
発行者であるエンティティのみが知っている鍵としてパッケージ化された情報。秘密鍵は、署名生成で使用されます。 |
公開鍵 |
エンティティに公に関連付けられた鍵としてパッケージ化された情報。公開鍵は、署名の確認に使用されます。 |
SSL |
Secure Socket Layerは、公開鍵と秘密鍵のテクノロジの組合せを使用するセキュアなネットワーク通信用のプロトコル。 |
トラストストア |
トラスト・マネージャが信頼できると判断した鍵のファイルまたはデータベース。 |
SSLソケット・プロバイダまたはキープアライブ・ソケット・プロバイダを実装する前に、セキュリティ・プロバイダをどのように使用するかを決めることをお薦めします。キープアライブおよびSSLの接続タイプを調べ、選択したセキュリティ・プロバイダを使用するために、キーストアやトラスト・ストアを作成する必要性など、追加の構成が必要かどうかを決定します。
次の項では、プロバイダ・タイプの動作を制御するために使用するJavaクラスや、必要になる可能性のある追加構成など、SSLおよびキープアライブ・プロバイダ・タイプについてより多くの情報を提供しています。
キープアライブ機能は、永続的接続やサービス・リクエスト用のソケット接続のプーリングを可能にします。キープアライブ接続の設定は、接続の設定および解除に時間がかかる可能性のあり、そのアクティビティにかかる時間を最小限にする必要がある場合に、最も役に立ちます。SecurityProvidersコンポーネントは、受信および送信の2つのキープアライブ・ソケット・プロバイダを提供します。
キープアライブ受信ソケット・プロバイダの設定には、次のJavaクラスが使用されます。
Javaクラス | 説明 |
---|---|
プロバイダ・クラス |
idc.provider.ExtendedSocketIncomingProvider |
接続クラス |
idc.provider.KeepaliveSocketIncomingConnection |
サーバー・スレッド・クラス |
idc.server.KeepaliveIdcServerThread |
キープアライブ送信ソケット・プロバイダの設定には、次のJavaクラスが使用されます。
Javaクラス | 説明 |
---|---|
プロバイダ・クラス |
idc.provider.KeepaliveSocketOutgomingProvider |
接続クラス |
idc.provider.KeepaliveSocketOutgomingConnection |
リクエスト・クラス |
idc.server.KeepaliveServerRequest |
SSLプロバイダの設定により、キープアライブ環境でSSL接続が使用できるようになります。この設定は、SSLソケットの設定および解除のコストを最小限にするのに役立つため、単純なSSLプロバイダ設定にお薦めします。SecurityProvidersコンポーネントは、キープアライブ付きの受信および送信の2つのSSLソケット・プロバイダを提供します。
SSLキープアライブ受信ソケット・プロバイダの設定には、次のJavaクラスが使用されます。
Javaクラス | 説明 |
---|---|
プロバイダ・クラス |
idc.provider.ssl.SSLSocketIncomingProvider |
接続クラス |
idc.provider.KeepaliveSocketIncomingConnection |
サーバー・スレッド・クラス |
idc.server.KeepaliveIdcServerThread |
キープアライブSSL送信ソケット・プロバイダの設定には、次のJavaクラスが使用されます。
Javaクラス | 説明 |
---|---|
プロバイダ・クラス |
idc.provider.KeepaliveSocketOutgoingProvider |
接続クラス |
idc.provider.ssl.SSLSocketOutgoingConnection |
リクエスト・クラス |
idc.provider.KeepaliveServerRequest |
どのタイプのセキュリティ・プロバイダを選択するかに応じて、追加の構成が必要になる場合があります。
キープアライブおよびSSL送信プロバイダ: 「プロバイダの追加」ページには、プールする接続数を指定する「接続の数」フィールドがあります。
SSL受信プロバイダ: プロバイダの追加ページには2つの追加オプションがあります。
「クライアント認証をリクエスト」オプション: クライアントに能力があれば、接続を行うときに自身を認証する必要があります。
「クライアントの認証が必要」オプション: クライアントは、接続をするために、自身を認証する必要があります。
「クライアント認証をリクエスト」オプションの値、「クライアントの認証が必要」オプションの値、およびどんなタイプの認証局がこれらのオプションで処理される証明書に署名をしたかにより、SSLプロバイダでは、クライアントとサーバーの両方で、1つまたは複数のキーストアと1つのトラストストアの設定が必要になる可能性もあります。キーストアおよびトラストストアの詳細は、第14.3.2項を参照してください。
SSLプロバイダには、複数のキーストアの使用が必要になる場合と、1つのトラストストアが必要になる場合があります。キーストアとは、SSLで使用するための公開鍵および秘密鍵の情報を保持するファイルです。トラストストアには、信頼できると判断された証明書が格納されます。サーバーおよびクライアント上で使用される証明書が、VeriSignやThawteなどの有名な認証局(CA)によって署名されている場合、デフォルトのJVMトラストストアにはこれらのCAの証明書が含まれてるため、トラストストアは不要です。トラストストアは、SSLプロバイダにより使用される証明書が自己署名または民間のCAによって署名されている場合に必要です。SSLプロバイダにキーストアとトラストストアが必要な場合、それらを作成および管理する必要があります。
次の各項では、キーストアとトラストストアの概要を説明します。
キーストアおよびトラストストアの詳細は、第14.3項のリストにある情報源を参照してください。
次の例は、キーストアおよびトラストストアが必要となる様々な状況と使用について示しています。
サーバーでは、SSLソケットを作成するために、署名入りSSL証明が入っているキーストアが1つ必要です。
サーバーでは、クライアント認証を要求または必要とし、これにはトラストストアが1つ必要になる場合があります。クライアントの証明書が有名なCAによって署名されていない場合、サーバーではそのCAの証明書が入っているトラストストアが必要になります。
サーバーではクライアント認証を要求または必要とし、これにはクライアントに、認証のために提示する証明書を格納するキーストアが必要になる場合があります。
サーバーでは、有名なCAによって署名されていない証明書を使用するため、クライアントにはサーバーの証明書が入っているトラストストアが必要になります。
キーストアおよびトラストストア情報を使用するために、SSL受信および送信プロバイダでは、sslconfig.hda
というファイルがプロバイダ
・ディレクトリ(provider.hda
ファイルの隣)で設定されている必要があります。sslconfig.hda
ファイルには、キーストアおよびトラストストアのために指定する構成情報が含まれています。これは次の例に似たフォーマットです。セキュリティ上の理由で、このファイルの編集に便利なWebインタフェースはなく、編集はすべて、テキスト・エディタ使用して手動で行う必要があります。これまたは任意の.hda
ファイルの各行の末尾に、スペースがないことを確認してください。
@Properties LocalDataTruststoreFile=/servers/idc/data/providers/ssloutgoing1/truststoreKeystoreFile=/servers/idc/data/providers/ssloutgoing1/keystore@end
構成名 | 値の説明 |
---|---|
TruststoreFile |
トラストストア・ファイルへのフル・パス。 |
KeystoreFile |
キーストア・ファイルへのフルパス。 |
この項では、キーストア生成の基本プロセスを説明します。自分のSSLプロバイダ用に作成する鍵およびキーストアに、固有の要件と名前を決める必要があります。sslconfig.hdaファイルにはそのKeystoreFile構成設定のフルパスが含まれているため、キーストア・ファイルは好きなところに格納できます。ただし、キーストア・ファイルは、IntradocDir
/data/providers/
provider_name
ディレクトリ(provider.hda
ファイルおよびsslconfig.hda
ファイルの隣)か、IntradocDir
/config/
ディレクトリに格納することをお薦めします。コンテンツ・サーバー・インスタンスのプロバイダ・ページを使用して、エイリアスおよびパスワードを設定します。
キーストアを生成するキーツール・ユーティリティの使用方法の詳細は、オラクル社からオンラインで入手可能な『keytool Key and Certification Management Tool』というタイトルのドキュメントを参照してください。
注意: Java keytoolユーティリティには、秘密鍵との直接の対話を防ぐ機能があります。この機能とは、キーツールを使用して生成される証明書をキーストアに貼り付けることで、そのため証明書から秘密鍵の部分を取得することはできません。逆に、キーツールで、前から存在する証明書をJavaキーストアにインポートする方法はありません。 Portecle Javaキーストアを使用すると、Javaキーストアからの秘密鍵のインポートおよびエクスポートができます。詳細は、portecle.sourceforge.netを参照してください。 |
キーツールを使用するには、コマンドを入力する際に、自分のパスにそのユーティリティを持っている必要があります。
キーストアで鍵を作成します。次のコマンドラインの例は、aliasという名前の鍵のエントリを、keystoreという名前のキーストアに作成する方法を示しています。このコマンドは、キーストアのパスワード、鍵を生成するために使用される情報、および鍵自体のパスワードの入力を要求します。鍵のパスワードがキーストアのパスワードと異なる場合、鍵の取得にKeystoreAliasおよびKeystoreAliasPasswordの値が必要です。
keytool -genkey -v -alias alias -keystore keystore
証明書の署名リクエストを生成します。次のコマンドラインの例は、keystoreという名前のキーストアでaliasという名前の鍵エントリを生成し、これをcsr_fileという名前のファイルに格納する方法を示しています。このファイルは、CAに送信して署名してもらうことができます。
keytool -certreq -v -alias alias -keystore keystore -file csr_file
CAの証明書をキーストアにインポートします。キーツールが、ユーザーの証明書がインポートされると同時に、一連の信用をチェックします。証明書に有名でないCAの署名が入っていて、キーツールにそのCAに関する情報がない場合、その証明書は却下されます。したがって、有名ではないCAからの証明書はすべて、まずはキーストアにインポートし、そのユーザーの証明書が次のステップで正常にインポートされるようにする必要があります。次のコマンドラインの例は、cert_fileという名前のファイルにある証明書を、keystoreという名前のキーストアにインポートする方法を示しています。
keytool -import -v -alias ca_alias -keystore keystore -file cert_file
署名の入った証明書を元のキーストアにインポートします。証明書の署名リクエストがCAで受信され、署名の入った証明書がCAから送り返されてくると、その証明書は、エイリアスで識別されるキーストア・エントリに読み込むことができきます。次のコマンドラインの例は、署名の入った証明書をインポートする方法を示しています。
keytool -import -v -alias alias -keystore keystore_name -file csr_file
すべてがキーストアにあることを確認します。
keytool -list -v -keystore keystore_name
この項では、トラストストア生成の基本プロセスを説明します。トラストストアは、SSLプロバイダで有名な認証局の署名のない鍵を使用する場合に必要です。トラストストアには、コンテンツ・サーバー・インスタンス用にトラストストアの管理者(トラスト・マネージャ)によって確認された公開証明書のみが格納されています。作成するトラストストア固有の要件および名前を決める必要があります。sslconfig.hda
ファイルにはTruststoreFile構成設定のフルパスが含まれているため、トラストストア・ファイルは好きなところに格納できます。ただし、トラストストア・ファイルは、IntradocDir
/data/providers/
provider_name
ディレクトリ(provider.hda
ファイルおよびsslconfig.hda
ファイルの隣)か、IntradocDir
/config/
ディレクトリに格納することをお薦めします。
トラストストアを生成するキーツール・ユーティリティの使用方法の詳細は、http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/keytool.htmlからオンラインで入手可能な『keytool Key and Certification Management Tool』というタイトルのドキュメントを参照してください。キーツール・ユーティリティを使用するには、コマンドを入力する際に、自分のパスにそのユーティリティを持っている必要があります。
次のコマンドラインの例は、トラストストアの作成方法を示しています。
keytool -import -v -alias alias -keystore keystore -file cert_files
変数 | 説明 |
---|---|
alias |
キーのエイリアス名。 |
keystore |
キーストアの名前。 |
cert_file |
認証局の証明書へのパス。 |
この項の内容は次のとおりです。
送信プロバイダを追加するには、次のようにします。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」表で、「送信」プロバイダ・タイプの「アクション」列で「追加」をクリックします。
送信ソケット・プロバイダページで構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
サーバー・ホスト名
サーバー・ポート
プロバイダ・クラス(事前定義)
オプションのフィールド
接続クラス(事前定義)
構成クラス
相対Webルート
HTTPサーバー・アドレス
インスタンス名
必要なロール
アカウント・フィルタ
オプションのチェック・ボックス
プロキシ
ターゲットへの通知
ユーザー
リリースされたドキュメント
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
データベース・プロバイダの構成は、WebCenter Contentおよびコンテンツ・サーバー・インスタンスがOracle WebLogic Serverドメインにインストールされるときに指定されます。
データベース・プロバイダを追加するには、次のようにします。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」項で、「データベース」プロバイダ・タイプの「アクション」列で「追加」をクリックします。
「データベース・プロバイダ」ページで構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
プロバイダ・クラス(事前定義)
データベース・タイプ
JDBCドライバ
JDBC接続文字列
問合せのテスト
オプションのフィールド
接続クラス(事前定義)
構成クラス
データ・ソース
データベース・ディレクトリ
データベース名
JDBCユーザー
JDBCパスワード
接続の数(デフォルト指定)
追加のストレージ・キー(デフォルト指定)
追加設定
オプションのチェック・ボックス
データ・ソースの使用
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
プロバイダを使用してサーバー・ソケットに接続するには、コンサルティング・サービスが必要です。
受信プロバイダを追加するには、次のようにします。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」項で、「受信」プロバイダ・タイプの「アクション」列で「追加」をクリックします。
「受信プロバイダ」ページで構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
サーバー・ポート
プロバイダ・クラス(事前定義)
オプションのフィールド
接続クラス(事前定義)
構成クラス
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
プレビュー・プロバイダを追加する手順は、HTMLプレビュー機能のzipファイル内で提供される情報を参照してください。HTMLプレビュー機能のzipファイルおよびガイドは、Oracle Technology NetworkのWebサイトからダウンロード可能です。
受信セキュリティ・プロバイダを追加する手順は次のとおりです。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」表で、keepaliveincomingまたはsslincomingプロバイダ・タイプの「アクション」列の「追加」をクリックします。
keepaliveincomingプロバイダのページまたはsslincomingプロバイダのページで、次のように構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
プロバイダ・クラス(事前定義)
サーバー・ポート
オプションのフィールド
接続クラス(事前定義)
構成クラス
サーバー・スレッド・クラス(事前定義)
オプションのチェック・ボックス(sslincomingプロバイダのみ)
クライアント認証をリクエスト
クライアントの認証が必要
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
送信セキュリティ・プロバイダを追加する手順は次のとおりです。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」表で、keepaliveoutgoingまたはssloutgoingプロバイダ・タイプの「アクション」列の「追加」をクリックします。
keepaliveoutgoingプロバイダのページまたはssloutgoingプロバイダのページで、次のように構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
プロバイダ・クラス(事前定義)
サーバー・ホスト名(事前定義)
サーバー・ポート
インスタンス名
相対Webルート
オプションのフィールド
接続クラス(事前定義)
構成クラス
リクエストのクラス(事前定義)
接続の数(事前定義)
HTTPサーバー・アドレス
必要なロール
アカウント・フィルタ
オプションのチェック・ボックス
プロキシ
ターゲットへの通知
ユーザー
リリースされたドキュメント
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
Oracle JPS(Oracle WebLogic Serverインスタンス用)を統合するデフォルトのJPSユーザー・プロバイダは、WebCenter Contentシステムをインストールすると提供されます。
注意: サイトでシステム定義のJpsUserプロバイダに加えてさらにJpsUserプロバイダが追加されることはまずありません。そのように別のプロバイダを追加すると、コンテンツ・サーバーのインストールに問題が生じる可能性があります。 |
「JPSユーザー・プロバイダ」ページで指定されるオプション以外のその他の構成オプションの詳細は、第14.2.5.1項を参照してください。
JpsUserプロバイダを追加する手順は次のとおりです。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」表で、jpsuserプロバイダ・タイプの「アクション」列で「追加」をクリックします。
「JPSユーザー・プロバイダ」ページで構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
プロバイダ・クラス(事前定義)
ソース・パス
オプションのフィールド
接続クラス
構成クラス
JPSコンテキスト
デフォルト・ネットワーク・ロール
属性マップを指定するには、次のようにします。
「JPS属性」リストから情報フィールドを選択します。
「ユーザー属性」リストからコンテンツ・サーバーのユーザー情報フィールドを選択します。
「追加」をクリックします。テキスト・ボックスに、その属性マップが追加されます。
必要ならば、「属性マップ」テキスト・ボックスで属性を直接編集します。
必要ならば、デフォルト・ネットワーク・ロールを変更または追加します。
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
Webサーバーを再起動します。
HTTP送信プロバイダを追加するには、次の手順を実行します。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「新規プロバイダの作成」表で、httpoutgoingプロバイダ・タイプの「アクション」列で「追加」をクリックします。
送信HTTPプロバイダページで構成値を入力します。
必須のフィールド
プロバイダ名
プロバイダの説明
プロバイダ・クラス(事前定義)
CGI URL
インスタンス名
相対Webルート
オプションのフィールド
接続クラス(事前定義)
構成クラス
接続パスワード名
接続パスワード
クライアントのIPフィルタ
「追加」をクリックします。「プロバイダ」表に追加した新規プロバイダが入った「プロバイダ」ページが開きます。
コンテンツ・サーバー・インスタンスを再起動します。
既存のプロバイダ(デフォルトのシステム・プロバイダを除く)の構成を編集する手順は、次のとおりです。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「プロバイダ」表で、編集するプロバイダの「アクション」列の「情報」をクリックします。
「プロバイダ情報」ページで「編集」をクリックします。
Add/Edit Providerページで、必要な変更を行います。
「更新」をクリックして変更内容を保存し、「プロバイダ」ページに戻ります。
コンテンツ・サーバー・インスタンスを再起動します。
既存のプロバイダ(デフォルトのシステム・プロバイダを除く)を削除するには、次のようにします。
Webブラウザを使用して、コンテンツ・サーバーのホームページにアクセスし、「管理」→「プロバイダ」を選択します。
「プロバイダ」ページの「プロバイダ」表で、削除するプロバイダの「アクション」列の「情報」をクリックします。
「プロバイダ情報」ページで「削除」をクリックします。
「確認」ウィンドウで「OK」をクリックします。「プロバイダ」表からそのプロバイダが削除されます。
重要: 単に情報を編集するのではなく、プロバイダの削除が目的であることを確認してください。プロバイダを削除すると、プロバイダ名およびその関連情報すべてが、「プロバイダ」表から永久に削除されます。 |