2013-04-05 47 views
1

我有一個web應用程序,我在WAN和LAN中運行。相同的代碼在單獨的Web應用程序中運行。 在廣域網中,我已將其配置爲使用表單身份驗證。它可以無縫工作。 但是LAN應用程序被配置爲使用Windows身份驗證。即使Request.IsAuthenticated = true(使用Windows身份驗證),Asp也會重定向到登錄

現在會發生什麼情況,是該網站說「你好DOMAIN \ TestUser用戶」,這表明,該

  • Request.IsAuthenticated必須是真實的
  • User.Identity.Name設置爲正確的用戶

但是:我總是發現自己在「帳戶/登錄」頁面。 澄清:我的登錄頁面正在使用執行上述「Request.IsAuthenticated」的通用佈局模板。

我的問題:爲什麼我被重定向到登錄頁面,當驗證明顯成功?我該怎麼做才能使它工作? :)

此,我想是我的配置的重要組成部分:

<system.web> 
    <authentication mode="Windows"> 
     <forms loginUrl="~/Account/Login" timeout="2880" /> 
    </authentication> 
    <membership defaultProvider="SimpleMembershipProvider"> 
     <providers> 
     <clear /> 
     <add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData" /> 
     </providers> 
    </membership> 
    </system.web> 

的IIS,此Web應用程序是安裝使用Windows身份驗證啓用和認證的所有其他方法無效。

(我使用ASP.Net MVC 4)

回答

0

我發現這裏的解決方案: http://martinnormark.com/asp-net-mvc-3-windows-authentication-problem-redirects-to-account-login 花了幾個小時後,谷歌搜索...

答案很幸運很簡單: 添加這些兩個屬性到您的應用程序設置:

<appSettings> 
    <add key="autoFormsAuthentication" value="false" /> 
    <add key="enableSimpleMembership" value="false"/> 
    </appSettings> 

看起來像非常糟糕的做法我......但是,嘿,它能完成這項工作。

+0

不要求你「批准」我的答案,但如果你只是從窗體切換到Windows認證,爲什麼**添加**給你的web.config,只是刪除而不是? – LiverpoolsNumber9 2013-04-05 12:23:19

1

這個以前也遇到過,並有比較我的本地IIS部署,在我的項目運行良好,與什麼是部署在服務器上。事實證明,有額外的DLL ,不應該部署。我的場景雖然與你的有所不同。該項目正在我的本地機器上工作,但不在局域網環境中工作。要刪除這需要額外的文件:

  • WebMatrix.Data.dll
  • WebMatrix.WebData.dll

我希望它是相同的情況下,你的,這是一個很難的部署問題抓住。

+0

不幸的是,不是這樣。也許幫助別人。 你是怎麼弄出來的? :) – Sam7 2013-04-05 08:13:44

+1

我調試部署問題的第一步是檢查配置,然後檢查部署的文件。如果我得到這些參考問題,我開始刪除文件並將它們帶回來,與任何奇怪的問題一樣。舊學校,但比谷歌搜索速度更快。如果所有的事情都失敗了,那就是我打穀歌的時候了。 – 2013-04-05 08:17:50

0

拿出<forms loginUrl="~/Account/Login" timeout="2880" />一行和<membership />部分可能有幫助嗎?

這會使你:

<system.web> 
    <authentication mode="Windows"></authentication>   
</system.web> 
+0

謝謝。但那不是我想要的。 由於登錄被預定義爲,因此刪除標記只會導致404錯誤,因爲我沒有Login.aspx – Sam7 2013-04-05 13:48:26

+0

沒問題。公平的事。 – LiverpoolsNumber9 2013-04-05 13:55:31

相關問題