私は、web.configファイルでこれを書いた:コントローラ内のアクションででも(MVC 3の認証)にログインしアクセスすることはできません
<authentication mode="Forms">
<forms loginUrl="~/en/Account/LogIn" timeout="2880" />
</authentication>
と、この:今
[Authorize]
public ActionResult AccountInfo()
{
return view()
}
、ときに私プログラムを実行して、アカウント情報ビューにアクセスしようとすると、とてもうまくいく、そこに私を連れて来ない。しかし、私がログインしてこのビューに到達しようとしたときに、それは私にビューを許可しませんでした。何が非常に悪い...
私は認証されたのは、私のサイトへのアクセス、それらを防ぐためではありません。 どうすればアクセスできますか?
ありがとうございます。
が
を解決し、私はこの場所でこのようなURLを記述するために必要な:
<location path="~/en/Account/LogIn">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
代わりの<authentication> <form>
、<location>
上記の解決策は、単に誰でもアカウント/ログインにアクセスできるようにすることです。一般的に、MVCでは、このアプローチは面倒であり、すべてのセキュリティはコントローラレベルにあるべきです。あなたが[authorize]属性でログインコントローラを保護していない限り、ログインURLにどのように影響するのかわかりません。 –
もちろん、ログインしていないユーザーがログインできるように、ログインコントローラを保護していませんでした。事実、これは私が知っている唯一のものです - 私はこの動きをしました。 – ParPar
これは奇妙ですが、これは必須ではないため、何かが続いています。うーん.. –