Oracle Fusion Middlewareには、管理目的に特化したアカウントを含む、多くのセキュリティ機能が用意されています。この章では、追加の管理アカウントの作成、アプリケーション・ロールの作成、これらのアカウントのパスワード変更、およびSSLの構成を行う方法について説明します。
この章の内容は次のとおりです。
Oracle Fusion Middlewareのインストール時および構成時に、管理ユーザーとそのパスワードを指定する必要があります。デフォルトでは、このユーザー名はweblogic
です。この管理アカウントを使用して、Fusion Middleware ControlおよびOracle WebLogic Server管理コンソールにログインできます。
Oracle WebLogic Server管理コンソールを使用して、別の管理ユーザーを作成できます。
完全な権限を持つ新しい管理ユーザーを作成するには:
Oracle WebLogic Server管理コンソールに移動します (たとえば、Fusion Middleware Controlでドメインのホーム・ページから「このWebLogicドメインを構成および管理するには、Oracle WebLogic Server管理コンソールを使用します。」を選択します)。
ナビゲーション・ペインから「セキュリティ・レルム」を選択します。
「セキュリティ・レルム」ページのサマリーが表示されます。
myrealmなどのレルムを選択します。
レルム・ページの「設定」が表示されます。
「ユーザーとグループ」タブを選択し、「ユーザー」タブを選択します。「新規」をクリックします。
「新規ユーザーの作成」ページが表示されます。
「名前」に、新しいユーザーの名前を入力します。この場合、「admin2」と入力します。
必要に応じて、アカウントの説明を入力します。
プロバイダ認証者には、デフォルト値である「DefaultAuthenticator」を使用します。
「パスワード」に、アカウント用のパスワードを入力します。「パスワードの確認」に、パスワードを再入力します。
「DefaultAuthenticator」を選択した場合、Oracle Fusion Middlewareユーザーに割り当てるパスワードには次のルールが適用されます。
文字が8つ以上含まれている必要があります。
1つ以上の文字が、数字または特殊文字(ドル記号($)、番号記号(#)またはアンダースコア(_))である必要があります。
「OK」をクリックします。
「ユーザー」表で、新規作成したユーザーを選択します。
ユーザーの設定ページが表示されます。
「グループ」タブを選択します。
「使用可能」グループからグループを選択します。この場合、新しいユーザーに完全な権限を付与するために、次の図に示すように、「管理者」を選択してから選択済リストに移動させます。
「保存」をクリックします。
この時点で、Oracle WebLogic Serverドメインの管理者ロールを持つ、admin2という名前のユーザーが作成されています。
別のユーザーに、構成は変更できずOracle Fusion Middlewareの監視のみ可能な、最小限の権限を付与する場合もあります。 追加ユーザーを作成し、制限のあるアクセス権を付与することができます。たとえば、アプリケーションをデプロイする権限を持つユーザーを作成できます。
アプリケーションをデプロイできる追加ユーザーを作成するには:
Oracle WebLogic Server管理コンソールに移動します (たとえば、Fusion Middleware Controlでドメインのホーム・ページから「このWebLogicドメインを構成および管理するには、Oracle WebLogic Server管理コンソールを使用します。」を選択します)。
ナビゲーション・ペインから「セキュリティ・レルム」を選択します。
「セキュリティ・レルム」ページのサマリーが表示されます。
myrealmなどのレルムを選択します。
レルム・ページの「設定」が表示されます。
「ユーザーとグループ」タブを選択し、「ユーザー」タブを選択します。「新規」をクリックします。
「新規ユーザーの作成」ページが表示されます。
「名前」に、新しいユーザーの名前を入力します。この場合、「app_deployer」と入力します。
必要に応じて、アカウントの説明を入力します。
「パスワード」に、アカウント用のパスワードを入力します。「パスワードの確認」に、パスワードを再入力します。
「DefaultAuthenticator」を選択した場合、Oracle Fusion Middlewareユーザーに割り当てるパスワードには次のルールが適用されます。
文字が8つ以上含まれている必要があります。
1つ以上の文字が、数字または特殊文字(ドル記号($)、番号記号(#)またはアンダースコア(_))である必要があります。
「OK」をクリックします。
「ユーザー」表で、新規作成したユーザーを選択します。
ユーザーの設定ページが表示されます。
「グループ」タブを選択します。
「使用可能」グループからグループを選択します。この場合、新しいユーザーにアプリケーションのデプロイ権限のみを付与するために、デプロイヤを選択してから選択済リストに移動させます。
「保存」をクリックします。
Oracle WebLogic Server管理コンソールを使用して、ユーザーのパスワードを変更できます。
管理ユーザーのパスワードを変更するには:
Oracle WebLogic Server管理コンソールに移動します (たとえば、Fusion Middleware Controlでドメインのホーム・ページから「このWebLogicドメインを構成および管理するには、Oracle WebLogic Server管理コンソールを使用します。」を選択します)。
ナビゲーション・ペインから「セキュリティ・レルム」を選択します。
「セキュリティ・レルム」ページのサマリーが表示されます。
myrealmなどのレルムを選択します。
レルム・ページの「設定」が表示されます。
「ユーザーとグループ」タブを選択し、「ユーザー」タブを選択します。ユーザーを選択します
ユーザーの設定ページが表示されます。
「パスワード」タブを選択します。
新しいパスワードを入力し、確認のため再入力します。
「保存」をクリックします。
SSLは、メッセージの暗号化、整合性および認証を提供することで、通信を保護します。SSL標準により、関係するコンポーネント(ブラウザやHTTPサーバーなど)は、どの暗号化、認証および整合性メカニズムを使用するかのネゴシエーションができます。
暗号化を行うと、正当な受信者のみがメッセージを読むことができ機密が保持されます。SSLでは、様々な暗号化アルゴリズムを使用してメッセージを暗号化できます。各SSLセッションの開始時に行われるSSLハンドシェイク中、クライアントとサーバーは、どのアルゴリズムを使用するかのネゴシエーションを行います。SSLがサポートしている暗号化アルゴリズムには、AES、RC4、3DESなどがあります。
整合性により、クライアントが送信したメッセージが改ざんされずに正当なサーバーに届きます。メッセージの整合性を確保するために、クライアントはハッシュ機能を使用してメッセージをダイジェストにハッシュし、このメッセージ・ダイジェストをサーバーに送信します。サーバーは、さらにこのメッセージをダイジェストにハッシュし、これら2つのダイジェストを比較します。SSLでは、2つの異なるメッセージから同じダイジェストをコンピュータで生成するのが不可能なハッシュ機能を使用しているため、サーバーでは2つのダイジェストが一致しない場合には、何者かによりメッセージが改ざんされたと見なすことができます。SSLがサポートしているハッシュ機能の1つに、SHA1があります。
認証を使用すると、サーバーとクライアントは互いに相手の身元を確認できます。クライアントがSSLセッションを開始すると、サーバーは通常、サーバー自身の証明書をクライアントに送信します。証明書とは、VeriSignなどの信頼できる認証局によって発行されるデジタルIDです。
クライアントは、サーバー証明書内の証明連鎖を検証することで、サーバーが本物であることを確認します。サーバー証明書は、サーバー証明書に署名した認証局(CA)により保証されています。
また、サーバーがクライアントの識別を認証する必要がある場合には、サーバーがクライアントに証明書の所持を要求することもできます。
この項の内容は次のとおりです。
Oracle Fusion Middlewareでは、すべてのJavaコンポーネントおよびアプリケーションはJKSキーストアを使用します。そのため、Oracle WebLogic Serverで稼働するすべてのJavaコンポーネントおよびアプリケーションは、JKSベースのキーストアおよびトラストストアを使用します。
Oracle Virtual Directoryシステム・コンポーネントは、JKS キーストアを使用して、鍵と証明書を保存します。そのため、Oracle Virtual DirectoryにSSLを構成するには、JKSキーストアを設定および使用する必要があります。
他のコンポーネントは、その保存メカニズムとしてOracleウォレットを使用します。Oracleウォレットとは、証明書、信頼できる証明書、証明書リクエスト、秘密鍵などの資格証明を保存するコンテナです。Oracleウォレットは、ファイル・システムまたはOracle Internet DirectoryなどのLDAPディレクトリに保存できます。Oracleウォレットは、自動ログインできるウォレットにできるほか、パスワードで保護したウォレットにすることもできます。
Oracleウォレットを使用するコンポーネントは次のとおりです。
Oracle HTTP Server
Oracle Web Cache
Oracle Internet Directory
クライアント・ブラウザとWebサーバーの間の通信経路でSSLを有効化できます。この場合は、SSLモードでリスニングするようにOracle HTTP Serverの仮想ホストを構成します。この処理について次の各項で説明します。
Oracle HTTP Serverの仮想ホストへのインバウンド・トラフィックに対してSSLを有効化するには:
ナビゲーション・ペインで、ファームを開いて、「Web層」を開きます。Oracle HTTP Serverインスタンスを選択します。
「Oracle HTTP Server」メニューから「セキュリティ」→「ウォレット」を選択します。
「ウォレット」ページが表示されます。
「作成」をクリックします。
次の図に示すように、「ウォレットの作成」ページが表示されます。
「ウォレット名」に、説明的なウォレット名を入力します。
ウォレットに自動ログインできるようにするかどうかに応じて、「自動ログイン」を選択または選択解除します。デフォルトは、自動ログイン・ウォレットです。「自動ログイン」を選択解除した場合は、「ウォレット・パスワード」にパスワードを入力し、その同じパスワードを「パスワードの確認」にも入力します。
「OK」をクリックしてウォレットを作成します。
確認ボックスが表示されます。
証明書リクエストを作成するかどうかが、確認ボックスで尋ねられます。「はい」をクリックします。
「ウォレットの作成: 証明書リクエストの追加」ページが表示されます。
「共通名」に、証明書リクエストの名前を入力します。
組織に関する情報を入力します。
「キー・サイズ」で、サイズを選択します。
「OK」をクリックします。
証明書に認証局(CA)の署名を受けるには、証明書リクエストをウォレットからエクスポートして、CAへ送信する必要があります。発行された証明書が返されたら、ウォレットにインポートする必要があります。これで、ウォレットを使用できるようになりました。
「HTTP Server」メニューから「管理」→「仮想ホスト」を選択します。
「仮想ホスト」ページが表示されます。
仮想ホストを選択し、「構成」→「SSL構成」を選択します。
次の図に示すように、「SSL構成」ページが表示されます。
「SSLの有効化」を選択します。
「サーバー・ウォレット名」でウォレットを選択します。
「サーバーSSLプロパティ」から、SSL認証タイプ、使用する暗号スイートおよびSSLプロトコル・バージョンを選択します。
「OK」をクリックします。
Oracle HTTP Serverを再起動します。そのためには、「Oracle HTTP Server」メニューから「コントロール」→「再起動」を選択します。
ブラウザのSSLを介して「Oracle HTTP Server」ページを参照することで、これをテストできます。URLの形式は、https://
host:port
/を使用します。ホストとポートは、ご使用の環境に適した値に置き換えます。
Oracle HTTP Serverからのアウトバンド・リクエストは、mod_wl_ohs
を構成することで処理します。
SSLのアウトバンド・リクエストを構成するには:
Oracle WebLogic Server管理コンソールを使用して、証明書を収めたOracle WebLogic Serverのカスタム・キーストアを生成します。
コンソールの左側のペインで、「環境」を開いて「サーバー」を選択します。
「構成」→「キーストア」を選択します。
キーストアを定義します。各フィールドの詳細は、オンライン・ヘルプを参照してください。
Oracle WebLogic Serverで使用する証明書を、信頼できる証明書としてOracle HTTP Serverウォレットにインポートします。このタスクでは、 WLST やFusion Middleware Controlなどの任意のユーティリティを使用できます。
Oracle HTTP Server構成ファイルORACLE_INSTANCE
/config/OHS/ohs1/ssl.conf
にあるmod_weblogic
のSSL構成に次の行を追加します。
WlSSLWallet "$(ORACLE_INSTANCE}/config/COMPONENT_TYPE/COMPONENT_NAME/default"
この行のdefault
は、ステップ2で指定したOracle HTTP Serverウォレットの名前です。
構成の例は次のとおりです。
<IfModule mod_weblogic.c> WebLogicHost myhost.example.com WebLogicPort 7002 Debug ALL WLLogFile /tmp/weblogic.log MatchExpression *.jsp SecureProxy On WlSSLWallet "$(ORACLE_INSTANCE)/config/OHS/ohs1/keystores/default" </IfModule>
ファイルを保存して終了します。
Oracle HTTP Serverを再起動して、この変更を有効にします。
ステップ1で生成したカスタム・キーストアを使用するようにOracle WebLogic Serverインスタンスが構成されていて、その別名が証明書の生成で使用した別名の値を指していることを確認します。Oracle WebLogic Serverインスタンスを再起動します。
この章で説明した内容の詳細やその他のセキュリティ関連の詳細は、次を参照してください。
次の各トピックの詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。
Secure Sockets Layer(SSL)。これは、通信内容を保護するために使用される業界標準です。SSLの構成に関する項を参照してください。
キーストア、ウォレットおよび証明書。キーストア、ウォレットおよび証明書の管理に関する項を参照してください。
次の各トピックの詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。
Oracle Platform Security。Oracle WebLogic Serverで稼働するセキュリティ・フレームワークです。アプリケーション開発者、システム・インテグレータ、セキュリティ管理者および独立系ソフトウェア・ベンダーに、Java SEおよびJava EEアプリケーション用の移植可能で統合された包括的なセキュリティ・プラットフォーム・フレームワークを提供します。
共通監査フレームワーク。これは、様々なコンポーネントに対して監査を管理するための統一システムで、柔軟な監査ポリシーと、ビルトインのコンプライアンス・レポート機能を実現します。
アイデンティティ・ストア、ポリシー・ストアおよび資格証明ストア。これにより、ユーザーやロールの情報、ポリシーおよび資格証明の格納と管理が保護されます。