認証 Web サービスは、SOAP を使用して認証を実行する方法を定義します。Web サービスコンシューマ (WSC) と Web サービスプロバイダ (WSP) との間での認証情報の交換は、SOAP にバインドされたメッセージを使用して実行されます。このメッセージは、定義済みの SASL (Simple Authentication and Security Layer) メカニズム (または認証モード) に固有の一連のクライアント要求とサーバー応答です。認証の要求 (または WSC からの応答) を受信すると、WSP は追加のチャレンジを発行するか、あるいは認証に成功または失敗したことを示します。認証 Web サービスは、ユーザーが対象ではなく、サービス間での認証のためのサービスです。次の手順では、WSC と認証 Web サービス (WSP) との間での処理の流れを詳しく説明します。
認証交換では、最初に WSC が、主体を代表して認証 Web サービスに SASL 認証要求を送信します。
要求メッセージには主体の ID が含まれており、サービスが選択できる SASL メカニズムが 1 つ以上示されています。
認証 Web サービスは、使用する方法を明確に指定して応答し、必要な場合は、チャレンジを初期化します。
認証 Web サービスが提示されたどの方法もサポートしていない場合は、交換を中止することによって応答します。
WSC は、選択された認証方法に必要な証明情報で応答します。
認証 Web サービスは、認証を承認または却下することによって応答します。
認証が承認された場合、応答には WSC がほかの Web サービス (ディスカバリサービスなど) を起動するために必要な証明情報が含まれます。
実装環境には、次の認証 Web サービスのグローバル属性を設定できます。
チャレンジのクリーンアップ間隔 — デフォルトの CRAM-MD5 メカニズムハンドラ実装クラス com.sun.identity.liberty.ws.authnsvc.mechanism.CramMD5MechanismHandler のクリーンアップ間隔を秒単位で指定します。内部スレッドはこの値に基づいてチャレンジマップのクリーンアップを開始します。
変換クラス — 変換名から実装クラスへのマッピングを指定します。値はコンマで区切り、変換名と実装クラス名は「|」で区切ります。たとえば、name1|class1, name2|class2 のように指定します。
認証 Web サービスの設定に関連する作業は、次のとおりです。