web.config конвертирует токен безопасности saml в принципала требований

У меня проблема с проверкой токена безопасности, я пытался использовать ваш код и другие, но когда он пытается проверить ST, у меня возникает ошибка: ID4175: эмитент токена безопасности не был распознан IssuerNameRegistry. Чтобы принимать токены безопасности от этого эмитента, настройте IssuerNameRegistry, чтобы он возвращал действительное имя для этого эмитента.

я не знаю горячей настройки веб-конфигурации, вы можете мне помочь?

это код:

//Microsoft.IdentityModel.Configuration.ServiceConfiguration serviceConfig = new Microsoft.IdentityModel.Configuration.ServiceConfiguration();

        // Now read the token and convert it to an IPrincipal
        System.IdentityModel.Tokens.SecurityToken theToken = null;
        ClaimsIdentityCollection claimsIdentity = null;
        using (XmlReader reader2 = XmlReader.Create(new StringReader(samlTokenXml)))
        {
            theToken = serviceConfig.SecurityTokenHandlers.ReadToken(reader2);
            claimsIdentity = serviceConfig.SecurityTokenHandlers.ValidateToken(theToken);
        }

        IPrincipal principal = new ClaimsPrincipal(claimsIdentity);

спасибо Пеппе


person user3177043    schedule 09.01.2014    source источник
comment
У меня нет глубоких знаний об andriod, поэтому я искал со своей стороны и нашел этот URL-адрес, который может помочь вам проверить его [stackoverflow .com/questions/5836395/   -  person Sri    schedule 09.01.2014
comment
Для будущих читателей ...... этот парень придумал умный способ отладки этой проблемы. social.msdn.microsoft.com/Forums/vstudio/en-US/   -  person granadaCoder    schedule 27.10.2014
comment
Если эта ссылка не работает, выполните поиск GT.Sateon.Web.SimpleIssuerRegistery в Интернете.   -  person granadaCoder    schedule 28.10.2014


Ответы (1)


WIF имеет класс ConfigurationBasedIssuerNameRegistry, в котором вы можете сопоставить отпечаток подписи с именем издателя (по вашему выбору).

Либо создайте этот класс программно и назначьте его ServiceConfiguration, либо сделайте это в web.config.

Вам нужно знать отпечаток эмитента, чтобы успешно проверить токен — спросите у того, кто отправит вам токен.

person leastprivilege    schedule 09.01.2014