Использование нескольких протоколов доверия в сценариях федерацииMixing Trust Protocols in Federated Scenarios

Возможны сценарии, в которых федеративные клиенты взаимодействуют со службой и службой маркеров безопасности, версии доверия которых не совпадают.There may be scenarios in which federated clients communicate with a service and a Security Token Service (STS) that do not have the same trust version. Код WSDL службы может содержать утверждение RequestSecurityTokenTemplate с элементами WS-Trust, версии которых не совпадают с версией службы маркеров безопасности.The service WSDL can contain a RequestSecurityTokenTemplate assertion with WS-Trust elements that are of different versions than the STS. В таких случаях клиент Windows Communication Foundation (WCF) преобразует элементы WS-Trust, полученные из, в, RequestSecurityTokenTemplate чтобы соответствовать версии доверия STS.In such cases, a Windows Communication Foundation (WCF) client converts the WS-Trust elements received from the RequestSecurityTokenTemplate to match the STS trust version. WCF обрабатывает несоответствующие версии доверия только для стандартных привязок.WCF handles mismatched trust versions only for standard bindings. Все стандартные параметры алгоритма, распознаваемые WCF, являются частью стандартной привязки.All standard algorithm parameters that are recognized by WCF are part of the standard binding. В этом разделе описывается поведение WCF с различными параметрами доверия между службой и STS.This topic describes the WCF behavior with various trust settings between the service and the STS.

Проверяющая сторона и служба маркеров безопасности используют версию февраля 2005 г.RP Feb 2005 and STS Feb 2005

Код WSDL проверяющей стороны содержит следующие элементы в разделе RequestSecurityTokenTemplate:The WSDL for Relying Party (RP) contains the following elements within the RequestSecurityTokenTemplate section:

  • CanonicalizationAlgorithm

  • EncryptionAlgorithm

  • EncryptWith

  • SignWith

  • KeySize

  • KeyType

Файл конфигурации клиента содержит список параметров.The client configuration file contains a list of parameters.

WCF не может различить параметры клиента и службы; Он добавляет все параметры и отправляет их в RequestSecurityTokenTemplate (RST).WCF cannot differentiate between the client and service parameters; it adds all the parameters and sends them in the RequestSecurityTokenTemplate (RST).

Проверяющая сторона и служба маркеров безопасности используют версию Trust 1.3RP Trust 1.3 and STS Trust 1.3

Код WSDL проверяющей стороны содержит следующие элементы в разделе RequestSecurityTokenTemplate:The WSDL for RP contains the following elements within the RequestSecurityTokenTemplate section:

  • CanonicalizationAlgorithm

  • EncryptionAlgorithm

  • EncryptWith

  • SignWith

  • KeySize

  • KeyType

  • KeyWrapAlgorithm

Файл конфигурации клиента содержит элемент secondaryParameters, являющийся оболочкой для параметров, заданных проверяющей стороной.The client configuration file contains a secondaryParameters element that wraps the parameters specified by the RP.

WCF удаляет EncryptionAlgorithm CanonicalizationAlgorithm KeyWrapAlgorithm элементы и из элемента верхнего уровня в RST, если они существуют внутри SecondaryParameters элемента.WCF removes the EncryptionAlgorithm, CanonicalizationAlgorithm and KeyWrapAlgorithm elements from the top-level element under the RST if these are present inside the SecondaryParameters element. WCF добавляет SecondaryParameters элемент в исходящий RST без изменений.WCF appends the SecondaryParameters element to the outgoing RST unmodified.

Проверяющая сторона использует версию февраля 2005 г., а служба маркеров безопасности - версию Trust 1.3RP Trust Feb 2005 and STS Trust 1.3

Код WSDL проверяющей стороны содержит следующие элементы в разделе RequestSecurityTokenTemplate:The WSDL for RP contains the following elements in the RequestSecurityTokenTemplate section:

  • CanonicalizationAlgorithm

  • EncryptionAlgorithm

  • EncryptWith

  • SignWith

  • KeySize

  • KeyType

Файл конфигурации клиента содержит список параметров.The client configuration file contains a list of parameters.

В файле конфигурации клиента WCF не может различить параметры службы и клиента.From the client configuration file, WCF cannot differentiate between the service and client parameters. Поэтому WCF преобразует все параметры в пространство имен доверия версии 1,3.Therefore WCF converts all the parameters to a Trust version 1.3 namespace.

WCF обрабатывает KeyType элементы, KeySize и TokenType следующим образом:WCF handles the KeyType, KeySize, and TokenType elements as follows:

  • Загружается код WSDL, создается привязка и присваиваются значения KeyType, KeySize и TokenType на основании параметров проверяющей стороны.Download the WSDL, create the binding, and assign KeyType, KeySize, and TokenType from the RP parameters. Создается файл конфигурации клиента.The client configuration file is then generated.

  • Теперь клиент может изменять любые параметры в файле конфигурации.The client can now change any parameter in the configuration file.

  • Во время выполнения WCF копирует все параметры, указанные в AdditionalTokenParameters разделе файла конфигурации клиента, за исключением KeyType KeySize и TokenType , поскольку эти параметры задаются во время создания файла конфигурации.During runtime, WCF copies all parameters specified into the AdditionalTokenParameters section of the client configuration file except KeyType, KeySize and TokenType, because these parameters are accounted for during the configuration file generation.

Проверяющая сторона использует версию Trust 1.3, а служба маркеров безопасности - версию февраля 2005 г.RP Trust 1.3 and STS Trust Feb 2005

Код WSDL проверяющей стороны содержит следующие элементы в разделе RequestSecurityTokenTemplate:The WSDL for RP contains the following elements in the RequestSecurityTokenTemplate section:

  • CanonicalizationAlgorithm

  • EncryptionAlgorithm

  • EncryptWith

  • SignWith

  • KeySize

  • KeyType

  • KeyWrapAlgorithm

Файл конфигурации клиента содержит элемент secondaryParamters, являющийся оболочкой для параметров, заданных проверяющей стороной.The client configuration file contains a secondaryParamters element that wraps the parameters specified by the RP.

WCF копирует все параметры, указанные в SecondaryParameters разделе, в элемент RST верхнего уровня, но не преобразует их в пространство имен 2005 WS-Trust.WCF copies all the parameters specified within the SecondaryParameters section to the top-level RST element, but does not convert them to the 2005 WS-Trust namespace.