DBCC FLUSHAUTHCACHE (Transact-SQL)

THIS TOPIC APPLIES TO: noSQL Server yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Empties the database authentication cache containing information about logins and firewall rules, for the current user database in SQL Database. This statement does not apply to the logical master database, because the master database contains the physical storage for the information about logins and firewall rules. The user executing the statement and other currently connected users remain connected. (DBCC FLUSHAUTHCACHE is not currently supported for SQL Data Warehouse.)

Topic link icon Transact-SQL Syntax Conventions

Syntax

DBCC FLUSHAUTHCACHE [ ; ]  

Arguments

None.

Remarks

The authentication cache makes a copy of logins and server firewall rules that are stored in master and places them in memory in the user database. Since information about contained database users are already stored in the user database, contained database users are not part of the authentication cache. Continuously active connections to SQL Database require reauthorization (performed by the Database Engine) at least every 10 hours. The Database Engine attempts reauthorization using the originally submitted password and no user input is required. For performance reasons, when a password is reset in SQL Database, the connection will not be re-authenticated, even if the connection is reset due to connection pooling. This is different from the behavior of on-premises SQL Server. If the password has been changed since the connection was initially authorized, the connection must be terminated and a new connection made using the new password. A user with the KILL DATABASE CONNECTION permission can explicitly terminate a connection to SQL Database by using the KILL (Transact-SQL) command.

Permissions

Requires the SQL Database admin account.

Example

The following statement clears the authentication cache for the current database.

DBCC FLUSHAUTHCACHE;  

See Also

DBCC (Transact-SQL)