sys.fn_check_object_signatures (Transact-SQL)
S’applique à :SQL ServerAzure SQL Managed InstanceAnalytics Platform System (PDW)
Retourne une liste de tous les objets signables et indique si un objet est signé par un certificat spécifié ou une clé asymétrique. Retourne également une valeur indiquant si la signature d'un objet est valide si l'objet est signé par le certificat spécifié ou une clé asymétrique.
Conventions de la syntaxe Transact-SQL
Syntaxe
fn_ check_object_signatures (
{ '@class' } , { @thumbprint }
)
Arguments
{ '@class' }
Identifie le type d'empreinte numérique fourni :
'certificate'
'asymmetric key'
@la classe est sysname.
{ @empreinte }
Hachage SHA-1 du certificat avec lequel la clé est chiffrée ou GUID de la clé asymétrique avec laquelle la clé est chiffrée. @l’empreinte numérique est varbinary(20).
Tables retournées
Le tableau suivant répertorie les colonnes que fn_check_object_signatures retourne.
Colonne | Type | Description |
---|---|---|
type | nvarchar(120) | Retourne une description de type ou un assembly. |
entity_id | int | Retourne l'ID de l'objet en cours d'évaluation. |
is_signed | int | Retourne la valeur 0 lorsque l'objet n'est pas signé par l'empreinte numérique fournie. Retourne la valeur 1 lorsque l'objet est signé par l'empreinte numérique fournie. |
is_signature_valid | int | Lorsque is_signed a la valeur 1, retourne la valeur 0 lorsque la signature n'est pas valide. Retourne la valeur 1 lorsque la signature est valide. Lorsque is_signed a la valeur 0, retourne toujours la valeur 0. |
Remarques
Utilisez fn_check_object_signatures pour vérifier que les utilisateurs malveillants n’ont pas falsifié les objets.
Autorisations
Nécessite l'autorisation VIEW DEFINITION sur le certificat ou la clé asymétrique.
Exemples
L'exemple suivant recherche le certificat de signature de schéma pour la base de données master
et retourne la valeur 1 pour is_signed
et la valeur 1 pour is_signature_valid
pour les objets signés par le certificat de signature de schéma et dont les signatures sont valides.
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
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour