Функция WsCreateXmlSecurityToken (webservices.h)
Создает маркер безопасности из указанной XML-формы.
Синтаксис
HRESULT WsCreateXmlSecurityToken(
[in] WS_XML_BUFFER *tokenXml,
[in, optional] WS_SECURITY_KEY_HANDLE *tokenKey,
const WS_XML_SECURITY_TOKEN_PROPERTY *properties,
[in] ULONG propertyCount,
WS_SECURITY_TOKEN **token,
[in, optional] WS_ERROR *error
);
Параметры
[in] tokenXml
Указатель на структуру WS_XML_BUFFER , содержащую маркер безопасности в форме XML. Указанный буфер должен содержать ровно один XML-элемент верхнего уровня.
[in, optional] tokenKey
Указатель на структуру SECURITY_KEY_HANDLE , которая может содержать криптографический ключ подтверждения владения. При наличии ключа можно использовать для привязки этого маркера безопасности к сообщению. Если значение параметра tokenKey не равно NULL, предполагается, что у маркера есть ключ подтверждения владения. Если значение равно NULL, предполагается, что структура является "токеном носителя", как определено ниже.
- Маркер носителя, также называемый базовым маркером или маркером без ключа, сериализуется в сообщении, чтобы продемонстрировать владение маркером сообщения и указать намерение применить к нему утверждения из маркера.
- Маркер подтверждения владения, также называемый poP или криптографическим маркером, имеет связанный криптографический ключ, который должен использоваться для "подписывания" сообщения, чтобы продемонстрировать владение маркером и указать намерение применить утверждения из маркера к этому сообщению. Примером является сертификат X.509: сообщение должно быть подписано закрытым ключом сертификата, чтобы принимающий субъект принял сообщение как несущее утверждения, присутствующих в сертификате.
properties
Массив структур WS_XML_SECURITY_TOKEN_PROPERTY , содержащий необязательные свойства для маркера безопасности XML.
Значение этого параметра может иметь значение NULL. В этом случае параметр propertyCount должен иметь значение 0 (ноль).
[in] propertyCount
Число свойств в массиве свойств .
token
При успешном выполнении указатель, получающий адрес структуры WS_SECURITY_TOKEN , представляющей созданный маркер безопасности XML.
Если эта структура больше не нужна, ее необходимо освободить, вызвав WsFreeSecurityToken.
Возвращенный маркер безопасности может использоваться с WS_XML_TOKEN_MESSAGE_SECURITY_BINDING , если он должен быть
представляется службе.
[in, optional] error
Указатель на структуру WS_ERROR , которая получает дополнительные сведения об ошибке в случае сбоя функции.
Возвращаемое значение
Если функция выполняется успешно, она возвращает NO_ERROR; В противном случае возвращается код ошибки HRESULT.
Код возврата | Описание |
---|---|
|
Один или несколько аргументов недопустимы. |
|
Недостаточно памяти для завершения операции. |
|
Эта функция может возвращать другие ошибки, не перечисленные выше. |
Требования
Минимальная версия клиента | Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | webservices.h |
Библиотека | WebServices.lib |
DLL | WebServices.dll |