有人能告诉我如何处理验证模式@ asp.net mvc 3吗? 我的webconfig没有标签认证的条目,因为我不知道哪种模式是可以容纳的!
参考标题:
我想要隐藏一些导航按钮@View,我尝试使用“if(User.Identity.IsAuthenticated)”,但这总是正确的,即使我没有登录(在网站上!)< / p>
有人有想法吗?
最好的问候
答案 0 :(得分:5)
由于您从web.config中删除了<authentication>
标记,这意味着您允许匿名访问您的网站。所以任何人都被认为是经过验证的。这就是IsAuthenticated
始终为true
的原因。
您需要启用要使用的某种身份验证。例如,如果您想使用Forms Authentication:
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
因此,您必须首先决定的是如何管理用户和角色。你打算在哪里储存它们。一旦你决定了它,很容易使用内置的会员和角色提供者,或者如果它们不符合你的需要,可以编写自定义的。