DBCC FLUSHAUTHCACHE (Transact-SQL)
適用対象: Azure SQL Database
SQL Database の現在のユーザー データベースで、ログインとファイアウォール ルールに関する情報を含むデータベース認証キャッシュを空にします。
DBCC FLUSHAUTHCACHE
は、論理 master
データベースには適用されません。これは、master
データベースには、ログインとファイアウォール規則に関する情報用の物理ストレージが含まれるためです。
ステートメントを実行しているユーザーおよび現在接続されている他のユーザーの接続状態は維持されます (DBCC FLUSHAUTHCACHE
は現在、Azure Synapse Analytics ではサポートされていません。)
構文
DBCC FLUSHAUTHCACHE
[;]
引数
[なし] :
解説
認証キャッシュは、master
データベースに格納されているログインとサーバー ファイアウォール規則のコピーを作成して、ユーザー データベースのメモリに配置します。 含まれているデータベース ユーザーに関する情報は、既にユーザー データベースに格納されているため、含まれているデータベース ユーザーは認証キャッシュの一部ではありません。
SQL Database への接続を継続的にアクティブにするには、少なくとも 10 時間ごとに (データベース エンジン によって実行される) 再認証が必要です。 データベース エンジン は、最初に送信されたパスワードを使用して再認証を試行するので、ユーザー入力は不要です。 パスワードが SQL Database でリセットされた場合、接続プーリングのために接続がリセットされても、パフォーマンス上の理由から接続は再認証されません。 この動作は、オンプレミスの SQL Server の動作とは異なります。 接続が最初に承認された後でパスワードが変更されている場合は、接続を終了し、新しいパスワードを使用して新しい接続を行う必要があります。
KILL DATABASE CONNECTION 権限を持つユーザーは、KILL (Transact-SQL) コマンドを使用して SQL Database への接続を明示的に終了できます。
アクセス許可
KILL DATABASE CONNECTION アクセス許可を持つ SQL Database または管理者アカウントが必要です。
例
次のステートメントは、現在のデータベースの認証キャッシュをクリアします。
DBCC FLUSHAUTHCACHE;