CertProperty (Transact-SQL)
Возвращает значение указанного свойства сертификата.
Синтаксис
CertProperty ( Cert_ID , '<PropertyName>' )
<PropertyName> ::=
Expiry_Date | Start_Date | Issuer_Name
| Cert_Serial_Number | Subject | SID | String_SID
Аргументы
Cert_ID
Идентификатор сертификата. Аргумент Cert_ID имеет тип int.Expiry_Date
Дата истечения срока действия сертификата.Start_Date
Дата вступления сертификата в силу.Issuer_Name
Имя выдавшего сертификат.Cert_Serial_Number
Серийный номер сертификата.Subject
Предмет сертификата.SID
Идентификатор защиты (SID) сертификата. А также это SID любого имени входа или пользователя, сопоставленного этому сертификату.String_SID
Идентификатор защиты (SID) сертификата в виде символьной строки. А также это SID любого имени входа или пользователя, сопоставленного этому сертификату.
Типы возвращаемых данных
Задание свойства должно заключаться в одинарные кавычки.
Возвращаемый тип зависит от свойства, указанного при вызове функции. Все возвращаемые значения упаковываются в возвращаемый тип sql_variant.
Аргументы Expiry_Date и Start_Date возвращают тип datetime.
Аргументы Cert_Serial_Number, Issuer_Name, Subject и String_SID возвращают тип nvarchar.
Аргумент SID возвращает тип varbinary.
Разрешения
Требуется ряд разрешений на сертификат, кроме того у участника не должно быть запрещено разрешение VIEW DEFINITION на этот сертификат.
Примеры
В следующем примере возвращается предмет сертификата.
-- First create a certificate.
CREATE CERTIFICATE Marketing19 WITH
START_DATE = '04/04/2004' ,
EXPIRY_DATE = '07/07/2007' ,
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