假设我编写了自己的身份验证模块IHttpModule
。它并没有真正完成,但有很好的资源,所以我可以搞清楚。
还有关于如何将自定义创建的模块添加到Web.config
的教程。但是我如何替换某些默认模块?那是如何从执行路径中删除默认验证模块?
我可以从Web.config
删除以下行吗?
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880"/>
</authentication>
如果删除它们,默认的身份验证模块是否仍然有效?
原因是即使我不使用它也没有真正需要删除该模块......但它会节省一些处理器时间,我会感觉更好。
这很容易,而不是困难部分:我可以替换HttpContext
实施吗?我有自己的会话类Session
,我不希望HttpSessionState
位于HttpContext
。我还想替换User
的{{1}}属性。所以我想我需要创建自己的HttpContext
实现并强制我的应用程序以某种方式使用它。
我该怎么做?
请随意单独回答我的问题的任何部分或根据您的意愿回答所有问题。
答案 0 :(得分:2)
<system.webServer>
<modules>
<remove name="FormsAuthenticationModule" />
<remove name="UrlAuthorization" />
<remove name="DefaultAuthentication" />
</modules>
</system.webServer>
这个怎么样?
答案 1 :(得分:0)
您可以将mode
设置为None
。我会将你的HttpContext
命名为不同的东西。