Windows Identity Foundation - программно считывать типы заявок из web.config - PullRequest
2 голосов
/ 09 марта 2012

Как лучше всего программно прочитать типы утверждений, найденные в файле Web.config?

Ответы [ 2 ]

3 голосов
/ 11 марта 2012

Возможно, я ошибаюсь, но я не думаю, что типы утверждений, перечисленные в applicationService / demandTypeRequested в web.config, фактически используются WIF, они используются только FedUtil.exe при создании документа метаданных федерации вашего приложения. Поэтому я не думаю, что WIF предоставляет их где-либо под FederatedAuthentication.ServiceConfiguration, как и следовало ожидать.

Вы всегда можете просто взломать файл web.config и отсканировать их самостоятельно, например:

XmlDocument doc = new XmlDocument();
doc.Load(WebConfigurationManager.OpenWebConfiguration("~").FilePath);
XmlNamespaceManager docNs = new XmlNamespaceManager(doc.NameTable);
docNs.AddNamespace("fed", doc.DocumentElement.NamespaceURI);
XmlNodeList claimsNodes = doc.SelectNodes(@"/fed:configuration/fed:microsoft.identityModel/fed:service[count(@name)=0 or @name='']/fed:applicationService/fed:claimTypeRequired/fed:claimType", docNs);
1 голос
/ 11 марта 2012

@ Эндрю прав: список в web.config используется только для метаданных.

Если хотите, вы можете получить доступ к утверждениям на странице ASP.NET , отсканировать файл web.config и сравнить.

...