2012-01-04 83 views
1

我有一個使用Windows身份驗證運行的域:test.com的Web應用程序。我想創建一個使用域test.com/helloworld的子網站,但我希望此子網站具有不同類型的身份驗證。是否有可能創建一個新的Web應用程序作爲子網站或只是讓子網站使用不同的身份驗證形式?對子網站使用不同形式的身份驗證

+0

你現在在談論表單身份驗證..? – MethodMan 2012-01-04 19:54:33

回答

2

是的,這是可能的。我們這樣做(外部網站上的表單身份驗證,內部網站上的Windows身份驗證)

使這項工作的訣竅在主站點中,您將希望將主要system.web配置包含在非遺傳的位置標籤

例如:

<location inheritInChildApplications="false"> 
    <system.web> 
     <authentication mode="Windows"/> 
    </system.web> 
    </location> 

然後,在你的子網站,您將添加一個web.config,它定義了該站點的設置:

<?xml version="1.0"?> 
<configuration> 
    <system.web> 
    <authentication mode="Forms"/> 
    </system.web> 
</configuration> 
+0

是這種情況下需要的'inheritInChildApplications',因爲子網站的web.config將會覆蓋身份驗證類型,或者在沒有它的情況下彼此衝突?只是好奇 – 2012-01-04 21:06:36

+0

@AnthonyShaw:我們發現它在我們的情況下是需要的,但這可能是因爲主站點的web.config中的其他元素與子應用程序衝突。現在有點模糊。 – 2012-01-04 21:59:08

+0

哦,好的,很酷。我只是好奇,因爲我正在編寫一個應用程序,可能必須支持雙重身份驗證方法,肯定會出現此問題 – 2012-01-05 13:06:48

0

我建議,擴展Web應用程序;創建備用訪問映射並將子網站URL重新路由到新的Web應用程序。

這應該是更平滑。