2011-12-16 206 views
0

我們有一個ASP.NET MVC網站和一個WCF服務。ASP.NET MVC Windows身份驗證

我們在網站上使用Windows身份驗證,並希望從網站到服務憑據傳遞。通常(到目前爲止)服務和網站位於同一臺服務器上。目前我們將用戶名作爲字符串傳遞,但意識到這可能不是一個好的選擇。

我們想知道的AD用戶名時,我們已經在我們的數據庫中的AD用戶映射到我們的系統中各種角色映射執行WCF服務方法。

我們希望WCF服務爲我們與以該用戶訪問SQL配置它的IIS身份運行。

我們從哪裏出發?

回答

0

使用Forms Authentication Ticket沿用戶名通過。如果WCF和MVC將在不同的盒子/域中,請確保您覆蓋加密和域。這些指令提到了machineKey,但是對於該域,它只是forms元素中的domain="MyDomain"屬性。

+0

所以沒辦法讓服務知道實際的廣告的用戶身份? – 2011-12-16 05:24:34

0

你沒有說明你使用的是什麼綁定。如果你使用類似的東西,它應該工作:

<binding name="IWABinding"> 
     <security mode="Transport"> 
     <transport clientCredentialType="Windows" /> 
     </security> 
    </binding> 

你可能會使用它與netTcpBinding。你也可以通過basicHttpBinding來使用它,你也可以考慮TransportCredentialOnly。

欲瞭解更多信息,請參見:http://msdn.microsoft.com/en-us/library/ms733089(v=vs.110).aspx