c#-在实时环境中启用cookie上的SSL,在开发环境中启用非SSL
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#-在实时环境中启用cookie上的SSL,在开发环境中启用非SSL,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1641字,纯文字阅读大概需要3分钟。
内容图文
![c#-在实时环境中启用cookie上的SSL,在开发环境中启用非SSL](/upload/InfoBanner/zyjiaocheng/652/fe766f7cc3f449e3b48124c7e76da399.jpg)
基本上,我的站点中有一个要求,那就是必须保护所有cookie.我正在尝试保护FormsAuthentication cookie,但是,我希望这样做,以便不必在本地开发站点上设置SSL,但是实时站点仍将保护cookie.
此实时/开发状态存储在配置xml文件中.该文件包含站点运行所在的每台计算机的设置.可以通过Config.IsSecure访问
if (Config.IsSecure)
{
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, login.Username, DateTime.Now, DateTime.Now.AddMinutes(30), false, "User", FormsAuthentication.FormsCookiePath);
string cookieStr = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieStr);
cookie.Path = FormsAuthentication.FormsCookiePath;
System.Configuration.Configuration configuration = WebConfigurationManager.OpenWebConfiguration("~");
AuthenticationSection authenticationSection = (AuthenticationSection)configuration.GetSection("system.web/authentication");
FormsAuthenticationConfiguration formsAuthentication = authenticationSection.Forms;
formsAuthentication.RequireSSL = true;
cookie.Secure = true;
configuration.Save()
}
FormsAuthentication.SetAuthCookie(login.Username, false);
所以我在保存部分出现错误.说有一个无法访问的临时文件.
知道我该如何解决吗?
古尔佩雷特
解决方法:
我不太了解您要做什么,或者为什么您必须编写自定义代码才能做到这一点.我相信您可以将表单身份验证配置为对web.config中的cookie使用SSL.然后,只需使用其他web.config即可进行实时和开发.
requireSSL属性应该完全满足您的要求? (将cookie设置为仅安全,以便浏览器仅在建立安全连接时才返回表单auth cookie).
类似于(在web.config中)
<authentication mode="Forms">
<forms timeout="30" loginUrl="/MyLogin.aspx" protection="All" requireSSL="True" />
</authentication>
内容总结
以上是互联网集市为您收集整理的c#-在实时环境中启用cookie上的SSL,在开发环境中启用非SSL全部内容,希望文章能够帮你解决c#-在实时环境中启用cookie上的SSL,在开发环境中启用非SSL所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。