Что конкретно делают разные вызовы проверки токена SAML? - PullRequest
1 голос
/ 03 мая 2011

Я пытаюсь проверить токен SAML, который был создан нашими пользовательскими STS на основе WIF в веб-службе REST.

Существует несколько функций для проверки.Один из них - SecurityTokenHandlerCollection.ValidateToken () , а другой - SamlSecurityTokenAuthenticator.ValidateToken () .

К сожалению, онлайновая справка Microsoft MSDN для этих классов и функций бесполезна и не имеет смысла.вообще опишите, что именно делают эти функции.

Что проверяют эти функции и как они это делают?Каковы различия между ними?Они автоматически ищут сертификат в хранилище сертификатов Windows, чтобы проверить подпись токена и проверить объект зашифрованных учетных данных?Потому что я нигде не передаю название сертификата.Или есть другие ручные операции, которые мне нужно выполнить самостоятельно для проверки токена?

Я понимаю, что одна возвращает ClaimsIdentityCollection , а другая возвращает коллекцию IAuthorizationPolicy объектов.Но это единственная разница?Я не могу сказать.

Я могу найти много информации в Интернете о STS и утверждениях и даже проверке утверждений, которые я делаю успешно, но я вряд ли смогу найти какую-либо информацию о проверке самого токеначтобы убедиться, что это тот, который я создал.

1 Ответ

2 голосов
/ 04 мая 2011

В большинстве случаев вам не нужно беспокоиться о деталях проверки токена.Все это позаботится о вас WIF.

Но если вы действительно хотите знать, лучшим источником информации является книга Витторио: http://www.amazon.com/Programming-Windows%C2%AE-Identity-Foundation-Dev/dp/0735627185

Здесь есть некоторые детали: http://msdn.microsoft.com/en-us/library/ff359114.aspx

Еще один хороший способ обучения - посмотреть на расширения, созданные для работы с токенами не-SAML (например, SWT).Загрузите образцы здесь и найдите службы REST.

...