4.0 和 2.0 应用程序之间的 Asp.Net 表单身份验证 SSO

2024-01-27

4.0 框架应用程序和 2.0 框架应用程序之间的单点登录似乎已被破坏。

我有一个基于 asp.net Framework 2.0 构建的旧应用程序和一个基于 asp.net Framework 4.0 构建的新应用程序,我正在尝试在两者之间配置 SSO。

我已经完成了设置相同机器密钥的所有正确配置,具有相同的validationKey、decryptionKey、验证和解密属性以及相同的身份验证名称、域、保护和路径属性。

奇怪的是,这个配置在我的本地开发机器上运行良好: - Windows 7 旗舰版(Service Pack 1) - 在应用程序池中运行的 2.0 应用程序设置为 v2.0 集成 - 在应用程序池中运行的 4.0 应用程序设置为 v4.0 集成

但是,在部署服务器 Windows 事件日志中,我收到“请求的表单身份验证失败。原因:提供的票证无效。”: - Windows Server 2008 R2 标准版(Service Pack 1) - 在应用程序池中运行的 2.0 应用程序设置为 v2.0 集成 - 在应用程序池中运行的 4.0 应用程序设置为 v4.0 集成

我已经检查、重新检查、再重新检查部署计算机上的计算机密钥和身份验证配置,因此我确信这不是问题所在。

另外,只是为了论证,在部署服务器上,我什至尝试设置这两个应用程序形式保护=“无”只是为了看看加密是否是问题所在,结果仍然相同。

此外,在部署服务器上,配置了相同 SSO 设置的所有其他 v2.0 应用程序都没有问题。即使那些运行在不同的应用程序池中。简而言之,v2.0 到 v2.0 可以工作,而 v4.0 到 v2.0 则令人作呕。

有什么建议么?


经过几天的绝望,这行得通:在 4.0 web.config 配置标签中

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

4.0 和 2.0 应用程序之间的 Asp.Net 表单身份验证 SSO 的相关文章

随机推荐

  • 使用 systemjs 在 typescript 中导入位于应用程序文件夹外部的共享服务

    我有两个 Angular 2 应用程序 结构如下 app 应用程序1 应用程序2 共享 在我的 Angular 2 组件 用打字稿编写 中 我导入了几个模块 位于同一文件夹中 没有任何问题 从 test1 service 导入 TestSe
  • 为什么在检查 $pristine 或 $setDirty() 时在 ng-include 中形成 undefined ?

    当我单击 检查 按钮时 以下代码抛出错误 TypeError 无法读取未定义的属性 pristine app controller MainCtrl function scope other stuff controller Ctrl2 f
  • 如何升级Python venv版本[重复]

    这个问题在这里已经有答案了 我安装了Python3 10 并且在我一直在从事的项目中有一个venv 我不明白如何轻松升级 我的背景主要是 Node 和 JS 这肯定更简单 更容易更改版本 我只是想创建一个新的 venv 但这不起作用 mpa
  • 如何获取 MySQL 中特定行的偏移量?

    我正在尝试创建一个图像数据库 该数据库不保存一致的 ID 记录 例如 它可能是 1 2 6 7 12 但正如您所看到的 只有 5 行 在表中我有 fileid 和 filename 我创建了一个 PHP 脚本 当我给出文件 ID 时 它会显
  • java.lang.ClassCastException:org.hibernate.hql.ast.tree.SqlNode 无法转换为 org.hibernate.hql.ast.tree.FromReferenceNode

    我正在尝试用以下内容更新记录HQL查询 但我得到了CastException 如果有人能帮助我 我将非常感激 我已经在互联网上检查了一段时间 但找不到任何有关此的信息 如果您有关于此例外的更多信息 请告诉我 返回的完整错误消息 Except
  • MySQL LIKE + php sprintf

    test sprintf SELECT FROM table WHERE text LIKE s mysql real escape string test echo test output SELECT FROM table WHERE
  • 从各种 JSON 路径创建 JSON 对象

    我们需要从提供的各种 JSONPaths 创建 JSON 对象 例如 下面是要创建的新 JSON 对象中的两个路径以及该路径的值 student firstName Abc student subject physics mark 100
  • 如何使用 flutter cloud_firestore 包传递 firestore 身份验证令牌

    我在用Firebase 身份验证 REST api进行身份验证 这部分工作正常 因为我可以登录 注册用户 并且我可以获得uid和授权token back 当尝试写入 Cloud Firestore 时 如果我将 Cloud Firestor
  • pytest 装置和 confest.py 模块可以跨包共享吗?

    假设我有packageA它提供了一个类usefulClass pytest 固定装置test stuff py模块 并测试配置conftest py模块 此外 假设我有packageBand packageC两者都导入packageA 通过
  • Azure Devops:如何使用 if 语句设置组变量

    我正在尝试根据管道中存在的一个变量来设置变量组 yaml 看起来像这样 但是当我运行管道时出现以下错误 如果我删除 组 QA or 组 PROD 管道运行没有任何问题 我究竟做错了什么 这是略有不同的解决方案 但您可以实现您的目标 如果我理
  • 在 Google App Engine 上使用 Python 进行开发时,应该使用什么模拟对象框架?

    我正在使用 Python 和 Django 如果有的话 在 Google App Engine 上开发一个应用程序 我应该帮助哪个模拟对象框架来协助单元测试 我看到有很多独立的项目 即http python mock sourceforge
  • 如何模拟返回 Task> 和 Task> 的方法?

    我正在尝试设置一个单元测试初始值设定项 以 Moq 形式 其中正在模拟接口方法 public interface IRepository Task
  • 管理实验中的多个任意逻辑模拟

    我们正在 AnyLogic 7 下开发 ABM 并且我们希望通过单个实验进行多个模拟 将为每次模拟运行设置不同的参数 以便为一小组标准场景生成结果 我们有一个无需按 运行 即可自动启动的实验 随后按下 运行 会增加实验计数器并重新运行模型
  • 为什么 Nettle 2.4 的 `configure` 找不到 GMP 5.0.2?

    我正在尝试建立GnuTLS http www gnu org software gnutls 在 Mac OS X 10 5 Leopard 服务器上 是的 我知道 它有点过时 但这就是该服务器目前正在运行的 并且遇到了构建问题Nettle
  • AngularJS 中的 ng-app V/S data-ng-app

    在AngularJS中使用时ng app ng app在文档中找到的将用于定义根元素以作为应用程序自动引导 在某些应用程序中 它被用作data ng app 以下两个声明是否有任何区别 如果是 则什么 如果否 则哪一个是重要的 为什么 1
  • Java线程睡眠与中断异常

    为什么睡眠线程需要 try catch 来捕获中断异常 为什么睡眠甚至会发出中断异常错误 这是我在java编程中真正想了解的两个问题 我一直在通过谷歌搜索 但仍然没有找到明确的解释来解释为什么会发生这两件事 An InterruptedEx
  • 无符号负基元?

    在 C 中我们可以创建原语unsigned 但他们总是积极的 还有一种方法可以生成无符号负变量吗 我知道 无符号 这个词的意思是 没有符号 所以也不是减号 但我认为C 必须提供它 No unsigned只能包含非负数 如果您需要一个仅表示负
  • 如何获取机器的mac地址

    我想要获取机器的 MAC 地址 但是下面编写的代码仅在 Internet 连接到我的机器时显示 MAC 地址 其他它将返回 null 我使用的是 Windows 7 import java net InetAddress import ja
  • 替换 hive 中的空字符串 - Nvl 和 COALESCE 已尝试

    如何用其他值替换空字符串 长度 0 已使用Nvl and COALESCE但两者都不会替换为替换值 因为该值不为空 我可以用case语句 但寻找内置函数 如果有 因为你有空字符串所以当我们使用合并或 nvl仅当我们有空值在数据中 这些功能不
  • 4.0 和 2.0 应用程序之间的 Asp.Net 表单身份验证 SSO

    4 0 框架应用程序和 2 0 框架应用程序之间的单点登录似乎已被破坏 我有一个基于 asp net Framework 2 0 构建的旧应用程序和一个基于 asp net Framework 4 0 构建的新应用程序 我正在尝试在两者之间