エンドポイント認証の種類

この機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。新しい開発作業では、この機能の使用を避け、現在この機能を使用しているアプリケーションは修正するようにしてください。

エンドポイント認証の処理には、サーバーに作成されたエンドポイントにユーザーが接続できるようにするための、権限の許可、および認証の実行方法の指定があります。

認証の実行方法は、CREATE ENDPOINT ステートメントまたは ALTER ENDPOINT ステートメントの AUTHENTICATION 句を使用して指定します。AUTHENTICATION 句には、認証の種類を指定するための次のオプションが用意されています。

  • BASIC

  • DIGEST

  • NTLM

  • KERBEROS

  • INTEGRATED

注意

エンドポイントでの匿名認証はサポートされません。ユーザーがエンドポイントにアクセスする場合、ユーザーは認証済みで有効な Windows ユーザーであり、信頼された Windows ユーザーまたはローカル コンピューター上のメンバー アカウントである必要があります。

基本認証

基本認証とは、HTTP 1.1 仕様で必要な 2 つの認証メカニズムの 1 つです。基本認証は、base64 エンコードされたユーザー名とパスワードがコロンで区切られた形式で含まれる認証ヘッダーで構成されます。詳細については、http://www.ietf.org/rfc/rfc2617.txt を参照してください。

BASIC を指定するときは、次の点を考慮してください。

  • PORTS 値を CLEAR に設定できません。

  • 基本 HTTP 認証として送信される資格情報は、有効な Windows ログインにマップする必要があります。

基本認証は、最後の手段としてだけ使用してください。基本認証では容易にデコードされる base64 エンコードが使用されるので、基本認証を指定する場合は、SQL Server のインスタンスで HTTP 接続に SSL (Secure Sockets Layer) ポートを使用する必要があります。基本認証は、エンドポイントへの権限を許可されたユーザーが、サーバー コンピューター自体のローカル ユーザーである場合に使用できます。

ダイジェスト認証

ダイジェストは、HTTP 1.1 仕様で必要な 2 番目の認証メカニズムです。この認証は、ユーザー名とパスワードで構成されます。このユーザー名とパスワードが一方向のハッシュ アルゴリズムである MD5 でハッシュされ、サーバーに送信されます。サーバーは、生のパスワード、またはパスワードが設定されたときに作成された格納済み MD5 ハッシュにアクセスできます。サーバーは、格納済みの計算値と、クライアントから指定された値とを比較します。この方法では、クライアントは実際にサーバーにパスワードを提供することなしに、クライアントがパスワードを把握していることを証明できます。詳細については、http://www.ietf.org/rfc/rfc2617.txt を参照してください。

ダイジェスト認証の一部として HTTP 経由で送信される資格情報は、有効な Windows ドメイン アカウントにマップする必要があります。Windows ベースのダイジェスト認証では、ローカル ユーザー アカウントはサポートされません。

注意

セキュリティ上の理由から、Windows ベースのダイジェスト認証では、Windows Server 2003 で実行されているドメイン コントローラー上の MD5-sess 暗号化のみがサポートされます。

NTLM 認証

NTLM は、Windows 95、Windows 98、および Windows NT 4.0 (クライアントとサーバー) でサポートされている認証メカニズムです。この認証メカニズムは、基本認証またはダイジェスト認証のいずれよりも厳密な認証を提供する要求/応答プロトコルです。NTLM は、Windows 2000 以降のバージョンで、セキュリティ サポート プロバイダー インターフェイス (SSPI) によって実装されています。詳細については、「Microsoft NTLM」を参照してください。

Kerberos 認証

Kerberos 認証は、インターネット標準の認証メカニズムです。Kerberos 認証は、Windows 2000 以降のバージョンで SSPI によってサポートされています。

Kerberos 認証を使用する場合、SQL Server のインスタンスによって、SPN (サービス プリンシパル名) と、実行されるアカウントとが関連付けられている必要があります。詳細については、Http.sys を使用した Kerberos サービス プリンシパル名の登録 を参照してください。

Kerberos 認証の詳細については、「Microsoft Kerberos」を参照してください。

統合認証

統合認証をサポートするように構成されたエンドポイントは、認証要求の一部として、Kerberos 認証または NTLM の認証に応答できます。

この構成では、サーバーは認証要求でクライアントが使用した種類の認証を使用してクライアントの認証を試みます。

注意

統合認証の一方の種類で認証に失敗した場合、サーバーはクライアント接続を終了します。サーバーは、他の種類の認証に切り替えて認証を再試行することはありません。