Oracle® Fusion Middleware Oracle Mobile Security Access Serverの管理 11gリリース2 (11.1.2.3) E64863-01 |
|
前 |
次 |
この章では、SSLキーストアとトラストストアの概要を示し、MSASと他のシステム構成要素の間でSSLを構成する方法を説明します。内容は次のとおりです。
モバイル・セキュリティ・アクセス・サーバーは、SSLキーストアとSSLトラストストアをサポートします。SSLキーストアはサーバーのアイデンティティ・キーを保持し、SSLトラストストアは信頼できる証明書のリポジトリとして使用されます。SSLトラストストアは、クライアント証明書を信頼または認証するために使用されます(双方向SSLの場合)。
SSLキーストアとトラストストアの構成が実行されるのは、idmConfigTool
を実行するときです。idmConfigTool
の実行の詳細は、『Oracle Mobile Security Access Serverのインストール』の、MSASインスタンス用アイデンティティ・ストアの構成に関する項を参照してください。
idmConfigTool
を実行すると、
MSASインスタンス用のSSLキーストアとトラストストアが作成されます。
自己署名CA(認証局)によって署名されたSSLキーが作成されます。
モバイル・デバイス管理/モバイル・アプリケーション管理(MDM/MAM)フロー、およびモバイル・クライアントとの双方向SSL通信で必要とされるSSL証明書がトラストストアにインポートされます。
注意: モバイル・セキュリティ・アクセス・サーバーは、SSLキーストアおよびトラストストアに対してはOPSS KSSキーストアのみサポートします。 |
SSLキーストアとトラストストアは、次の場所の論理インスタンス・レベルに作成されます。
SSLキーストア: kss://
msas_instance_id
/sslkeystore
(KSSストライプ)
この場所は、構成プロパティによって識別されます。
カテゴリ: ServerSettings
プロパティ名: ssl.keystore.location
SSLトラストストア: kss://
msas_instance_id
/ssltruststore
(KSSストライプ)。
この場所は、構成プロパティによって識別されます。
カテゴリ: ServerSettings
プロパティ名: ssl.truststore.location
これらのプロパティの設定の詳細は、「WLSTを使用したサーバー設定の構成」を参照してください。
注意: 両方のKSSストライプで、msas_instance_id は、キーストアとトラストストアが関連付けられている論理MSASインスタンスの名前です。これらの場所を変更しないでください。 |
SSLキーストアとトラストストアは、OAMコンソールのMSASコンソール・ページを使用して管理できます。コンソールを使用すると、SSLキーストアにキーをインポートしたり、キーを生成したりできます。SSLトラストストアに証明書をインポートすることもできます。詳細は、『SSLキーストアとトラストストアの構成』を参照してください。
KSS SSLキーストアとトラストストアを詳細に管理するには、Oracle Platform Security Service (OPSS)に用意されているキーストア・サービス・コマンドを使用できます。キーストア・サービスでは、キーストアの作成と管理、証明書のエクスポート、鍵ペアの生成などのキーストア操作に、専用のコマンドラインのコマンド・セットを使用します。これらのコマンドの使用方法は似ていますが、他のWLSTコマンドとは異なります。これらのコマンドと使用方法の詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』の、「キーストア・サービス・コマンドについて」にあります。
注意: デフォルトでは、MSASサーバーで双方向SSLは有効化されていず、構成プロパティによって制御されます。
このプロパティの設定は、次のとおりです。
このプロパティの設定の詳細は、「WLSTを使用した追加のサーバー設定の構成」を参照してください。 |
次のコンポーネント間の通信では、追加のSSL構成は不要です。
MSASとモバイル・セキュリティ・マネージャ
MSASとOracle Access ManagerとOAuth Server
他のコンポーネント間のSSL構成の詳細は、次の項を参照してください。
デフォルトで、SSLはMSASで必須であり、SSLポートは常に一方向SSLに対して有効です。SSLポートは、MSAS構成ツールconfigMSAS
を実行してMSASインスタンスを作成するときに構成します。idmConfigTool
を実行するときに構成されるSSLキーストアには、自己署名認証局(CA)によって署名された1つのキーが含まれ、インスタンスのアイデンティティ・キーとして使用されます。configMSAS
ツールとidmConfigTool
の実行の詳細は、『Oracle Mobile Security Access Serverのインストール』の次のトピックを参照してください。
「MSASインスタンスの構成」
「MSASインスタンスのアイデンティティ・ストアとキーストアの構成」
SSLキーストアに複数のキーがある場合、アイデンティティ・キーの別名を、構成プロパティMSASConfig:security.keystoreAlias
で指定する必要があります。キーは、MSASコンソールまたはWLSTコマンドを使用してインポートまたは生成できます。
PKINITベースの認証とモバイル・デバイス登録などのシナリオの場合、クライアント証明書が要求されて認証されるため、発行者証明書チェーンがSSLトラストストアで信頼される必要があります。クライアント証明書は、クライアントのユーザー・プリンシパル名(UPN)を含むサブジェクト代替名拡張を持つ必要があります。
「SSLキーストアとトラストストアの構成」で定めるMSASコンソールを使用して、クライアント証明書に対応する署名者の証明書チェーンをSSLトラストストアにインポートできます。OPSSキーストア・サービス・コマンドを使用して、クライアント証明書に対応する署名者の証明書チェーンをSSLトラストストアにインポートすることもできます。これらのコマンドと使用方法の詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』の、「キーストア・サービス・コマンドについて」にあります。
MSASインスタンスのデフォルトのアイデンティティ・キーは、自己署名CAによって署名されます。次の手順で説明するように、必要に応じて、この証明書は、既知のCAによって署名されたものに置換できます。
キーストア・サービス・コマンドを使用して、既存のKSSキーストア・エントリをJKSキーストアにエクスポートします。
「MSAS WLSTコマンドへのアクセス」の説明に従って、実行中のサーバーに接続します。
getOpssService
コマンドを実行して、キーストア・サービス・コマンドにアクセスします。
wls:/base_domain/serverConfig>svc = getOpssService(name='KeyStoreService')
exportKeyStore
コマンドを使用して、KSSキーストアをエクスポートします。
svc.exportKeyStore(appStripe='<msas-id>', name='sslkeystore', password='<keystore-password>', aliases='<msas-id>_msasidentity', keypasswords='<key-password>', type='JKS',filepath='/tmp/<msas-id>_sslkeystore.jks')
コマンドのpassword
とkeypasswords
引数は、JKSキーストアとキー・パスワードに適用されます。このパスワードは、エクスポートされた鍵とJKSキーストアを保護するために使用されます。
keytool -certreq
コマンドを使用して証明書署名リクエスト(CSR)ファイルを作成するために、サーバー証明書リクエストを生成します。
keytool -keystore /tmp/<msas-id>_sslkeystore.jks -storepass <keystore-password> -alias <msas-id>_msasidentity -certreq -file /tmp/msasidentity.csr -keypass <key-password>
CSRファイルをCAに送信します。CAはリクエストを認証して、MSASインスタンスの証明書を発行し、証明書と証明書チェーンを戻します。
サーバーで、MSASアイデンティティ証明書を更新します。それには、手順1でエクスポートしたJKSキーストアを先に更新し、JKSキーストアをKSSキーストアにインポートします。
新しいCA証明書チェーンをJKSキーストアにインポートします。これは、完全なチェーンを作成するために必要です。
keytool -keystore /tmp/<msas-id>_sslkeystore.jks -import -file <CA_CERT>.crt -alias ca -storepass <keystore-password>
更新されたMSASアイデンティティ証明書を同じJKSキーストアにインポートします。このコマンドは、署名された証明書が/tmp/msasidentity.crt
で利用できると想定します。
keytool -keystore /tmp/<msas-id>_sslkeystore.jks -import -file /tmp/msasidentity.crt -alias <msas-id>_msasidentity -storepass <keystore-password>
キーストア・サービス・コマンドを使用して、JKSキーストアをKSSキーストアにインポートします。「MSAS WLSTコマンドへのアクセス」の説明に従って、実行中のサーバーに接続し、次のコマンドを実行します。
svc = getOpssService(name='KeyStoreService') svc.deleteKeyStoreEntry(appStripe='<msas-id>',name='sslkeystore',password='', alias='<msas-id>_msasidentity', keypassword='') svc.importKeyStore(appStripe='<msas-id>',name='sslkeystore',password='<keystore-password>', aliases='<msas-id>_msasidentity', keypasswords='<key-password>', type='JKS',permission=true, filepath='/tmp/<msas-id<_keystore.jks')
MSASサーバーを再起動します。
注意: SSLキーストアまたはトラストストアにおけるあらゆる変更で、MSASサーバーを再起動することが必要です。 |
MSASアイデンティティ証明書に署名するエンティティは、モバイル・デバイスで信頼されている必要があります。そうでない場合、モバイル・デバイスはMSASに接続できません。証明書に署名しているエンティティが既知の認証局(CA)である場合、署名者がモバイル・デバイスですでに信用されていることを確認します。
SSLキーストアからMSASアイデンティティ証明書チェーンをダウンロードするプロセスを簡素化するために、MSASには次のURLが用意されています。
https://msas_host:msas_port/bmax/msas_cert[n].pem
ここで、[n
]は、チェーン内の証明書を表します(0から4まで)。指数0の証明書は、サーバー証明書の発行者であり、指数1の証明書は指数0の証明書の発行者、以下同様です。
例:
https://msas_host:msas_port/bmax/msas_cert0.pem https://msas_host:msas_port/bmax/msas_cert1.pem
注意: SSLキーストアには単一の自己署名ルート証明書が含まれるため、デフォルトで、http://msas_host:msas_port/bmax/msas_cert0.pem に、デバイス上にインストールするルート証明書が用意されています。 |
デフォルトで、バックエンド・サーバーの証明書認証は、MSAS上ではオフにされています。その結果、バックエンド・リソースのSSL証明書は、MSAS SSLトラストストアで信頼される必要がなく、構成は不要です。
この動作は、構成プロパティによって制御されます。
カテゴリ: ClientConfiguration
プロパティ名: ssl.security.level
このプロパティのデフォルト値は、loose
です。このプロパティの値をstrict
に変更するには、バックエンド・リソースのSSL証明書がMSAS SSLトラストストアで信頼される必要があり、そうでない場合、MSASがそれに接続できなくなります。
これ、およびその他のプロパティをClientConfiguration
カテゴリで設定する場合の詳細は、「WLSTを使用したアウトバウンド・メッセージ設定の構成」を参照してください。
注意: バックエンド・リソースを使用した双方向SSLは、このリリースではサポートされません。 |
SSLポート上にアイデンティティ・ストアが構成されている場合、アイデンティティ・ストアのSSL証明書が、MSAS SSLトラストストアで信頼される必要があります。「SSLキーストアとトラストストアの構成」で説明しているように、MSASコンソールを使用して、アイデンティティ・ストア用の自己署名SSL証明書または署名者の証明書チェーンをインポートすることができます(本番環境では必須)。
OPSSキーストア・サービス・コマンドを使用して、アイデンティティ・ストアに対応する自己署名証明書または署名者の証明書チェーンを、SSLトラストストアにインポートすることもできます。これらのコマンドと使用方法の詳細は、『Oracle Platform Security Servicesによるアプリケーションの保護』の、「キーストア・サービス・コマンドについて」にあります。
注意: SSLキーストアまたはトラストストアにおけるあらゆる変更で、MSASサーバーを再起動することが必要です。 |