HTTP 認証の使用法
Web サービスによっては、WS-Security ではなく HTTP 認証が必要なものがあります ("Web サービスの保護" で説明しています)。こういった Web サービスに向けて、InterSystems IRIS® データ・プラットフォームでは以下の HTTP 認証スキームがサポートされています。
-
Negotiate (RFC 4559Opens in a new tab および RFC 4178Opens in a new tab で説明されている SPNEGO および Kerberos)
-
NTLM (NT LAN Manager 認証プロトコル)
-
Basic (RFC 2617Opens in a new tab で説明されている Basic アクセス認証)
HTTP 1.0 では、Basic 認証のみが使用されることに注意してください。その他の認証スキームには、単一接続内での複数の往復が必要ですが、HTTP 1.0 ではこれが許可されないためです。
HTTP 認証を使用するには、以下の操作を行います。
-
Web メソッドを呼び出す前に、Web クライアントの HttpUsername プロパティと HttpPassword プロパティを設定します。
-
使用するスキーム (このスキームはサーバによって許可されることがわかっている) を示した初期ヘッダがクライアントから送信されるようにするには、Web メソッドを呼び出す前に HttpInitiateAuthentication プロパティを設定します。このプロパティの値として、"HTTP 要求の送信" の "ログイン資格情報の提供" の説明に従い、認証スキーム名を指定します。
-
クライアントで試行するスキームのリストをカスタマイズするには、Web メソッドを呼び出す前に HttpInitiateAuthentication プロパティを設定します。このプロパティの値として、"HTTP 要求の送信" の "ログイン資格情報の提供" の説明に従い、コンマ区切りの名前リストを使用します。
Basic 認証が使用される可能性がある場合、Web サービスをホストする Web サーバと Web クライアントとの間で、必ず SSL を使用します。Basic 認証では、資格情報は Base 64 のエンコード形式で送信されるため、簡単に読み取ることができます。"SSL を使用するようにクライアントを構成する方法" を参照してください。