2 つの異なる mvc3 プロジェクトがあります。奇妙なことに、Web のいずれかにログインすると、もう 1 つの自動ログインは同じアカウント名を使用します。
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
私にはとても奇妙です。誰かがそれを説明できますか?どうすればそれを防ぐことができますか?
2 つの異なる mvc3 プロジェクトがあります。奇妙なことに、Web のいずれかにログインすると、もう 1 つの自動ログインは同じアカウント名を使用します。
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
私にはとても奇妙です。誰かがそれを説明できますか?どうすればそれを防ぐことができますか?
FormsAuthentication は Cookie を介して機能し、ブラウザーは異なるドメイン間での共有 Cookie を許可しません。ただし、同じドメイン間で共有することを許可します。これは、ローカルホストで実行しているときに発生します。このような状況を回避するには、web.config ファイルの Cookie 名を変更してください。
Cookie 名を指定しない場合は、デフォルト名が使用されます。web.config で手動で Cookie 名を指定し、認証要素を検索して、そのブロックを次のように置き換えます。
<authentication mode="Forms">
<forms name=".yourCustomCookieName" loginUrl="~/Account/Login" timeout="2880" />
</authentication>
ここで .yourCustomCookieName はあなたの Cookie 名です。