Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base de dados SQL no Microsoft Fabric
Indica se um objeto está assinado por um certificado especificado ou por uma chave assimétrica.
Transact-SQL convenções de sintaxe
Sintaxe
IS_OBJECTSIGNED (
'OBJECT', @object_id, @class, @thumbprint
)
Arguments
'OBJETO'
O tipo de classe garantida.
@object_id
A object_id do objeto a ser testado.
@object_id é o tipo int.
@class
A classe do objeto:
'certificado'
'chave assimétrica'
@class é sysname.
@thumbprint
A impressão digital SHA do objeto.
@thumbprint é tipo varbinário(32).
Tipos Retornados
int
Observações
IS_OBJECTSIGNED devolve os seguintes valores.
| Valor de retorno | Description |
|---|---|
| NULO | O objeto não está assinado, ou não é válido. |
| 0 | O objeto está assinado, mas a assinatura não é válida. |
| 1 | O objeto está assinado. |
Permissions
Requer VER DEFINIÇÃO no certificado ou chave assimétrica.
Examples
A. Exibir propriedades estendidas numa base de dados
O exemplo seguinte testa se a tabela spt_fallback_db na base de dados mestre está assinada pelo certificado de assinatura do esquema.
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?] ;