如何将 federationConfiguration 从 web.config 移至某个自定义配置文件并通过代码动态加载

2024-04-14

我的配置在 web.config 中,并且工作正常。

  <configuration>
  <system.identityModel.services>
    <federationConfiguration>
....
 </federationConfiguration>
  </system.identityModel.services>
</configuration>

如何将其从 web.config 移至自定义配置文件并从代码加载?

我想使用此配置的相同结构,这样如果我必须更改此配置文件,则不必更改代码中的任何内容。


您可以从 global.asax 中访问 WIF 事件

void Application_Start(object sender, EventArgs e) 
{
    // Code that runs on application startup
    FederatedAuthentication.FederationConfigurationCreated += FederatedAuthenticationOnFederationConfigurationCreated;

}

在该处理程序中,您可以在运行时调整配置。这里有一些代码可以给你一个想法。最终代码会更复杂。

   private void FederatedAuthenticationOnFederationConfigurationCreated(object sender, FederationConfigurationCreatedEventArgs args)
    {
        var identityConfiguration = new IdentityConfiguration(loadConfig:false);
        identityConfiguration.SecurityTokenHandlers.Clear();
        //...
        identityConfiguration.SecurityTokenHandlers.Add(new Saml2SecurityTokenHandler());
        //...
        var configuration = new FederationConfiguration(loadConfig: false)
        {
            CookieHandler = new ChunkedCookieHandler(),
            //...
            IdentityConfiguration = identityConfiguration
        };
        args.FederationConfiguration = configuration;
    }

如果您对赋予哪个对象什么值有任何疑问,您可以随时暂时切换回配置并通过同一事件检查运行时值。不要低估 WIF 开箱即用提供的配置的复杂性和丰富性。
一般来说,您可能需要“代码配置”和“web.config 配置”的混合,因为 web.config 仍然用于配置配置的某些更多可变部分,而代码用于更不可更改的部分......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 federationConfiguration 从 web.config 移至某个自定义配置文件并通过代码动态加载 的相关文章

随机推荐

  • 使用 jQuery 获取所选选项 id

    我正在尝试使用 jQuery 根据所选选项发出 ajax 请求 有没有一种简单的方法来检索所选的选项 ID 例如 id2 使用 jQuery
  • 删除图像c#的圆形透明部分

    我正在位图上创建一个圆圈 但想在其中有一个洞 经过半个小时的搜索 我只找到了将图像裁剪为圆形的方法 困难的是 中间的孔应该像图像的其余部分一样透明 This https i stack imgur com Avdrv png是基础图像并且黄
  • JavaFX SimpleObjectProperty 与 SimpleTProperty

    使用有什么区别 简单字符串属性 vs SimpleObjectProperty or 简单整数属性 vs SimpleObjectProperty 除了返回包装器而不是原始类型之外 无论如何它都可以自动转换 API 为特定类型添加了附加功能
  • 如何设置 scons 系统包含路径

    使用 scons 我可以轻松设置我的包含路径 env Append CPPPATH foo 这传递了标志 Ifoo to gcc 不过 我正在尝试在启用大量警告的情况下进行编译 特别是与 env Append CPPFLAGS Werror
  • 谷歌地图 v3 重复标记 - 使用数组来管理标记但仍然得到重复项

    我不明白 我有一个数组来管理我添加到地图中的标记 当我更新集合时 即使我的标记数组中仍然只有正确数量的标记 标记也会重复 我确信这对我来说是一个非常简单和愚蠢的错误 但我没有看到它 m viewMarkers function data a
  • getUidTxBytes(int uid) 在 android 6.0 中始终返回 0

    我正在尝试获取所有应用程序的网络流量统计信息 我只是打印设备中每个应用程序的总网络流量 该代码在 android 4 4 和 5 1 设备中运行良好 但在 android 6 0 设备中它始终为所有应用程序返回 0 任何人都可以告诉我为什么
  • 从父级构建 Maven 模块,无需父级引用

    我已经为几个模块建立了一个反应器构建 效果很好 我的子模块没有引用父 pom xml 当我将子模块用于多个产品时 存在多个父 pom 因此无论如何我都无法将父引用放在子模块中 现在我希望父 pom 能够更改子模块中的一些设置 在不引用父 p
  • Ruby:无法解析在 OS X 中导出为 CSV 的 Excel 文件

    我正在使用 Ruby 的 CSV 库来解析一些 CSV 我有一个看似格式良好的 CSV 文件 是通过将 Excel 文件导出为 CSV 来创建的 However CSV open filename r 导致CSV IllegalFormat
  • 如何在PHP中显示上传文件后的结果

    我有一个将视频上传到服务器的脚本 一切正常 但在视频上传到服务器完成后出现问题 它以数组形式显示 uploads 文件夹中所有上传的文件 我只想要我刚刚上传的文件的结果 它不显示以前的文件 我需要 ffmpeg 来提高视频质量 索引 php
  • 让soapUI在附件选项卡中显示附件以进行响应

    我有一个通过 HTTP GET 返回文件的 REST 服务 我已经在响应中 在服务器上 设置了这些标头 并且下载在任何浏览器中都能完美运行 Content Length Content Type Content Disposition 然而
  • 阅读器关闭时尝试读取无效

    我正在处理 C 和 MySql 请求 我正在尝试检索数据库中的数据 但出现此错误消息 阅读器关闭时尝试读取无效 感谢你们的帮助 我有这个功能 public MySqlDataReader GetValueFromTable string t
  • HTML/CSS - 将元素宽度扩展到可见区域(超出包含元素的宽度)

    我正在生成一个网页 其中有一个带有绿色背景的 h2 标记了一个表格 该表格可以有任意数量的列 我希望 h2 元素水平延伸至用户可以滚动的范围 以便表格上方始终有一个绿色条 我想要实现的效果是一个绿色条 至少跨越表格的宽度 因此无论用户滚动多
  • foreignKey 字段不会出现在 Django 管理站点中

    模型上的外键未出现在 Django 管理站点中 这与是否在 ModelAdmin 实例中显式指定该字段无关 fields title field that does not show up 我意识到有很多变量可能导致这种行为 class A
  • Git 挑选文件,从目录 A 到目录 B

    我有一个项目 一直在进行一些实验性的改变 到目录 A 中的子项目 但是 在项目的 master 分支中 子项目已移动到一个单独的目录 即目录 B 我有大约 10 个提交 我想有效地将 其挑选到 master 中 但是我如何告诉 git 将旧
  • 对表的行和列求和

    我有一个表格 当且仅当每行的总和必须等于 100 时才允许提交表格 每列的总和必须 This is the old scenario each row and each column must be 100 演示代码
  • 当 DN 包含“/”时,“new DirectoryEntry(distinguishedName as string)”不起作用

    我有以下代码将可分辨名称转换为 sAMAccountName Dim de As New DirectoryEntry LDAP stringDN Return CType de Properties samaccountname 0 St
  • ADFS/SAML2.0 - 如何通过联合元数据设置声明规则?

    我正在尝试针对 Web 应用程序的 Windows ADFS 实施 SAML 2 0 身份验证 到目前为止 我通过手动配置依赖方信任和分配的声明规则 成功地从 ADFS 进行了身份验证并获取了我需要的内容 现在 我想为我的应用程序提供联合元
  • 在 s3 + cloudfront 和 Rails 3.1 中使用 CDN 和 CarrierWave + Fog

    我在用着fog with 载波在我的网站上 但图像加载速度非常非常慢 然后我想用CDN加速图像的加载 我已按照本教程为图像创建 CDN http maketecheasier com configure amazon s3 as a con
  • Flutter 遇到 http 401 时重定向

    我现在有这样的导航 main gt app gt account gt address 现在我遇到问题 如果用户获取地址并且他们的会话过期 我如何将他们重定向回登录页面 对 flutter 还很陌生 找不到如何将未经身份验证的状态发送到的解
  • 如何将 federationConfiguration 从 web.config 移至某个自定义配置文件并通过代码动态加载

    我的配置在 web config 中 并且工作正常