2013-02-20 72 views
1

我們正在APS.NET MVC4中實施一個必須在Intranet上運行的網站。我們需要使用Active Directory(LDAP)進行Windows身份驗證。當我從身份驗證模式更改窗口,應用程序日誌自動登錄頁面沒有明確的用戶名和密碼。如何在asp.net mvc中實現windows身份驗證?

如何實現Windows身份驗證,其中登錄頁面接受用戶名和密碼,並應驗證? 請給我,如果有任何例子...任何幫助非常感謝。

在此先感謝

+2

您似乎對Windows身份驗證是什麼感到困惑。 – Dismissile 2013-02-20 14:11:28

回答

1

你可以離開FormsAuthentication啓用,然後添加以下成員提供:

<connectionStrings> 
    <add name="ADConnectionString" connectionString="YOUR AD CONNECTION STRING" /> 
</connectionStrings> 

然後:

<system.web> 
    <authentication mode="Forms"> 
     <forms loginUrl="~/Account/LogOn" /> 
    </authentication> 
    <membership defaultProvider="MY_ADMembershipProvider"> 
     <providers> 
      <clear /> 
      <add name="MY_ADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider" connectionStringName="ADConnectionString" attributeMapUsername="sAMAccountName" /> 
     </providers> 
    </membership> 
</system.web> 
+0

它會是Windows認證?現在我只是這樣做.. – user1952461 2013-02-20 14:47:31

+0

不,它將是表單身份驗證,但授權邏輯將使用Active Directory來鑑定和授權用戶,因爲自定義成員資格提供程序。 – 2013-02-20 15:04:54

+2

@ user1952461 Windows身份驗證意味着它使用您的Windows登錄來針對應用程序進行身份驗證。他們登錄到他們的Windows機器/域,並且由於它們以這種方式進行身份驗證,所以他們不需要登錄到網站,因爲它信任該帳戶。 – Dismissile 2013-02-20 15:44:15

0

你沒有已經的方法似乎是正確的。

在Windows身份驗證中,如果您嘗試從同一臺計算機加載頁面,您將自動進行登錄。但是,如果您嘗試從另一臺計算機登錄,它會詢問Windows憑據。