CERTPROPERTY (Transact-SQL)
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance SQL database in Microsoft Fabric
Returns the value of a specified certificate property.
Transact-SQL syntax conventions
Syntax
CertProperty ( Cert_ID , '<PropertyName>' )
<PropertyName> ::=
Expiry_Date | Start_Date | Issuer_Name
| Cert_Serial_Number | Subject | SID | String_SID
Arguments
Cert_ID
The certificate ID value, of data type int.
Expiry_Date
The certificate expiration date.
Start_Date
The date when the certificate becomes valid.
Issuer_Name
The name of the certificate issuer.
Cert_Serial_Number
The certificate serial number.
Subject
The certificate subject.
SID
The certificate SID. This is also the SID of any login or user mapped to this certificate.
String_SID
The SID of the certificate as a character string. This is also the SID of any login or user mapped to the certificate.
Return types
Single quotation marks must enclose the property specification.
The return type depends on the property specified in the function call. The return type sql_variant wraps all return values.
- Expiry_Date and Start_Date return datetime.
- Cert_Serial_Number, Issuer_Name, String_SID, and Subject all return nvarchar.
- SID returns varbinary.
Remarks
See certificate information in the sys.certificates catalog view.
Permissions
Requires appropriate permission(s) on the certificate, and requires that the caller has not been denied VIEW permission on the certificate. See CREATE CERTIFICATE (Transact-SQL) and GRANT CERTIFICATE PERMISSIONS (Transact-SQL) for more information about certificate permissions.
Examples
The following example returns the certificate subject.
-- First create a certificate.
CREATE CERTIFICATE Marketing19 WITH
START_DATE = '04/04/2004' ,
EXPIRY_DATE = '07/07/2040' ,
SUBJECT = 'Marketing Print Division';
GO
-- Now use CertProperty to examine certificate
-- Marketing19's properties.
DECLARE @CertSubject sql_variant;
set @CertSubject = CertProperty( Cert_ID('Marketing19'), 'Subject');
PRINT CONVERT(nvarchar, @CertSubject);
GO
See also
CREATE CERTIFICATE (Transact-SQL)
ALTER CERTIFICATE (Transact-SQL)
CERT_ID (Transact-SQL)
Encryption Hierarchy
sys.certificates (Transact-SQL)
Security Catalog Views (Transact-SQL)