我遇到了一點障礙,不幸的是,我一直無法找到我的問題的具體答案。我會盡我所能解釋這個問題;我希望它是有道理的...問題與登錄到SQL Server Windows身份驗證到Active Directory組
我遇到了SQL Server和Windows身份驗證工作方式的問題。這很複雜,所以我會盡力說清楚。
對於這個場景,畫面如下:
- 一個SQL Server 2008實例,
- 在該服務器上稱爲
Applications
一個數據庫, - 在
Applications
數據庫有兩種模式稱爲app1
和app2
, 每個模式都包含同名應用程序的所有表,
兩個Windows AD組,一個用於每個應用程序名爲
app1_RW
和app2_RW
,- 用戶的任何給定的數目可以是在一個或兩個,這些廣告組的,
兩個.NET應用程序,在連接到數據庫中使用Windows身份驗證模式
Data Source=DATABASEINSTANCENAME;Initial Catalog=APPLICATIONS;Integrated Security=True
當用戶打開或者application1
或application2
,那麼AP摺疊做如下(按照這個順序):
檢查,以確保當前的Windows用戶是控制該應用的安全培訓相關的Windows AD組的成員。
如果它們是AD組的成員,則允許該應用程序繼續,
登錄到使用Windows身份驗證數據庫。
技術問題:
當用戶既app1_RW
和app2_RW
的成員,則似乎我不能強迫哪個組登錄。如果用戶登錄到application1
,我看到Windows身份驗證使用app2_RW
將它們記錄到數據庫中的位置。因此,應用程序失敗,因爲app2_RW
無權訪問運行application1
所需的架構/權限。
我希望我的答案和指定要在連接字符串中登錄哪個Windows AD組一樣簡單,但是據我所知,不能指定連接的「用戶ID」字符串如果Integrated Security=True
。
任何人都可以提供任何幫助嗎?我非常想繼續使用Windows AD組來管理我的應用程序。如果我錯過了任何信息,或者我可以澄清,請告訴我。
非常感謝你,祝你有美好的一天。
你確定你已經提供完整的信息嗎?你收到什麼錯誤信息?這是權限問題還是命名問題?這兩個應用程序都在同一目錄還是不同的目錄中?....通常,您需要執行的操作是在數據庫中創建角色,爲角色分配權限,然後使用「用戶映射」對話框將登錄映射到數據庫角色。這將允許您實現您需要的許多/許多映射。 – Ben