SQL Server データベースの TRUSTWORTHY プロパティがオンまたはオフに設定されているかどうかを T-SQL で確認する方法
T-SQL を使用して、TRUSTWORTHY プロパティがオンまたはオフに設定されているかどうかを確認するには、以下の方法があります。
sp_dboption プロシージャを使用する
EXEC sp_dboption @dbname, 'TRUSTWORTHY', 'single'
このコマンドは、指定されたデータベース (dbname) の TRUSTWORTHY プロパティの現在の設定値を返します。
出力例:
Value
-----
ON
sys.databases カタログビューを使用する
SELECT is_trustworthy
FROM sys.databases
WHERE name = 'dbname'
このコマンドは、指定されたデータベース (dbname) の is_trustworthy 列の値を返します。この列は、TRUSTWORTHY プロパティの設定値を表します。
is_trustworthy
-------------
1
INFORMATION_SCHEMA.COLUMNS ビューを使用する
SELECT is_trustworthy
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'sys.sp_MS_marksystemobject'
AND COLUMN_NAME = 'is_trustworthy'
is_trustworthy
-------------
1
SSMS を使用
SQL Server Management Studio (SSMS) を使用して、TRUSTWORTHY プロパティの設定値を確認することもできます。
- SSMS を開き、データベースエンジンに接続します。
- オブジェクトエクスプローラーで、データベースを展開します。
- フォルダ セキュリティ を展開します。
- データベースの所有者 を右クリックし、 プロパティ を選択します。
- プロパティ ダイアログボックスで、 オプション ページを選択します。
- TRUSTWORTHY オプションがオンになっているかどうかを確認します。
注意事項
- TRUSTWORTHY プロパティを変更する前に、その影響を理解していることを確認してください。
- TRUSTWORTHY プロパティをオンにする場合は、データベースのセキュリティを強化するための対策を講じる必要があります。
-- sp_dboption プロシージャを使用する
USE AdventureWorks2019
EXEC sp_dboption @dbname = 'AdventureWorks2019', 'TRUSTWORTHY', 'single'
-- sys.databases カタログビューを使用する
SELECT is_trustworthy
FROM sys.databases
WHERE name = 'AdventureWorks2019'
-- INFORMATION_SCHEMA.COLUMNS ビューを使用する
SELECT is_trustworthy
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'sys.sp_MS_marksystemobject'
AND COLUMN_NAME = 'is_trustworthy'
- コードを実行する前に、データベースのバックアップを取っておくことをお勧めします。
- コードを実行する前に、その影響を理解していることを確認してください。
PowerShell を使用して、TRUSTWORTHY プロパティの設定値を確認することができます。
Get-Database -Name AdventureWorks2019 | Select-Object IsTrustworthy
拡張機能を使用
TRUSTWORTHY プロパティを確認するのに役立ついくつかの拡張機能が公開されています。
- TRUSTWORTHY プロパティを変更する前に、データベースのバックアップを取っておくことをお勧めします。
sql-server