Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

SQLServer

SQL Serverで起きる「ハンドシェイクエラー」の原因について

投稿日:2021年5月23日 更新日:

<目次>

(1) SQL Serverで起きる「ハンドシェイクエラー」の原因について
 (1-1) 発生状況・エラーメッセージ
 (1-2) 原因
 (1-3) 参考:SSPIとは?

(1) SQL Serverで起きる「ハンドシェイクエラー」の原因について

(1-1) 発生状況・エラーメッセージ

(エラーメッセージ)
統合セキュリティでの接続を確立中にSSPI ハンドシェイクがエラー コード 0x8009030c 状態14で失敗しました。この接続は閉じられました。理由AcceptSecurityContextが失敗しました。オペレーティングシステムエラーコードはエラーの原因を示しています。ログオンに失敗しました[クライアント:IP]

(図111)

 

目次にもどる

(1-2) 原因

このエラーは基本的にはSQLServerが「接続要求をしたユーザを認証する事が出来なかった」事を示唆するエラーで、様々な原因で起こり得る汎用的なものであるため、原因を断定する事は難しいですが、以下に1つの事例をご紹介します。

(原因事例①)
 
サーバAのローカルアカウントから、サーバBのSQLServerに対してOS認証でのログインを試みたが、サーバBに存在しないアカウントのためエラーとなった(異なる物理サーバからの認証)。
 
このケースの場合、正しい認証情報で接続を行えば、エラーを防げる可能性があります。
 
(原因事例②)
 
Windowsユーザのパスワードが期限切れの状態で認証を試みた際に発生。パスワードを再設定後、正常に接続できた。
 
この事から、多くのケースではSPN(Service Principal Name)に起因する事象の可能性が高い事がうかがえます(例:サービス起動用のアカウントがActive Directory内に作られていないケースなど)
 

(1-3) 参考:SSPIとは?

Security Support Provider Interfaceの略でトランスポート層のアプリケーションの間のインターフェイスです(「統合セキュリティ」などと呼ばれます)。アプリケーションとは具体的には「Microsoft Remote Procedure Call」(注1)や「Windows Distributed Security」などのセキュリティプロバイダを指します。

Integrated Securityの値が「false」に設定されている場合はIDとパスワードによる認証で接続し、「true」の場合は現在のWindowsアカウントの情報が認証に使用されます。

(注1)クライアント&サーバ間のプロセス間通信の技術

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-SQLServer

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

SQLServerでクエリの履歴のトレースログを出力する方法

  <目次> (1) SQLServerでクエリの履歴のトレースログを出力する方法  (1-1) 概要  (1-2) 手順  (1-3) (参考)トレースの出力状況の確認方法  (1-4) …

SQL ServerのAlwaysOn可用性グループ(Availability Groups)とは?

  <目次> (1) SQL ServerのAlwaysOn可用性グループ(Availability Groups)とは?  (1-1) SQL ServerのAlwaysOnとは?  (1 …

バッチファイルでSQLServerに接続する方法~sqlcmdの各オプション挙動を実例で紹介~

<目次> (1) バッチファイルでSQLServerに接続する方法  (1-1) 構文  (1-2) オプションの説明  (1-3) 各オプションの挙動をサンプルで確認 (1) バッチファイルでSQL …

SQLServerの復旧モデルの「単純」と「完全」と「一括ログ」の違いについて

<目次> (1) SQLServerの復旧モデルの「単純」と「完全」と「一括ログ」の違いについて  (1-1) 復旧モデルの概要  (1-2) 復旧モデルの比較表  (1-3) トランザクションログが …

SQLServerでテーブルを作成する方法+主キーや外部キーの指定方法も

<目次> (1) SQLServerでテーブルを作成する方法  (1-1) 構文  (1-2) 実際の例  (1-3) SQLServerの操作例 (1) SQLServerでテーブルを作成する方法 …

  • English (United States)
  • 日本語
Top