requiressl表单身份验证
问题描述:
基本上我正在使用的应用程序有一堆参数,这些参数都是从一个xml配置文件控制的,该配置文件包含运行applcation(live和dev)的每台机器的配置。我遇到的问题是,我希望能够控制基于表单的身份验证requiressl字段,以便在配置文件中可以指定此标志。requiressl表单身份验证
这应该会导致在live环境中requiressl标志为true,并且通过强制ssl并创建一个安全的auth cookie。对于开发环境,我不希望在所有开发机器上执行ssl。
我不想操纵web.config文件来做到这一点。我希望我的应用程序代码读取xml配置并相应地设置它们。
我已经尝试使用反射器进入密封formsauthentication类,并已发现requiressl属性只有一个get方法,没有设置方法。
我也尝试过实现formsauthentication配置类,无济于事。 - 我不确定我是否正确地做到了这一点。
任何帮助寻找一个可能的解决方案,将不胜感激。
亲切的问候,
Gurpreet
尝试1:
随后我已经试过这样:
PropertyInfo field = typeof (FormsAuthentication).GetProperty("RequireSSL");
field.SetValue(typeof(FormsAuthentication), true, null)
我得到一个错误信息说 “属性设置方法不发现“
尝试2:解决
的typeof(FormsAuthentication).GetField( “_ RequireSSL”,BindingFlags.Static | BindingFlags.NonPublic).SetValue(typeof(FormsAuthentication),Config.Secure);
你不想修改web.config文件的原因是什么?该文件的主要目的之一是将其配置为特定的环境,这正是你想要做的。 – 2010-12-14 13:59:56