什么可能导致 ASP.NET 应用程序忘记用户?

2024-04-15

我有一个 ASP.NET 应用程序,它似乎在一段时间后忘记了用户已登录。

我正在使用会员资格提供商,当选择“记住”登录时,它会在会话期间记住它。我什至可以关闭浏览器,重新启动并返回,它仍然会登录。但过了一段时间它就会忘记,而且似乎在任何旧时间都会这样做。我曾经登录过,当我进入新页面时,它就被注销了。

其他奇怪的事情是:

  1. 在我的开发机器上,它会永远记住登录信息。即使 IIS 重新启动并重新编译后,它也会按预期记住我的登录信息。
  2. 我在同一台服务器上有另一个应用程序,它会永远记住登录信息。我比较了它们处理登录的方式,它们似乎是相同的。

这使我相信该问题与服务器有关,或者可能与应用程序中与登录和会员代码不直接相关的某些内容有关。我可以看什么?

编辑: 使用 Fiddler 查找了 cookie,它们似乎没问题。 今天创建的身份验证 cookie 将在 2 周后过期,这就是我的配置的设置方式: 过期=2010 年 9 月 6 日星期一 01:47:51 GMT

编辑: 问题似乎是应用程序池正在回收,并且身份验证 cookie 变得无效,因为随着机器密钥的更改,它无法再被读取。解决方案是将 machineKey 段添加到 web.config 并提供静态计算机密钥。


主要有两种可能性。

  1. Cookie 过期。如果 cookie 过期/消失,则您将被视为已注销。

  2. Cookie 失效。登录 cookie 根据 machineKey 值进行加密。如果不指定machineKey,则每次应用程序池启动(或回收)时都会重新生成一个新的machineKey。这意味着使用旧 machineKey 加密的任何登录 cookie 现在都无效,并且您将不会被视为已登录。

检查 IIS 中应用程序池的回收设置,并查看其是否与您未登录的时间相对应。

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

什么可能导致 ASP.NET 应用程序忘记用户? 的相关文章

  • 使用 ASP.NET Core Identity 将令牌保存在 Cookie 中

    我想在我的 身份 生成的 cookie 中保存一些内容 我目前正在使用文档中的默认身份设置 启动 cs services Configure
  • Nest.js Google Login(passport.js) 与 SPA 前端(React)

    在我的全栈项目 Nest js React 中 我使用护照谷歌实现了谷歌登录 如下所示 import Controller Get Req UseGuards from nestjs common import AppService fro
  • 我可以从 C# 转换为 asp.Net 以在线托管应用程序吗? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 是否可以将 C 应用程序转换为 as
  • ASP.NET:获取*真实*原始 URL

    在ASP NET中 有什么办法可以得到real原始网址 例如 如果用户浏览到 http example com mypage aspx 2F http example com mypage aspx 2F 我希望能够得到 http exam
  • 数据库中的编码 HTML 返回页面

    我在数据库中有以下编码 lt p gt Content lt span style quot color ffffff quot gt lt span style quot background color ff0000 quot gt 1
  • SignalR - HubContext 和 Hub.Context

    我是 signalR 的新手 正在阅读 API 并使用它 对 Hub 及其上下文有点困惑 那是 Hub Context is not HubContext HubContext我可以从GlobalHost ConnectionManager
  • ASP.NET 中的网络凭据错误

    我正在尝试使用 NetworkCredential 类通过 ASP NET 访问网页 但是我不断收到以下消息的异常System Security Cryptography CryptographicException The handle
  • 是否有适用于 Amazon 产品 API 的最新 C# 示例?

    我正在尝试创建一个与亚马逊的产品 API 交互的小型应用程序 获取文章的价格等 不幸的是 到目前为止我发现的与 Amazon WCF 服务交互的所有 C 示例都已过时 我知道 Amazon 决定每个服务调用都必须使用个人 accessKey
  • 如何在 ASP.NET 中将下拉列表与字符串数组绑定?

    我可以通过这样做将下拉列表与字符串数组绑定 不确定这是否是正确的实现方法 string items 111 222 333 ddlSearch DataSource items ddlSearch DataBind 然而 我真正想要的是 当
  • 使用 PLINQ 扩展时是否会传输线程标识?

    我正在使用 AsParallel ForAll 在 ASP NET 请求上下文中并行枚举集合 枚举方法依赖于System Threading Thread CurrentPrincipal 我是否可以依赖用于将 System Threadi
  • ASP.NET 中的大数组支持

    最近有了 4 5 NET 支持 用户可以为一个对象分配超过 2 GB 的内存 为了做到这一点 用户可以在 app config 文件中将 gcAllowVeryLargeObjects 设置为 true 一切都会正常工作 但是我很难找到 A
  • 使用 OleDbConnection 读取使用 Open xml SDk 创建的 xlsx 文件

    我使用 Open Xml SDK 标准创建了 xlsx 文件 在 Excel 中打开它时 一切都很完美 我的问题是我无法使用 OleDbConnection 打开该创建的文件 但其他未创建的 xlsx 文件 OleDB 也可以打开 将很高兴
  • 使 Web.config 转换在本地工作

    我想让 web config 转换在本地工作 但显然这些转换仅在进行部署时发生 有谁知道一种方法来运行 msbuild 目标 TransformWebConfig 而不需要经历 重建 过程 并指定和输出目录来吐出转换后的 web confi
  • 获取 ASP.NET 网站的 IIS 站点名称

    在我的 ASP NET Web 应用程序中 我想查找在 IIS 中创建它时指定的名称 该名称对于服务器来说是唯一的 我对网站的域名不感兴趣 而是对 IIS 中为该网站指定的实际名称感兴趣 我需要能够在 IIS6 和 7 上可靠地完成此操作
  • 使用 Windows 身份验证的 User.Identity.Name

    我的标题中有一个非常简单的部分视图 称为 AccountInfoPanel 它只有一行 Welcome HttpContext Current User Identity Name 在我的 Web Config 中我有
  • DELETE 语句与 ASP.NET 动态数据中的 REFERENCE 约束冲突

    我有两个表 Application User 和 Application User Access Application User Access 表与 Application User 表具有外键约束 当我删除 Application Us
  • 通过 web.config 设置拒绝目录中的所有文件

    作为测试 我尝试使用 web config 通过以下方式控制安全性 拒绝访问目录中除特定文件之外的所有文件 允许访问目录中除特定文件之外的所有文件 所以我设置 web config 如下
  • 如何在 .net 中为 Google 云存储签名 url

    我想知道如何使用 net中的谷歌云存储类生成signurl 我已经根据要求创建了字符串 GET 1388534400 bucket objectname 但我现在想用 p12 密钥签署这个 url 然后想让它变得 url 友好 该库没有显示
  • ASP.NET 图表控件根据 X 轴标签上的 int 值设置月份名称

    我想用相应的月份名称替换图表 X 轴上的数字 1 2 3 这是我的实际图表 On the DataView填充的Series我有 MONTH 列 其中包含从 1 到 12 的值 我还必须手动设置Minimum and Maximum值设置为
  • 使用 UpdatePanel 的 ASP.NET AJAX

    从概念上讲 我对 AJAX 的理解是异步发送到服务器的请求 也称为并行 当我使用多个UpdatePanels在页面上并触发多个异步回发 例如通过使用按钮 我注意到第二个请求在第一个请求完成之前才开始 但是当我使用 JQuery ajax 并

随机推荐

  • spring-integration并行分割路由聚合流由于单向MessageHandler而失败

    我想通过拆分项目 将每个项目路由到适当的网关并聚合结果来并行处理项目列表 但是 我的应用程序无法启动 出现以下错误 BeanCreationException The currentComponent is a one way Messag
  • 将正文添加到与 azure 服务 mgmt api 一起使用的 HttpWebRequest

    我将如何添加到 HttpWebRequest 的正文 身体需要由以下部分组成
  • Javascript 单击打开和关闭菜单,不使用 jquery

    我想要一个菜单 可以单击打开 然后单击关闭 与悬停菜单类似 但需要单击 打开和单击关闭 我有三个可见的列表项 下面有子菜单 这些是用 css display none 隐藏的 我可以让它们显示 使用关键字 this 以及一个用于检查是否有
  • 如何检查 Perl 中打开(文件)是否成功?

    下面的代码 不太像 Perl 风格 usr bin perl if e mydir print directory doesn t exist n open my fh gt mydir file txt if fh print file
  • 设置 npm 注册表 URL 的用户名和密码

    我正在尝试使用 npm 从 url 安装软件包 http 主机 80 http host 80 我做了以下事情 npm 配置设置 strict ssl false npm 配置设置注册表 npm 代理http 主机 端口 http host
  • JavaScript - 控制 document.write 的插入点

    我想创建一个运行第三方脚本的页面 其中包括document write当 DOM 已经完全加载之后 我的页面不是 XHTML 我的问题是 document write 正在覆盖我自己的页面 这就是 DOM 加载后它所做的事情 我尝试重写 d
  • 使用谷歌地图 API iOS 进行反向地理编码

    我正在使用以下代码进行反向地理编码 void locationManager CLLocationManager manager didUpdateToLocation CLLocation newLocation fromLocation
  • Facebook API 人物搜索按国家/地区过滤

    我正在尝试使用 Facebook API Graph API 或 FQL 以有效者为准 搜索人员 到目前为止 它工作得很好 但我无法按国家或语言对其进行过滤 我目前正在检索此网址 https graph facebook com searc
  • 无法分配给变量,因为它是借用的

    我试图在循环中重新分配变量 但我不断遇到cannot assign to cur node because it is borrowed 下面为了简单起见我注释掉了循环 这是同样的问题 我该如何处理这个问题 fn naive largest
  • Java 未知格式转换异常

    下面的代码引发了这个错误 我不知道为什么 将 String format 输出到str变量 但我不知道它出了什么问题 Exception in thread main java util UnknownFormatConversionExc
  • Android 中的屏幕截图

    我想开发一个应用程序来截取 android 屏幕的屏幕截图 有人知道怎么做吗 这类似于 koushik duttas 屏幕截图 但是没有使用 root 并且有人有 koushik dutta 屏幕截图应用程序正在运行 不适合我 请让我知道
  • Kubernetes Dashboard 在整个网站上都是“被禁止的”

    我在 Kubernetes 的仪表板网站上到处都看到 被禁止 见图 重现 通过站点而不是从 shell 创建 Google Kubernetes 集群 选择 Kubernetes 版本 1 8 6 通过连接按钮打开外壳 gcloud con
  • Autobahn websockets Android 演示崩溃

    我是 websockets 的新手 我一直在使用 Autobahn websocket 来制作一个更大的项目 它在 python 和 js 版本中工作得很好 但我在 Android API 上遇到了麻烦 我正在遵循中的教程http www
  • 取消任务关闭窗口。如何检测任务是否同步返回?

    我遵循一种相当常见的模式 使用异步对话框方法确认 取消主窗口关闭 但是 在我调用来呈现对话框的异步任务中 在某些情况下我会立即返回布尔值 而不是等待对话框任务方法的返回 在这些情况下会抛出异常 System InvalidOperation
  • WPF/XAML:如何使 TextBlock 中的所有文本大写?

    我希望 TextBlock 中的所有字符都以大写形式显示
  • 无法使用 iframe 标签在 WebView 中播放视频?

    我正在使用以下数据来显示WebView 这些是 HTML 标签以及 指的是视频的 iframe 现在的问题是 当我点击它时 它显示播放按钮 但无法播放视频 我可以在里面播放这个视频吗WebView or not lt p gt lt p g
  • 反汇编中演示 volatile 的示例 C 代码?

    演示反汇编中易失性和非易失性之间差异的简短说明性 C 程序是什么 ie int main volatile int x vs int main int x 我们可以用什么来代替两者 这样生成的代码就不同了 例如 x 0 If x is no
  • 从原始 r 和 s 创建 DER 格式的 ECDSA 签名

    我有一个原始 ECDSA 签名 R 和 S 值 我需要 DER 编码版本的签名 有没有一种直接的方法可以使用 c 接口在 openssl 中执行此操作 我目前的尝试是使用i2d ECDSA SIG const ECDSA SIG sig u
  • 单选按钮选中更改事件触发两次

    请阅读我的问题 它不是重复的问题 我在 Windows 窗体上有三个单选按钮 所有这些按钮都具有关联的常见 CheckedChanged 事件 当我单击任何这些单选按钮时 它会触发 CheckedChanged 事件两次 这是我的代码 pr
  • 什么可能导致 ASP.NET 应用程序忘记用户?

    我有一个 ASP NET 应用程序 它似乎在一段时间后忘记了用户已登录 我正在使用会员资格提供商 当选择 记住 登录时 它会在会话期间记住它 我什至可以关闭浏览器 重新启动并返回 它仍然会登录 但过了一段时间它就会忘记 而且似乎在任何旧时间