あるセキュリティ レルムまたはセキュリティ プロバイダからセキュリティ データをエクスポートして、別のレルムまたはプロバイダにインポートできます。以下の節では、セキュリティ データのエクスポートとインポートについて説明します。
WebLogic セキュリティ レルムにはさまざまなセキュリティ データが永続化されます。これには、デフォルト認証プロバイダのユーザとグループ、XACML 認可プロバイダのセキュリティ ポリシー、XACML ロール マッピング プロバイダのセキュリティ ロール、WebLogic 資格マッピング プロバイダの資格マップなどがあります。新しいセキュリティ レルムまたはセキュリティ プロバイダをコンフィグレーションする場合、すべてのユーザ、グループ、ポリシー、ロール、および資格マップを再作成せずに、既存のセキュリティ レルムまたはセキュリティ プロバイダのセキュリティ データを使用できます。WebLogic セキュリティ プロバイダの一部は、セキュリティ データの移行をサポートしています。つまり、あるセキュリティ レルムからセキュリティ データをエクスポートして、新しいセキュリティ レルムへインポートできます。各セキュリティ プロバイダのセキュリティ データを個別に移行したり、すべての WebLogic セキュリティ プロバイダのセキュリティ データ (セキュリティ レルム全体のセキュリティ データ) を一度に移行したりできます。同じデータ フォーマットを使用しているプロバイダ間でのみセキュリティ データを移行できます。「WebLogic セキュリティ プロバイダでサポートされるフォーマットと制約」を参照してください。セキュリティ データの移行は、WebLogic Administration Console または WebLogic Scripting Tool (WLST) を使用して行います。
セキュリティ データの移行は次のような場合に有用です。
開発モードからプロダクション モードへ移行する。
プロダクション モードのセキュリティ コンフィグレーションを新しい WebLogic Server ドメインのセキュリティ レルムにコピーする。
同じ WebLogic Server ドメイン内の、あるセキュリティ レルムから新しいセキュリティ レルムにデータを移動する (1 つまたは複数のデフォルト WebLogic セキュリティ プロバイダが新しいセキュリティ プロバイダに置き換えられる場合)。
以降では、セキュリティの移行の概念、WebLogic セキュリティ プロバイダでサポートされるフォーマットと制約、および WLST を使用してセキュリティ データを移行する手順について説明します。
WebLogic Administration Console を使用したセキュリティ データの移行については、Oracle Fusion Middleware Oracle WebLogic Server の Administration Console オンライン ヘルプにある以下のトピックを参照してください。
フォーマットとは、セキュリティ データのエクスポートまたはインポートの方法を指定するデータ フォーマットです。サポートされるフォーマットは、特定のセキュリティ プロバイダが処理方法を理解しているデータ フォーマットのリストです。
制約とは、エクスポートまたはインポート処理のオプションの指定に使用されるキーと値の組み合わせです。制約を使用すると、セキュリティ プロバイダのデータベース (WebLogic Server セキュリティ プロバイダの場合は組み込み LDAP サーバ) からエクスポートまたはインポートするセキュリティ データを制御できます。たとえば、認証プロバイダのデータベースから、グループではなくユーザだけをエクスポートすることができます。サポートされる制約とは、特定のセキュリティ プロバイダの移行処理で指定できる制約のリストのことを指します。たとえば、認証プロバイダのデータベースを使用してユーザとグループをインポートするように指定できますが、セキュリティ ポリシーはインポートできません。
エクスポート ファイルは、移行処理のエクスポートの段階で、セキュリティ データを (指定されたフォーマットで) 書き込むファイルです。インポート ファイルとは、移行処理のインポートの段階で、セキュリティ データを (指定されたフォーマットで) 読み込むファイルです。エクスポート ファイルとインポート ファイルはどちらも、あるセキュリティ プロバイダのデータ ストアから別のセキュリティ プロバイダのデータ ストアに移行する際の、セキュリティ データの単なる一時的な格納場所です。
セキュリティ プロバイダ間でセキュリティ データをエクスポートおよびインポートするには、両方のセキュリティ プロバイダが同じフォーマットを処理する必要があります。WebLogic Server セキュリティ プロバイダで使用されるデータ フォーマットの一部は非公開なので、WebLogic セキュリティ プロバイダとカスタム セキュリティ プロバイダの間で非公開のフォーマットを使用してセキュリティ データを移行することは、現時点ではできません。
WebLogic セキュリティ プロバイダでは、以下のインポートおよびエクスポート フォーマットがサポートされています。
表 8-1 WebLogic セキュリティ プロバイダでサポートされるインポートおよびエクスポート フォーマット
WebLogic セキュリティ プロバイダでは、以下のインポートおよびエクスポート制約がサポートされています。
表 8-2 WebLogic セキュリティ プロバイダでサポートされる制約
WebLogic セキュリティ プロバイダ | サポートされる制約 | 説明 |
---|---|---|
デフォルト認証 |
users groups |
すべてのユーザまたはすべてのグループをエクスポートする。 |
|
なし |
なし |
WebLogic 資格マッピング |
passwords |
passwords=cleartext 制約を使用した場合、パスワードはクリア テキストでエクスポートされる。それ以外の場合、パスワードは暗号化された形式でエクスポートされる。 |
|
partners |
インポートまたはエクスポートするパートナ。制約値は以下のいずれかになる。
|
|
certificates |
インポートまたはエクスポートする証明書。制約値は以下のいずれかになる。
|
|
passwords |
passwords=cleartext 制約を使用した場合、パスワードはクリア テキストでエクスポートされる。それ以外の場合、パスワードは暗号化された形式でエクスポートされる。 |
|
importMode |
インポートされたデータと SAML レジストリ内の既存のデータとの間の名前の衝突を解決する方法を指定する。制約値は以下のいずれかになる。
|
WebLogic 資格マッピング プロバイダ、SAML 資格マッピング プロバイダ、または SAML ID アサーション プロバイダからエクスポートする場合、資格のパスワードをクリア テキストでエクスポートするかどうかを指定する必要があります。passwords=cleartext
制約を指定すると、パスワードはクリア テキストでエクスポートされます。それ以外の場合、パスワードは暗号化された形式でエクスポートされます。パスワードの暗号化に使用されるメカニズムは WebLogic Server ドメインごとに異なるため、別の WebLogic Server ドメインで使用する場合は、パスワードをクリア テキストでエクスポートできます。新しい WebLogic Server ドメインに資格マップがインポートされると、パスワードは暗号化されます。移行処理中にシステムでセキュアなデータを利用できるようにするため、クリア テキストの資格マップのエクスポート先となるディレクトリとファイルは慎重に保護してください。
注意 : デフォルト認証プロバイダは、デフォルトでは一方向のハッシュを使用してパスワードを格納します。このプロバイダによって暗号化されたパスワードは、データのエクスポート時にpasswords=cleartext 制約を使用しても、暗号化せずに送信することはできません。このプロバイダからクリア テキストでパスワードをエクスポートできるようにしたい場合は、それらのパスワードを作成または更新する前に、[パスワード ダイジェストを有効化] 属性を true に設定する必要があります。詳細については、Oracle Fusion Middleware Oracle WebLogic Server の Administration Console オンライン ヘルプの「デフォルト認証プロバイダ : プロバイダ固有」を参照してください。 |
WebLogic Scripting Tool (WLST) を使用して、セキュリティ プロバイダからデータをエクスポートしてインポートできます。セキュリティ プロバイダの実行時 MBean にアクセスして、その importData
オペレーションまたは exportData
オペレーションを使用します。たとえば、以下のようなコマンドで WLST を使用してデータをインポートします。
domainRuntime() cd('DomainServices/DomainRuntimeService/DomainConfiguration/mydomain /SecurityConfiguration/mydomain/DefaultRealm/myrealm/path-to-MBean/mbeanname') cmo.importData(format,filename,constraints)
各要素の説明は次のとおりです。
mbeanname
- セキュリティ プロバイダ MBean の名前。
format
- 特定のセキュリティ プロバイダで有効なフォーマット。表 8-1 を参照してください。
filename
- セキュリティ データをエクスポートまたはインポートするディレクトリの場所とファイル名。WLST コマンドでは、使用するオペレーティング システムが UNIX か Windows かに関係なく、パス名引数のパス区切りとしてバック スラッシュではなくフォワードスラッシュを使用する必要があります。
constraints
- エクスポートまたはインポートするデータを限定する制約。
詳細については、『Oracle Fusion Middleware Oracle WebLogic Scripting Tool ガイド』を参照してください。
注意 : weblogic.Admin ユーティリティは非推奨になりました。代わりに WLST を使用してください。 |
weblogic.Admin ユーティリティを使用して、セキュリティ レルムとセキュリティ プロバイダの間でセキュリティ データをエクスポートおよびインポートすることもできます。コマンドの形式は次のとおりです。
java weblogic.Admin -username username -password password \ INVOKE -mbean mbeanname \ -method methodname dataformat filename constraints
各要素の説明は次のとおりです。
username
- Admin ユーザの名前。
password
- Admin ユーザのパスワード。
mbeanname
- セキュリティ プロバイダ MBean の名前。
methodname
- exportData
または importData
。
dataformat
- DefaultAtn
、DefaultAtz
、DefaultRoles
、または DefaultCreds
。
filename
- セキュリティ データをエクスポートまたはインポートするディレクトリの場所とファイル名。
constraints
- エクスポートまたはインポートするデータを限定する制約。
注意 : セキュリティ データをエクスポートするディレクトリおよびファイルは、デプロイメントに関する重要な情報が格納されるので、オペレーティング システムのセキュリティで慎重に保護してください。 |
次に例を示します。
java weblogic.Admin -username system -password weblogic INVOKE -mbean Security:Name=myrealmDefaultAuthenticator -method importData DefaultAtn d:\temp\security.info " "