Метод IOpcSignatureRelationshipReferenceSet::Create (msopc.h)
Создает указатель интерфейса IOpcSignatureRelationshipReference , представляющий ссылку на часть Связей, и добавляет новый указатель интерфейса в набор. Для подписывания выбираются все или подмножество связей, хранящихся в части Связей, на которые нужно ссылаться.
Синтаксис
HRESULT Create(
[in] IOpcUri *sourceUri,
[in] LPCWSTR digestMethod,
[in] OPC_RELATIONSHIPS_SIGNING_OPTION relationshipSigningOption,
[in] IOpcRelationshipSelectorSet *selectorSet,
[in] OPC_CANONICALIZATION_METHOD transformMethod,
[out, retval] IOpcSignatureRelationshipReference **relationshipReference
);
Параметры
[in] sourceUri
Указатель интерфейса IOpcUri , представляющий исходный универсальный код ресурса (URI) связей, выбираемых для подписывания.
[in] digestMethod
Метод дайджеста, используемый для выбора связей. Чтобы использовать метод дайджеста по умолчанию, передайте значение NULL в этом параметре.
[in] relationshipSigningOption
Значение типа , указывающее, включают ли связи, выбранные для подписывания, все или подмножество связей в части Связей, на которую следует ссылаться.
Сведения о влиянии значений relationshipSigningOption на другие параметры см. в разделе Примечания.
[in] selectorSet
Указатель интерфейса IOpcRelationshipSelectorSet , который можно использовать для идентификации подмножества связей в части "Связи", выбранной для подписи.
Если параметр relationshipSigningOption имеет значение OPC_RELATIONSHIP_SIGN_PART, selectorSet имеет значение NULL.
Сведения о значениях selectorSet см. в разделе Примечания.
[in] transformMethod
Значение типа , описывающее метод канонизации, применяемый к разметке связи выбранных связей.
Если параметр relationshipSigningOption задан OPC_RELATIONSHIP_SIGN_USING_SELECTORS, значение transformMethod игнорируется.
Дополнительные сведения о методах преобразования, применяемых при установке параметра relationshipSigningOptionна OPC_RELATIONSHIP_SIGN_USING_SELECTORS, см. в разделе Примечания.
[out, retval] relationshipReference
Новый указатель интерфейса IOpcSignatureRelationshipReference , представляющий упоминаемую часть Связей.
Возвращаемое значение
Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Метод выполнен успешно. |
|
Значение, переданное в параметре relationshipSigningOption , не является допустимым значением перечисления OPC_RELATIONSHIPS_SIGNING_OPTION . |
|
Значение, переданное в параметре transformMethod , не является допустимым значением перечисления OPC_CANONICALIZATION_METHOD . |
|
Параметр sourceUri имеет значение NULL. |
|
Параметр selectorSet не передает значение NULL , а параметру relationshipSigningOption передается значение OPC_RELATIONSHIP_SIGN_PART. |
Комментарии
Этот метод создает ссылку на часть "Связи". Все или подмножество связей, хранящихся в упоминаемой части Связей, может быть подписано при создании подписи.
Чтобы подписать все связи в части "Связи", вызовите этот метод, указав для параметра relationshipSigningOption значение OPC_RELATIONSHIP_SIGN_PART и значение параметра selectorSet со значением NULL.
Чтобы подписать подмножество связей в части "Связи", вызовите этот метод, указав для параметра relationshipSigningOption значение OPC_RELATIONSHIP_SIGN_USING_SELECTORS , а для параметра selectorSet — указатель интерфейса IOpcRelationshipSelectorSet . Чтобы создать указатель интерфейса IOpcRelationshipSelectorSet , вызовите метод CreateRelationshipSelectorSet .
В следующей таблице перечислены значения параметров, необходимые этому методу для создания ссылки, указывающей, должны ли быть подписаны все связи или подмножество связей (которые хранятся в части Связей для ссылки).
Описание | relationshipSigningOption Значение | selectorSet Значение |
---|---|---|
Подписывая все связи в части "Связи" | OPC_RELATIONSHIP_SIGN_PART | NULL |
Подписываться подмножеством связей в части "Связи" | OPC_RELATIONSHIP_SIGN_USING_SELECTORS | Указатель интерфейса IOpcRelationshipSelectorSet |
Если нужно подписать подмножество связей, указанный метод преобразования игнорируется. Вместо этого при создании сигнатуры применяется первое преобразование — преобразование связей, а второе — метод канонизации OPC_CANONICALIZATION_C14N .
При создании указателя интерфейса IOpcSignatureRelationshipReference и добавлении в набор ссылка, которую он представляет, сохраняется при сохранении пакета.
Связи, которые не будут подписаны, можно удалить, изменить или добавить в пакет без аннулирования подписи. Если для подписывания выбрано подмножество связей, а подмножество изменено, подпись будет признана недействительной.
Потокобезопасность
Объекты упаковки не являются потокобезопасны.
Дополнительные сведения см. в статье начало работы с помощью API упаковки.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | msopc.h |
См. также раздел
начало работы с помощью API упаковки
IOpcSignatureRelationshipReferenceSet
OPC_RELATIONSHIPS_SIGNING_OPTION
Разделы общих сведений
Руководство по программированию API упаковки
Упаковка интерфейсов цифровой подписи
Справочные материалы