问题标签 [formsauthentication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
2877 浏览

asp.net - 除了关闭 cookie 之外,还有什么可能导致 ASP.NET FormsAuthentication Cookie 问题?

人们报告在登录我们的 ASP.NET 站点之一时遇到问题。当我检查 IIS 日志时,他们的浏览器在登录后似乎没有缓存 FormsAuthentication cookie。

我不认为它像“用户已将浏览器设置为不接受 cookie”那么简单,因为:
a) 如果 cookie 通常不适用于他们的浏览器,他们永远不会在这个过程中达到他们所拥有的程度- 例如,ASP.NET 会话 cookie 似乎工作正常。
b) 这些用户通常不会知道如何关闭 cookie。

所以我认为它必须是别的东西。除了用户简单地将浏览器设置为拒绝 cookie之外,还有哪些问题会导致 ASP.NET FormsAuthentication cookie 停止工作?

编辑:例如这个对另一个问题的回答表明,有时 FormsAuthentication Cookie 会因为太大而被丢弃 - 也许有人可以对此有所了解?

编辑:我们其中一个站点的 FormsAuthentication cookie 是 233 字节 - 是不是有点大?可以做得更小吗?也许这会有所帮助。

编辑:我注意到代码使用FormsAuthentication.SetAuthCookie()Response.Redirect()不是FormsAuthentication.RedirectFromLoginPage()- 这可能是相关的吗?

0 投票
3 回答
4777 浏览

asp.net - FormsAuthentication 在 .NET 3.5 中回发后不保留 UserData 字段

FormsAuthenticationTicket从头开始创建了一个,但发现在以后检索它时,它UserData并没有回来。这是使用的代码:

但是,当我在 next 上重新阅读时Request,我发现该UserData字段现在是空的:

有任何想法吗?

0 投票
1 回答
919 浏览

asp.net-mvc - ASP.NET MVC 表单身份验证记住我

我有一个 ASP.NET MVC2 应用程序,并且我正在使用 FormsAuthentication 来管理 Auth Cookie。当 cookie 过期并且页面可以访问时,我需要在字段中显示用户名并选中记住我。一旦 cookie 过期并且我无权访问它,我该如何执行此操作?

0 投票
1 回答
774 浏览

asp.net - FormsAuthentication:如何为特定的子目录/MVC 控制器指定不同的 cookie 名称?

我正在使用 FormsAuthentication(带有 cookie)进行用户身份验证,使用默认的 cookie 名称(“.ASPXAUTH”)。

我需要的是“/Admin/”虚拟目录(由 ASP.NET MVC 控制器“AdminController”支持)的不同登录系统......好像“/Admin/”目录是另一个 Web 应用程序,但没有在我的解决方案中创建另一个 Web 项目。

如何在运行时自定义 FormsAuthentication 使用的 cookie 名称?FormsAuthentication.FormsCookieName 是只读的(并且是静态的......),并且只能在 web.config 中自定义一次......

我应该创建一个自定义 FormsAuthenticationModule 吗?

像下面这样的控制器过滤器可能很棒:

0 投票
1 回答
769 浏览

asp.net - Exception ThreadAbortException on RedirectFromLoginPage

I'm having some trouble when people try to log on my system in IE8. Before tomorrow everything is fine, but now when they try to log on the line who call RedirectFromLoginPage method throws ThreadAbortException exception.

After some investigating i found that if i change createPersistentCookie to false they can log normally.

There is anyone to help me with some ideias why this is occurring ?

Thanks everyone and sorry my english !!

0 投票
2 回答
1849 浏览

asp.net - 用户更改密码后,旧密码和新密码都可以使用

我有一个使用 Forms Authentication 和 ActiveDirectoryMembershipProvider 的 ASP.Net 4.0 应用程序。它针对在 Windows Server 2008 R2 上运行的 Active Directory 进行身份验证。

我使用 ChangePassword 控件来更改密码。

当用户更改密码时,他可以使用旧密码登录一段时间。我的客户认为这是应用程序的安全问题。有什么方法可以确保旧密码在用户更改后不起作用?

编辑:另外,如果我在网络服务器上执行 iisreset,旧密码将停止工作。密码必须缓存在 Web 应用程序的某处

0 投票
1 回答
3239 浏览

c# - FormsAuthentication.SignOut() 使用 javascript

有没有人请帮我解决这个问题,在我的 asp.net 应用程序中,我正在使用 FormsAuthentication.SignOut(); 注销应用程序的方法,但我有一个奇怪的要求,我必须使用 Javascript 函数来实现 FormsAuthentication.SignOut()。可能吗?如果是,请通过提供示例代码来帮助我实现此要求。

提前致谢

0 投票
1 回答
222 浏览

c# - 从 ActiveDirectoryMembershipProvider 继承的问题

我从 ValidateUser ActiveDirectoryMembershipProvider 直接继承称为 CustomActiveDirectoryMembershipProvider。

唯一被覆盖的方法是 ValidateUser。

当使用自定义提供程序时,一切正常,除了我们找不到任何用户。GetAllUsers 有效,但 FindUsersByName 或 EMail 无效。

当我们切换到具有相同设置的原始提供商时,一切都开始工作。

有人遇到这个问题并解决了吗?

0 投票
2 回答
1243 浏览

asp.net - asp.net 使用 requireSSL 并且仍然能够检查用户是否在非 SSL 页面上进行了身份验证

我有一个混合 SSL 的 web 应用程序(asp.net 3.5)。所有与帐户相关的页面均通过 SSL 提供。大多数其他页面都是通过非 SSL 交付的。为了在 HTTPS 和 HTTP 之间自动切换,我使用了这个组件。最近有一个关于在非安全 Wifi 网络上劫持用户会话的能力的新闻。这应该可以通过捕获通过非 SSL 连接传输的 Cookie 来实现。

这促使我检查了我在此 Web 应用程序中的安全选择。我(再次)从 MSDN 中获取了这篇文章,并在我的 Formsauthentication 上尝试了requireSSL=true属性。在我启动 Web 应用程序之前,我意识到我的 User.Identity 在非 SSL 页面上将为空,因为包含此信息的 cookie 不会从 Web 浏览器发送或发送到 Web 浏览器。

我需要一种通过 SSL 连接对用户进行身份验证的机制......并记住此身份验证信息,即使在非 SSL 页面上也是如此。

在搜索 SO 时,我发现了这篇文章。在我看来,这是一个很好的解决方案。但是,我想知道在Sessionstate中存储登录信息是否可以找到解决方案?我正在考虑在 Global.asax 中捕获 Application_AuthenticateRequest。检查连接是否安全并检查 authcookie 或 Session。我还不知道我将如何实现这一点。也许你可以和我一起思考这个?

0 投票
2 回答
754 浏览

asp.net - 如何判断webservice调用是否来自Forms授权页面?

我有一个 asp.net Web 应用程序,在其中我使用几个我们的服务来服务几个 ajax 请求。问题是如何确定对应的调用是否来自我服务过的页面。我在我的页面中使用表单身份验证。有什么方法可以授权用户通过相同的表单身份验证调用 weservice。