2016-03-17 4 views
0

Я пытаюсь перенести из FederationAuthenticationModule (WS FAM?) В промежуточное ПО OWIN WsFederationAuthentication. Пока что так хорошо, за исключением того, что для некоторых клиентов у нас есть только отпечаток их сертификата подписи.Создать SecurityKey от подписания сертификата отпечатка пальца

Для WS FAM этого было достаточно, так как ConfigurationBasedIssuerNameRegistry.AddTrustedIssuer() нужен только отпечаток сертификата подписи.

Для промежуточного программного обеспечения OWIN необходим SecurityKey -распакованный тип в WsFederationConfiguration.SigningKeys-коллекциях. Хотя я могу создать SecurityKey из сертификата, я не могу найти способ создать его только из отпечатка пальца.

Любые идеи о том, как я могу создать SecurityKey из отпечатка сертификата или любым другим способом получить промежуточное программное обеспечение WsFederationAuthentication, работающее только с отпечатками?

ответ

2

AFAIK, самый простой способ использования WIF с owin заключается в использовании метаданных федерации (который живет в FederationMetadata/2007-06/FederationMetadata.xml). Тогда вам не нужно ничего настраивать. Это объясняется здесь: http://blog.baslijten.com/configure-claims-based-web-applications-using-owin-wsfederation-middleware/. Предпосылкой является, конечно, то, что ваш STS публикует значимый документ FederationMetaData. Хорошим преимуществом является то, что ваши открытые ключи, необходимые для проверки, автоматически подбираются вашим приложением (и их обновление выполняется без проблем). Это не ответ на ваш вопрос, но это ИМХО намного проще, чем подход, который вы принимаете.

+0

В зависимости от того, как они настроили это и в используемом формате токена, вы могли бы извлечь сертификаты из токена безопасности. Вы должны просто знать, что если вы сделаете это автоматически для всех токенов (например, добавьте сертификат, если они еще не известны), вы создадите отверстие для безопасности, поскольку любой может отправить вам действительный подписанный токен SAML2 (или токен JWT, если на то пошло). Если вы сделаете это самостоятельно контролируемым образом («теперь я собираюсь получить открытый ключ этого поставщика удостоверений, который я знаю и которому доверяю»), тогда это может помочь вам. –

+0

Да, я говорил о ручной добыче в определенный момент времени. –

Смежные вопросы