sys.fn_check_object_signatures (języka Transact-SQL)
Zwraca listę wszystkich obiektów do podpisania i wskazuje, czy obiekt jest podpisany przez określonego certyfikat lub kluczasymetrycznego.Jeśli obiekt jest podpisany przez określony certyfikat lub podpisany klucz asymetrycznego również zwraca czy obiektu podpis jest prawidłowy.
Składnia
fn_ check_object_signatures (
{ '@class' } , { @thumbprint }
)
Argumenty
{ '@class' }
Identyfikuje typ odcisk palca świadczona:"certyfikat"
" kluczasymetrycznego"
@class is sysname.
{ @thumbprint }
Wartość mieszania SHA-1 certyfikat , z którym jest zaszyfrowany klucz lub GUID asymetrycznego klucz , który klucz jest zaszyfrowany.@thumbprint is varbinary(20).
Zwracane tabele
Poniższa tabela zawiera listę kolumn, fn_check_object_signatures zwraca wartość.
Column |
Typ |
Opis |
---|---|---|
type |
nvarchar(120) |
Zwraca wpisz opis lub wirtualny plik dziennika. |
entity_id |
int |
Zwraca identyfikator obiektu będzie sprawdzana. |
is_signed |
int |
Zwraca wartość 0, gdy obiekt nie jest podpisany przez dostarczonego odcisk palca.Zwraca wartość 1, gdy obiekt jest podpisany przez dostarczonego odcisk palca. |
is_signature_valid |
int |
Gdy is_signed wartość wynosi 1, zwraca wartość 0, gdy podpis jest nieprawidłowy.Zwraca wartość 1, jeśli podpis jest prawidłowy. Gdy is_signed wartość jest równa 0, zawsze zwraca 0. |
Uwagi
Użycie fn_check_object_signatures potwierdzić, że złośliwych użytkowników nie jest modyfikowany od obiektów.
Uprawnienia
Definicja WIDOKU wymaga certyfikat lub kluczasymetrycznego.
Przykłady
Następujący przykład wyszukuje schematu podpisywanie certyfikat dla master bazy danych i zwraca is_signed wartość 1 i is_signature_valid wartość 1 dla tych obiektów, podpisana przez schemat certyfikat podpisywania i które mają nieprawidłowe podpisy.
USE master
-- Declare a variable to hold the thumbprint.
DECLARE @thumbprint varbinary(20) ;
-- Populate the thumbprint variable with the master database schema signing certificate.
SELECT @thumbprint = thumbprint
FROM sys.certificates
WHERE name LIKE '%SchemaSigningCertificate%' ;
-- Evaluates the objects signed by the schema signing certificate
SELECT type, entity_id, OBJECT_NAME(entity_id) AS [object name], is_signed, is_signature_valid
FROM sys.fn_check_object_signatures ('certificate', @thumbprint) ;
GO