認証 Cookie が HTTPS 経由でのみアクセスできるように環境を構成しようとしています (XSS 攻撃から保護します)。いくつかの記事を読み、requireSSL 属性を「true」に設定する必要があるという結論に達しました。
<authentication mode="Forms">
<forms name="someName" loginUrl="~/login" timeout="40" protection="All" slidingExpiration="true" defaultUrl="~/index" requireSSL="true" />
</authentication>
問題は、認証 Cookie を設定しようとすると、例外がスローされることです。
FormsAuthentication.SetAuthCookie(username, false);
例外:
アプリケーションは、安全な Cookie を発行するように構成されています。これらの Cookie では、ブラウザが SSL (https プロトコル) 経由でリクエストを発行する必要があります。ただし、現在のリクエストは SSL 経由ではありません。
スタックトレース:
System.Web.HttpException: アプリケーションは、安全な Cookie を発行するように構成されています。これらの Cookie では、ブラウザが SSL (https プロトコル) 経由でリクエストを発行する必要があります。ただし、現在のリクエストは SSL 経由ではありません。
System.Web.Security.FormsAuthentication.SetAuthCookie (文字列の userName、ブール値の createPersistentCookie、文字列 strCookiePath) で
この問題は、ローカル マシン (HTTPs アクセス用に構成されている場合でも) とライブ サーバー (これも HTTPs 上にあります) で発生します。
誰でもこの問題で私を助けることができますか? ありがとう。