![]() ![]() ![]() ![]() |
Security Assertion Markup Language (SAML) は、オンライン ビジネス パートナ間で認証および認可情報を交換するためのフレームワークを定義します。Oracle Service Bus では、SAML を使用するために次の方法が可能です。
SAML の概要については、次の URL の OASIS にある技術概要を参照してください。
http://www.oasis-open.org/committees/download.php/6837/sstc-saml-tech-overview-1.1-cd.pdf
SAML 仕様のドキュメント一式は次の URL から入手できます。
http://www.oasis-open.org/committees/download.php/3400/oasis-sstc-saml-1.1-pdf-xsd.zip
ビジネス サービスで SAML トークンが要求されるが、クライアントから提供されない場合は、クライアントの ID を SAML トークンにマップするようにプロキシ サービスをコンフィグレーションできます。
この方法では、ビジネス サービスが、SAML トークンを使用した認証を要求する WS-Policy ステートメントを持つ Web サービスであることが必要です。
メッセージ コンシューマはリライイング パーティとして動作し、Oracle Service Bus との信頼関係を持つ必要があります。
『WebLogic Server のセキュリティ』の「ドメイン間のセキュリティ サポートに関する重要事項」を参照してください。
クライアント要求に WS-Security セキュリティ ヘッダが含まれる場合は、メッセージのプロキシ サービス側でこのヘッダを処理するようにプロキシ サービスをコンフィグレーションする必要があります。Oracle Service Bus では、すでに WS-Security ヘッダが含まれる SOAP エンベロープに SAML ヘッダ (または他の WS-Security ヘッダ) を追加したり、既存のセキュリティ ヘッダに SAML (または他の) セキュリティ トークンを追加したりすることはできません。
注意 : | 動的ルーティング用にプロキシ サービスをコンフィグレーションすると、メッセージ コンテキストによって要求の対象 URL が決定されます。アサーションが署名されている場合は、証明書をコンフィグレーションする必要があります。詳細については、『WebLogic Server のセキュリティ』の「SAML 資格マッピング プロバイダのコンフィグレーション」を参照してください。 |
プロキシ サービスは、発信要求を送信するときに、クライアントに代わって SAML アサーションを生成します。ビジネス サービスは、WS-Security ヘッダを処理するときに、SAML アサーションの検証、その SAML アサーションの ID に対するセキュリティ コンテキストの作成、およびこのセキュリティ コンテキストを使用した Web サービスの呼び出しを行います。
クライアントがパススルー プロキシ サービスへの SAML トークンを提供する場合は、クライアントの SAML トークンをビジネス サービスに伝播できます。
この方法では、ビジネス サービスが、SAML トークンを使用した認証を要求する WS-Policy ステートメントを持つ Web サービスであることが必要です。
SAML パススルー ID の伝播をコンフィグレーションするには
『WebLogic Server のセキュリティ』の「ドメイン間のセキュリティ サポートに関する重要事項」を参照してください。
WebLogic Server Administration Console オンライン ヘルプの「SAML リライイング パーティの作成」を参照してください。
「パススルー プロキシ サービスの作成 : 主な手順」を参照してください。
「ビジネス サービスのメッセージレベルのセキュリティのコンフィグレーション : 主な手順」を参照してください。
アクティブな仲介プロキシ サービスへの SAML トークンがクライアントから提供される場合は、クライアントの ID アサーションを行うようにプロキシ サービスをコンフィグレーションできます。
SAML トークンを使用してクライアントを認証するようにプロキシ サービスをコンフィグレーションするには
Oracle Service Bus は、クライアントによって、またはクライアントの代わりに発行された SAML アサーションを信頼します。
『WebLogic Server のセキュリティ』の「ドメイン間のセキュリティ サポートに関する重要事項」を参照してください。
ID アサーション プロバイダのコンフィグレーション時は、次の要件に注意してください。
「ローカルな」転送のタイプで通信するプロキシ サービスは、SAML トークン プロファイルを使用して認証を行うことはできません。
SB 転送で SAML ベースの認証を使用する場合は、以下のコンフィグレーション要件に従ってください。
質問 : プロキシ サービス転送 ID を送り先のビジネス サービスに伝播しようとすると、必ず、「Unable to add security token for identity
」というエラーが表示されます。これはどういう意味ですか。
回答 : このエラーにはさまざまな原因があります。通常、これは次のいずれかの問題を意味します。
$security
メッセージ コンテキスト変数を検査します。
質問 : SAML holder-of-key を使用して、プロキシ サービス転送 ID を送り先のビジネス サービスに伝播しようとすると、必ず、「Failure to add signature
」というエラーが表示されます。これはどういう意味ですか。
回答 : このエラーにはさまざまな原因がありますが、最も可能性が高いのは、ビジネス サービスのサービス キー プロバイダに対して資格がコンフィグレーションされていないことです。Oracle Service Bus は、発信 holder-of-key アサーションを生成するときに、通常はメッセージ コンテンツに対するデジタル署名も生成します。これにより、受信者はメッセージが特定のユーザから送信されたものであることだけではなく、そのメッセージが改ざんされていないことを確認できます。署名を生成するには、ビジネス サービスは関連付けられたデジタル署名資格を持つサービス キー プロバイダを持つ必要があります。資格のコンフィグレーションの詳細については、『Oracle Service Bus Console の使い方』の「セキュリティ コンフィグレーション」にある資格の追加を参照してください。
質問 : SAML ID トークンを受信するアクティブな仲介プロキシ サービスをコンフィグレーションしようとすると、必ず、The SAML token is not valid
というエラーが表示されます。どのように修正すればよいですか。
回答 : この問題は、通常、そのプロキシに対して SAML ID アサーション プロバイダまたは SAML ID アサーション プロバイダのアサーション側コンフィグレーションがないことが原因です。プロキシ サービスがアクティブな仲介モードで SAML アサーションを受信するには、SAML ID アサーション プロバイダがコンフィグレーションされている必要があります。詳細については、『WebLogic Server のセキュリティ』の「SAML ID アサーション プロバイダのコンフィグレーション」を参照してください。
![]() ![]() ![]() |