Использование WIF частных методов WCF

WIF использует отражение для доступа к частным участникам WCF в следующих методах:

  • FederatedSecurityTokenManager.SetWrappedTokenCache. WCF позволяет разработчику заменять кэш SecurityContextToken, возвращая кэш как распознаватель маркеров вне привязки из CreateSecurityTokenAuthenticator. Однако этот кэш не заменяет правильно внутренний кэш во внутреннем свойстве Authenticators, поэтому WIF добавляет кэш, используя отражение.

  • FederatedSecurityTokenManager.GetSecurityVersion. SecurityTokenVersion для двух MessageSecurityVersions "WSSecurity10WSTrust13WSSecureConversation13BasicSecurityProfile10" и "WSSecurity11WSTrust13WSSecureConversation13" означает неправильную спецификацию версии безопасности в коллекции спецификаций безопасности. WIF использует отражение для доступа к правильной версии SecurityVersion посредством приведения данной версии SecurityTokenVersion к внутренней версии MessageSecurityTokenVersion.

  • WrappedSessionSecurityTokenAuthenticator.ReplaceAuthPolicies. WIF реализует свою модель утверждений через проверку правильности маркеров. Однако из-за строгой внутренней реализации в WCF относительно проверки подлинности и создания SecurityContextToken WIF разрешает WCF создавать SecurityContextToken и затем использует отражение, чтобы заменить внутренние AuthorizationPolicies в маркере.

Методы WIF, перечисленные ранее, сами являются частными и не должны вызываться.