1

フォームを使用した AD 認証を使用しています。私が直面している問題は、コンピューターのネットワークに既にログインしているため、Web ページに既にログインしていると表示され、ログオフ ボタンをクリックしてもログインしたままになることです。

これは、IIS 7 で Web サイトを展開した場合にのみ発生します。コードをデバッグ モードでテストすると、ログイン/ログオフ ボタンは正常に機能するようです。

IIS 7 の設定を変更する必要があるか、コードが間違っているだけですか?

どんな助けでも大歓迎です。

AD の web.config セクションは次のとおりです。

<connectionStrings>
 <add name="ADService" connectionString="LDAP://Dcxxx.xxxx.local"/>
</connectionStrings>

<membership defaultProvider="AspNetActiveDirectoryMembershipProvider">
      <providers>
        <add name="AspNetActiveDirectoryMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider,  System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" attributeMapUsername="sAMAccountName" connectionStringName="ADService" enableSearchMethods="true"/>
      </providers>

次に、フォーム認証パーは

<authentication mode="Forms">
      <forms loginUrl="~/Account/Login.aspx" name=".ADAuthCookie" timeout="15" slidingExpiration="false" protection="All"/>
    </authentication>
    <authorization>
      <deny users="?" />
      <allow users="*" />
    </authorization>

sitemaster.aspx.cs に、ログオフを強制する次のコードを追加しました。

protected void Unnamed2_LoggingOut(object sender, LoginCancelEventArgs e)
        {
            HttpContext.Current.Session.Clear();
            HttpContext.Current.Session.Abandon();
            ViewState.Clear();
            FormsAuthentication.SignOut();
            Response.Redirect("~/Account/Login.aspx"); 

        }
4

0 に答える 0