25 セキュリティ・データの移行
セキュリティ・データ移行の概要
セキュリティ・データ(認証、認可、資格証明マップ、およびロールのデータ)をセキュリティ・レルムからファイルにエクスポートし、別のセキュリティ・レルムにインポートできます。このデータ移行を使用すると、すべてのセキュリティ・データを再作成しなくても新しいセキュリティ・レルムを開発してテストできます。
WebLogicセキュリティ・レルムには様々なセキュリティ・データが永続化されます。これには、WebLogic認証プロバイダのユーザーとグループ、XACML認可プロバイダのセキュリティ・ポリシー、XACMLロール・マッピング・プロバイダのセキュリティ・ロール、WebLogic資格証明マッピング・プロバイダの資格証明マップなどがあります。新しいセキュリティ・レルムまたはセキュリティ・プロバイダを構成する場合、すべてのユーザー、グループ、ポリシー、ロール、および資格証明マップを再作成せずに、既存のセキュリティ・レルムまたはセキュリティ・プロバイダのセキュリティ・データを使用できます。WebLogicセキュリティ・プロバイダの一部は、セキュリティ・データの移行をサポートしています。つまり、あるセキュリティ・レルムからセキュリティ・データをエクスポートして、新しいセキュリティ・レルムへインポートできます。各セキュリティ・プロバイダのセキュリティ・データを個別に移行したり、すべてのWebLogicセキュリティ・プロバイダのセキュリティ・データ(セキュリティ・レルム全体のセキュリティ・データ)を一度に移行したりできます。同じデータ・フォーマットを使用しているプロバイダ間でのみセキュリティ・データを移行できます。「WebLogicセキュリティ・プロバイダでサポートされるフォーマットと制約」を参照してください。セキュリティ・データの移行は、WebLogic Server管理コンソールまたはWebLogic Scripting Tool (WLST)を使用して行います。
セキュリティ・データの移行は次のような場合に有用です。
-
開発モードから本番モードへ移行します。
-
本番モードのセキュリティ構成を新しいWebLogicドメインのセキュリティ・レルムにコピーします。
-
同じWebLogicドメイン内の、あるセキュリティ・レルムから新しいセキュリティ・レルムにデータを移動します(1つまたは複数のデフォルトWebLogicセキュリティ・プロバイダが新しいセキュリティ・プロバイダに置き換えられる場合)。
以降では、セキュリティの移行の概念、WebLogicセキュリティ・プロバイダでサポートされるフォーマットと制約、およびWLSTを使用してセキュリティ・データを移行するステップについて説明します。
WebLogic Server管理コンソールを使用したセキュリティ・データの移行は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプにある次のトピックを参照してください。
移行の概念
データ移行の概念には、フォーマット、制約およびエクスポート・ファイルがあります。
フォーマットとは、セキュリティ・データのエクスポートまたはインポートの方法を指定するデータ・フォーマットです。サポートされるフォーマットは、特定のセキュリティ・プロバイダが処理方法を理解しているデータ・フォーマットのリストです。
制約とは、エクスポートまたはインポート処理のオプションの指定に使用されるキーと値の組合せです。制約を使用すると、セキュリティ・プロバイダのデータベース(WebLogic Serverセキュリティ・プロバイダの場合は組込みLDAPサーバー)からエクスポートまたはインポートするセキュリティ・データを制御できます。たとえば、認証プロバイダのデータベースから、グループではなくユーザーだけをエクスポートすることができます。サポートされる制約とは、特定のセキュリティ・プロバイダの移行処理で指定できる制約のリストのことを指します。たとえば、認証プロバイダのデータベースを使用してユーザーとグループをインポートするように指定できますが、セキュリティ・ポリシーはインポートできません。
エクスポート・ファイルは、移行処理のエクスポートの段階で、セキュリティ・データを(指定されたフォーマットで)書き込むファイルです。インポート・ファイルとは、移行処理のインポートの段階で、セキュリティ・データを(指定されたフォーマットで)読み込むファイルです。エクスポート・ファイルとインポート・ファイルはどちらも、あるセキュリティ・プロバイダのデータ・ストアから別のセキュリティ・プロバイダのデータ・ストアに移行する際の、セキュリティ・データの単なる一時的な格納場所です。
WebLogicセキュリティ・プロバイダでサポートされるフォーマットと制約
セキュリティ・プロバイダ間でセキュリティ・データをエクスポートおよびインポートするには、両方のセキュリティ・プロバイダが同じフォーマットを処理する必要があります。WebLogic Serverセキュリティ・プロバイダで使用されるデータ・フォーマットの一部は非公開なので、WebLogicセキュリティ・プロバイダとカスタム・セキュリティ・プロバイダの間で非公開のフォーマットを使用してセキュリティ・データを移行することは、現時点ではできません。
次の表では、各WebLogicセキュリティ・プロバイダによってサポートされるインポートおよびエクスポートのデータ・フォーマットを示します
表25-1 WebLogicセキュリティ・プロバイダでサポートされるインポートおよびエクスポート・フォーマット
WebLogicプロバイダ | サポートされるフォーマット |
---|---|
WebLogic認証プロバイダ |
DefaultAtn - 非公開のフォーマット |
XACML認可プロバイダ |
XACML - 標準のXACML 2.0フォーマット DefaultAtz - 非公開のフォーマット |
WebLogic認可プロバイダ |
DefaultAtz - 非公開のフォーマット |
XACMLロール・マッピング・プロバイダ |
XACML - 標準のXACML 2.0フォーマット DefaultRoles - 非公開のフォーマット |
WebLogicロール・マッピング・プロバイダ |
DefaultRoles - 非公開のフォーマット |
WebLogic資格証明マッピング・プロバイダ |
DefaultCreds - 非公開のフォーマット |
SAML IDアサーションV2 SAML資格証明マッピング・プロバイダV2 |
XMLパートナ・レジストリ - SAMLパートナ・レジストリ・スキーマで定義されているXMLフォーマット JKSキーストア - パートナ証明書のインポートおよびエクスポート専用のキーストア・ファイル形式 LDIFテンプレート - LDIFフォーマット |
ノート:
WebLogic認可プロバイダとWebLogicロール・マッピング・プロバイダは、WebLogic Server 14.1.1.0.0で非推奨になっており、今後のリリースで削除されます。代わりに、XACML認可プロバイダとXACMLロール・マッピング・プロバイダがデフォルトのプロバイダになっています。
WebLogicセキュリティ・プロバイダは、表25-2に提示されているインポートおよびエクスポートの制約をサポートします。
表25-2 WebLogicセキュリティ・プロバイダでサポートされる制約
WebLogicセキュリティ・プロバイダ | サポートされる制約 | 説明 |
---|---|---|
デフォルト認証 |
users groups |
すべてのユーザーまたはすべてのグループをエクスポートします。 |
|
なし |
なし |
WebLogic資格証明マッピング |
passwords |
passwords=cleartext制約を使用した場合、パスワードはクリア・テキストでエクスポートされます。それ以外の場合、パスワードは暗号化された形式でエクスポートされます。 |
|
partners |
インポートまたはエクスポートするパートナ。制約値は以下のいずれかになります。
|
|
certificates |
インポートまたはエクスポートする証明書。制約値は以下のいずれかになります。
|
|
passwords |
passwords=cleartext制約を使用した場合、パスワードはクリア・テキストでエクスポートされます。それ以外の場合、パスワードは暗号化された形式でエクスポートされます。 |
|
importMode |
インポートされたデータとSAMLレジストリ内の既存のデータとの間の名前の競合を解決する方法を指定します。制約値は以下のいずれかになります。
|
WebLogic資格証明マッピング・プロバイダ、SAML資格証明マッピング・プロバイダ、またはSAML IDアサーション・プロバイダからエクスポートする場合、資格証明のパスワードをクリア・テキストでエクスポートするかどうかを指定する必要があります。passwords=cleartext
制約を指定すると、パスワードはクリア・テキストでエクスポートされます。それ以外の場合、パスワードは暗号化された形式でエクスポートされます。パスワードの暗号化に使用されるメカニズムはWebLogicドメインごとに異なるため、別のWebLogicドメインで使用する場合は、パスワードをクリア・テキストでエクスポートできます。新しいWebLogicドメインに資格証明マップがインポートされると、パスワードは暗号化されます。移行処理中にシステムでセキュアなデータを利用できるようにするため、クリア・テキストの資格証明マップのエクスポート先となるディレクトリとファイルは慎重に保護してください。
ノート:
WebLogic認証プロバイダは、デフォルトでは一方向のハッシュを使用してパスワードを格納します。このプロバイダによって暗号化されたパスワードは、データのエクスポート時にpasswords=cleartext
制約を使用しても、暗号化せずに送信することはできません。このプロバイダからクリア・テキストでパスワードをエクスポートできるようにしたい場合は、それらのパスワードを作成または更新する前に、「パスワード・ダイジェストの有効化」属性をtrue
に設定する必要があります。Oracle WebLogic Server管理コンソール・オンライン・ヘルプのデフォルト認証プロバイダ: プロバイダ固有に関する項を参照してください。
WLSTを使用したデータの移行
WebLogic Scripting Tool (WLST)を使用して、セキュリティ・プロバイダからデータをエクスポートしてインポートできます。セキュリティ・プロバイダの実行時MBeanにアクセスして、そのimportData
操作またはexportData
操作を使用します。
たとえば、以下のようなコマンドでWLSTを使用してデータをインポートします。
serverConfig() cd('SecurityConfiguration/mydomain/DefaultRealm/myrealm/path-to-MBean/mbeanname') cmo.importData(format,filename,constraints)
説明:
-
mbeanname
- セキュリティ・プロバイダMBeanの名前。 -
format
- 特定のセキュリティ・プロバイダで有効なフォーマット。表25-1を参照してください。 -
filename
- セキュリティ・データをエクスポートまたはインポートするディレクトリの場所とファイル名。WLSTコマンドでは、使用するオペレーティング・システムがUNIXかWindowsかに関係なく、パス名引数のパス区切りとしてバック・スラッシュではなくフォワードスラッシュを使用する必要があります。 -
constraints
- エクスポートまたはインポートするデータを限定する制約。
『WebLogic Scripting Toolの理解』を参照してください。