Quel est le meilleur moyen de lire de manière programmatique les types de réclamations trouvés dans le Web.config ?
Réponses
Trop de publicités?Je peux me tromper, mais je ne pense pas que les types de réclamation répertoriés sous applicationService/claimTypeRequested dans le fichier web.config soient effectivement utilisés par WIF, ils ne sont utilisés que par FedUtil.exe lors de la génération du document de métadonnées de fédération de votre application. Par conséquent, je ne pense pas que WIF les expose quelque part sous FederatedAuthentication.ServiceConfiguration comme on pourrait s'y attendre.
Vous pouvez toujours ouvrir le web.config et les rechercher vous-même, comme ceci:
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);
@Andrew a raison - la liste dans le web.config est uniquement utilisée pour les métadonnées.
Si vous le souhaitez, vous pourriez Accéder aux revendications dans une page ASP.NET, scanner le web.config et comparer.