我在登录页面上有以下代码.我正在使用它来设置客户的登录超时.在IE8中我遇到的问题是,如果用户打开另一个浏览器窗口,然后在第一个窗口中注销,当他们重新登录时,他们会在单个页面(每次)之后退回到登录状态.如果他们不打开另一个浏览器,一切都很好.
我发现了很多关于此的问题,但我发现唯一有效的解决方案是使用cookieless方法(URI).
我已经看过一些文章说要设置域名,我正在做,但这不起作用.此外,我已经尝试将authticket设置为持久性和非持久性.两者都没有区别.我已经看到,一旦auth cookie从文件夹中消失,我登录时就不会重新创建.
如果我打开第二个浏览器窗口作为"新会话"我没有任何问题.(这不实用,因为我们无法训练应用程序的每个用户以这种方式打开任何其他窗口.)
是否有任何修复,任何人都发现不涉及使用无cookie的URI方法?
int timeoutValue = 20 // This value is actually returned from a method;
FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(LoginControl.UserName, false, timeoutValue);
string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
authCookie.Domain = "my.domain";
authCookie.Expires = DateTime.Now.AddMinutes(timeoutValue);
HttpContext.Current.Response.Cookies.Add(authCookie);
Run Code Online (Sandbox Code Playgroud) 我有一个相当简单的ASP.Net网站,使用谷歌结账(我有一个图像按钮,PostBackUrl设置为谷歌地址传递隐藏字段的值),工作正常.
我一直在将这个应用程序移动到MVC,我不知道如何处理这个问题.我想过使用jQuery表单,但我不相信这会在这种情况下起作用,因为有时它们被重定向到谷歌页面.有没有人在asp.net MVC应用程序中使用谷歌结账?
我正在使用MVC4创建一个应用程序,该应用程序将使用Twitter授权用户,并允许他们从应用程序发送推文.我可以使用MVC4中的BuiltInOAuthClient.Twitter在没有问题的情况下对用户进行身份验证.http://www.asp.net/web-pages/tutorials/security/enabling-login-from-external-sites-in-an-aspnet-web-pages-site
我有访问令牌和oauth_verifier,但我也需要从Twitter获取acess_secret.https://dev.twitter.com/docs/auth/implementing-sign-twitter
我缺少的是如何将oauth_verifier传递回Twitter以使用OAuthWebSecurity获取访问密码.
再次,我可以使用Twitter登录确定,但我需要能够使用Twitter作为用户.我以前用TweetSharp库完成了这个,但是我想在这个项目上使用DotNetOpenAuth.
更新:我正在使用第一个链接中描述的OAuthWebSecurity类来管理身份验证.AuthConfig中的OAuthWebSecurity.RegisterClient需要DotNetOpenAuth.AspNet.IAuthenticationClient.您无法按照建议将其与TwitterConsumer类交换出来.
我可以使用第一个链接中描述的"内置"DotNetOpenAuth身份验证部分,或者我可以使用自定义代码进行完全授权,但我正在尝试找到两种方法.
我可以单独执行此操作,但随后会向用户显示两次Twitter对话框(一次登录,一次授权).我希望有一种方法可以使用已经连线的认证文件,它使用OAuthWebSecurity,但也可以使用授权文件.