Oracle® Fusion Middleware Oracle WebLogic Server 12.1.3セキュリティの管理 12c (12.1.3) E57576-07 |
|
前 |
次 |
この章では、目的のServerDebug
構成属性をtrue
に設定して、SSO用のSAMLを使用するWebアプリケーションのデバッグを有効にする方法を説明します。WebLogic Server 12.1.3では様々な方法でこれを実行できます。
この章の内容は次のとおりです。
表25-1および表25-2では、SAML 1.1および2.0用のWebLogic Serverで提供される登録済のデバッグ・スコープと属性をリストして説明しています。
表25-1 SAML 1.1デバッグ・スコープおよび属性
スコープ | 属性 | 説明 |
---|---|---|
weblogic.security.saml.atn |
DebugSecuritySAMLAtn |
SAML 1.1認証プロバイダ処理に関する情報を出力します。 |
weblogic.security.saml.credmap |
DebugSecuritySAMLCredMap |
SAML 1.1資格証明マッピング・プロバイダ処理に関する情報を出力します。 |
weblogic.security.saml.lib |
DebugSecuritySAMLLib |
SAML 1.1ライブラリ処理に関する情報を出力します。 |
weblogic.security.saml.service |
DebugSecuritySAMLService |
SAML 1.1 SSOプロファイル・サービスに関する情報を出力します。 |
表25-2 SAML 2.0デバッグ・スコープおよび属性
スコープ | 属性 | 説明 |
---|---|---|
weblogic.security.saml2.atn |
DebugSecuritySAML2Atn |
SAML 2.0認証プロバイダ処理に関する情報を出力します。 |
weblogic.security.saml2.credmap |
DebugSecuritySAML2CredMap |
SAML 2.0資格証明マッピング・プロバイダ処理に関する情報を出力します。 |
weblogic.security.saml2.lib |
DebugSecuritySAML2Lib |
SAML 2.0ライブラリ処理に関する情報を出力します。 |
weblogic.security.saml2.service |
DebugSecuritySAML2Service |
SAML 2.0 SSOプロファイル・サービスに関する情報を出力します。 |
デバッグ・スコープまたは属性は、WebLogic Serverサーバーを起動するコマンドのオプションとして受け渡すことによって有効化できます。属性ごとのSAMLデバッグの有効化に使用できるコマンド・ライン・オプションは、表25-3にリストされています。
表25-3 SAMLデバッグのコマンドライン・オプション
SAMLバージョン | デバッグに使用可能なコマンドライン・オプション |
---|---|
SAML 1.1 |
-Dweblogic.debug.DebugSecuritySAMLAtn=true -Dweblogic.debug.DebugSecuritySAMLCredMap=true -Dweblogic.debug.DebugSecuritySAMLLib=true -Dweblogic.debug.DebugSecuritySAMLService=true |
SAML 2.0 |
-Dweblogic.debug.DebugSecuritySAML2Atn=true -Dweblogic.debug.DebugSecuritySAML2CredMap=true -Dweblogic.debug.DebugSecuritySAML2Lib=true -Dweblogic.debug.DebugSecuritySAML2Service=true |
SAMLデバッグを有効化するためにこの方法は静的なもので、サーバー起動時にのみ使用可能です。
WebLogic Server管理コンソールを使用してSAMLデバッグを構成するには、次の手順を実行します。
まだ行っていない場合、WebLogic Server管理コンソールのチェンジ・センターで「ロックして編集」をクリックします(「チェンジ・センターの使用」を参照)。
管理コンソールの左ペインで、「環境」を展開して「サーバー」を選択します。
「サーバーのサマリー」ページで、デバッグを有効化または無効化するサーバーをクリックして、そのサーバーの設定ページを開きます。
「デバッグ」をクリックします。
「weblogic」を展開します。
「security」を展開します。
次のとおりにSAMLデバッグを有効化します。
すべてのSAML 1.1属性を網羅するSAML 1.1デバッグ・スコープを有効化するには、samlを選択して「有効化」をクリックします。
1つ以上の個別のSAML 1.1デバッグ属性を有効化するには、samlを展開し、目的の属性のスコープを展開し、目的の個別のSAML 1.1属性を選択して、「有効化」をクリックします。たとえば、samlを展開し、atnを展開し、DebugSecuritySAMLAtn属性を選択してSAML 1.0認証処理をデバッグします。
すべてのSAML 2.0属性を網羅するSAML 2.0デバッグ・スコープを有効化するには、saml2を選択して「有効化」をクリックします。
1つ以上の個別のSAML 2.0デバッグ属性を有効化するには、saml2を展開し、目的の属性のスコープを展開し、目的の個別のSAML 2.0属性を選択して、「有効化」をクリックします。たとえば、saml2を展開し、credmapを展開し、DebugSecuritySAML2Credmap属性を選択してSAML 2.0資格証明マッピング・プロバイダ処理をデバッグします。
各登録済SAMLデバッグ属性の説明は、「SAMLデバッグ・スコープおよび属性について」を参照してください。
これらの変更をアクティブ化するには、WebLogic Server管理コンソールのチェンジ・センターで、「変更のアクティブ化」 (「チェンジ・センターの使用」を参照)をクリックします。
SAMLデバッグ・スコープおよび属性への変更はただちに実行され、再起動する必要はありません。SAMLデバッグを有効化/無効化するためのWebLogic Server管理コンソールの使用は動的で、サーバーの稼働中に使用できます。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのデバッグ設定の定義に関する項を参照してください。
WebLogic Scripting Tool (WLST)を使用してSAMLデバッグ属性を構成できます。たとえば、次のコマンドはdebug.py
というデバッグ属性の設定用プログラムを実行します。
java weblogic.WLST debug.py
debug.py
プログラムには、属性DebugSecuritySAMLAtn
のデバッグを有効化する次のコードが含まれます。
user='user1' password='password' url='t3://localhost:7001' connect(user, password, url) edit() cd('Servers/myserver/ServerDebug/myserver') startEdit() set('DebugSecuritySAMLAtn','true') save() activate()
JavaからもWLSTを使用することができることに注意してください。次の例は、DebugSecuritySAMLAtn
デバッグ属性を設定するJavaプログラムのソース・ファイルを示します。
import weblogic.management.scripting.utils.WLSTInterpreter; import java.io.*; import weblogic.jndi.Environment; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; public class test { public static void main(String args[]) { try { WLSTInterpreter interpreter = null; String user="user1"; String pass="pw12ab"; String url ="t3://localhost:7001"; Environment env = new Environment(); env.setProviderUrl(url); env.setSecurityPrincipal(user); env.setSecurityCredentials(pass); Context ctx = env.getInitialContext(); interpreter = new WLSTInterpreter(); interpreter.exec ("connect('"+user+"','"+pass+"','"+url+"')"); interpreter.exec("edit()"); interpreter.exec("startEdit()"); interpreter.exec ("cd('Servers/myserver/ServerDebug/myserver')"); interpreter.exec("set('DebugSecuritySAMLAtn','true')"); interpreter.exec("save()"); interpreter.exec("activate()"); } catch (Exception e) { System.out.println("Exception "+e); } } }
WLSTの使用は動的な手法で、サーバーの実行中にデバッグを有効化するために使用できます。
有効化されたデバッグ属性に対応するメッセージは、サーバー・ログ・ファイルに送信されます。任意で、WebLogic Serverを起動するためのコマンドのLogMBean上でStdoutSeverity=Debug
属性を受け渡すことによって、デバッグ・メッセージを標準出力に送信することも可能です。たとえば、-Dweblogic.log.StdoutSeverity=Debug
があります。
詳細は、『Oracle WebLogic Serverコマンド・リファレンス』のメッセージの出力およびロギングに関する項を参照してください。