IS_OBJECTSIGNED (Transact-SQL)

Gibt an, ob ein Objekt von einem angegebenen Zertifikat oder asymmetrischen Schlüssel signiert wird.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

IS_OBJECTSIGNED ( 
'OBJECT', @object_id, @class, @thumbprint
    ) 

Arguments

  • ‚OBJECT’
    Der Typ der sicherbaren Klasse.

  • @object\_id
    Die object_id des Objekts, das getestet wird. @object\_id ist vom Datentyp int.

  • @class
    Klasse des Objekts:

    • ‚Zertifikat’

    • ‚asymmetrischer Schlüssel’

    @class ist vom Datentyp sysname.

  • @thumbprint
    Der SHA-Fingerabdruck des Objekts. @thumbprint ist vom Typ varbinary(32).

Rückgabetypen

int

Hinweise

IS_OBJECTSIGNED gibt folgende Werte zurück.

Rückgabewert

Beschreibung

0

Das Objekt ist nicht signiert.

1

Das Objekt ist signiert.

NULL

Das Objekt ist ungültig.

Permissions

Erfordert die VIEW DEFINITION-Berechtigung für das Zertifikat oder den asymmetrischen Schlüssel.

Beispiele

A. Anzeigen erweiterter Eigenschaften für eine Datenbank

Im folgenden Beispiel wird getestet, ob die Tabelle spt_fallback_db in der master-Datenbank vom Schemasignaturzertifikat signiert wird.

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?] ;