Я создаю STS, используя классы WIF (System.IdentityModel
) в .NET 4.5. Эта STS должна обрабатывать токен ActAs. Я успешно создал прототип клиента для отправки токена ActAs, и это приводит к следующему сообщению об ошибке на стороне сервера:
ID3265: элемент ActAs найден, но не было зарегистрированных обработчиков токенов для чтения элемента ActAs. Рассмотрите возможность добавления допустимой коллекции SecurityTokenHandlerCollection в SecurityTokenHanderCollectionManager для использования ActAs.
Однако я не вижу способа добавить SecurityTokenHandlerCollection
к SecurityTokenHanderCollectionManager
. Как это делается?
Я попробовал то, что предлагается в этой документации:
<securityTokenHandlers name="ActAs">
...
</securityTokenHandlers>
Но это приводит к этой ошибке:
ID0005: входная коллекция configElement.ElementInformation.Properties не содержит свойства с именем ActAs.
«Эквивалентное» (согласно этой документации) заклинание ServiceConfiguration.SecurityTokenHandlerCollectionManager["ActAs"]
одинаково бесполезно:
Необработанное исключение: System.Collections.Generic.KeyNotFoundException: данный ключ отсутствует в словаре. в System.Collections.Generic.Dictionary`2.get_Item (ключ TKey) в System.IdentityModel.Tokens.SecurityTokenHandlerCollectionManager.get_Item (использование строки)
Обратите внимание, что эта документация содержит практически ту же информацию, что и 1, но специально для .NET 4.5.
Как обращаться с токенами ActAs?