IS_OBJECTSIGNED (Transact-SQL)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure
Indica se un oggetto viene firmato da una chiave asimmetrica o da un certificato specificato.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
IS_OBJECTSIGNED (
'OBJECT', @object_id, @class, @thumbprint
)
Argomenti
'OBJECT'
Tipo di classe a protezione diretta.
@object_id
object_id dell'oggetto sottoposto a test. @object_id è di tipo int.
@class
Classe dell'oggetto.
'certificate'
'asymmetric key'
@class è sysname.
@thumbprint
Identificazione digitale SHA dell'oggetto. @thumbprint è di tipo varbinary(32).
Tipi restituiti
int
Osservazioni:
IS_OBJECTSIGNED restituisce i valori seguenti.
Valore restituito | Descrizione |
---|---|
NULL | L'oggetto non è firmato oppure non è valido. |
0 | L'oggetto è firmato, ma la firma non è valida. |
1 | L'oggetto viene firmato. |
Autorizzazioni
È richiesta l'autorizzazione VIEW DEFINITION per il certificato o la chiave asimmetrica.
Esempi
R. Visualizzazione delle proprietà estese in un database
L'esempio seguente verifica se la tabella spt_fallback_db del database master è firmata dal certificato di firma dello schema.
USE master;
-- Declare a variable to hold a thumbprint and an object name
DECLARE @thumbprint varbinary(20), @objectname sysname;
-- Populate the thumbprint variable with the thumbprint of
-- the master database schema signing certificate
SELECT @thumbprint = thumbprint
FROM sys.certificates
WHERE name LIKE '%SchemaSigningCertificate%';
-- Populate the object name variable with a table name in master
SELECT @objectname = 'spt_fallback_db';
-- Query to see if the table is signed by the thumbprint
SELECT @objectname AS [object name],
IS_OBJECTSIGNED(
'OBJECT', OBJECT_ID(@objectname), 'certificate', @thumbprint
) AS [Is the object signed?] ;