软件下载 | 资讯教程 | 最近更新 | 下载排行 | 一键转帖 | 发布投稿
您的位置:最火下载站 > 网络编程 > ASP.NET > WSS站点里Asp.Net 身份验证问题解决

WSS站点里Asp.Net 身份验证问题解决

  烈火建站学院文档 由于我们BizTalk项目中经常会需要用到BAS,BAM等,(如:RosettaNet等),所以需要安装配置WSS,一般默认情况会提升Default Web Site(80)站点, 但是如果有Asp.Net WebSite 需要Host 在默认站点80 里的时候就会带来一些身份验证上的困惑,经常会导致身份验证不正常,如

以下为引用的内容:
<authentication mode="Windows" />
      <authorization>
        <allow users="qi.ma@cn.abb.com"/>
        <allow users="asiapacific\cnmaqi1"/>
         <deny users="*"/>
        <deny users="*"/>
      </authorization>

  或者在使用Asp.Net Login控件时候也有同样的问题

以下为引用的内容:
<authentication mode="Forms">
            <forms    name=".ASPXAUTH"
                    loginUrl="Login.aspx"
                    protection="All"
                    timeout="30"
                    path="/"
                    requireSSL="false"
                    slidingExpiration="true"
                    defaultUrl="Default.aspx"
                    cookieless="UseDeviceProfile"
                    enableCrossAppRedirects="false"/>
        </authentication>

  最初的时候百思不得其解,后来实在不行就索性换了一个站点,但是可以确定是由于WSS造成的, 在Default Web Site(80) 站点根目录下就会有一个sharepoint 的 web.config,根据msdn官方说法,web.config 有继承关系,还有一个必须要清楚的是asp.net 身份验证是在httpModules 里操作的, 查看sharepoint 的web.config,发现了问题,如下:

以下为引用的内容:
<httpModules>
            <clear/>
            <add name="OutputCache" type="System.Web.Caching.OutputCacheModule"/>
            <add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule"/>
            <!--    <add name="Session" type="System.Web.SessionState.SessionStateModule"/>-->
        </httpModules>

  比对默认的web.config(C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config)

  对自己站点下的web.config 做如下调整, 首先清除所有的httpModules,重新添加标准的httpModules:

以下为引用的内容:

<system.web>

    ...............
    <httpModules>
            <clear/>
            <add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
            <add name="Session" type="System.Web.SessionState.SessionStateModule" />
            <add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule" />
            <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />
            <add name="PassportAuthentication" type="System.Web.Security.PassportAuthenticationModule" />
            <add name="RoleManager" type="System.Web.Security.RoleManagerModule" />
            <add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" />
            <add name="FileAuthorization" type="System.Web.Security.FileAuthorizationModule" />
            <add name="AnonymousIdentification" type="System.Web.Security.AnonymousIdentificationModule" />
            <add name="Profile" type="System.Web.Profile.ProfileModule" />
            <add name="ErrorHandlerModule" type="System.Web.Mobile.ErrorHandlerModule, System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        </httpModules>

.................

  至此Login控件等身份验证工作正常

    相关阅读
    栏目导航
    推荐软件