I have a config file with IdentityConfiguration
information in it which I am using for securing my WCF Services e.g.
<system.identityModel>
<identityConfiguration>
<securityTokenHandlers>
<securityTokenHandlerConfiguration>
<issuerNameRegistry type="System.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<trustedIssuers>
<add thumbprint="4459.....5E4" name="adfs" />
<add thumbprint="85BBD0....94A4C7" name="identityServer" />
</trustedIssuers>
</issuerNameRegistry>
</securityTokenHandlerConfiguration>
</securityTokenHandlers>
<audienceUris>
<add value="https://Iamauri/services"/>
</audienceUris>
</identityConfiguration>
</system.identityModel>
I would like to deserialize the above in to an IdentityConfiguration
object but I can't figure out how to go from a ConfigurationSection
representing the above information to a concrete type.
What I have so far:
var config = ConfigurationManager.OpenMappedExeConfiguration( new ExeConfigurationFileMap() { ExeConfigFilename = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile }, ConfigurationUserLevel.None);
var s = (SystemIdentityModelSection) config.GetSection("system.identityModel");
// TODO: Deserialize s to IdentityConfiguration