Sql-Server
使用者名和密碼可以在系統 DSN 中硬編碼嗎
我們有一個舊版 CRM,它使用帶有 Windows 身份驗證的 DSN 連接到 SQL Server 2005 實例(SBS 2003 Premium 的一部分)。我們將很快進行一次重大遷移,使我們沒有 Windows 域 - 據我了解,這意味著我們需要使用替代身份驗證方法。我們還計劃在同一時間範圍內從 SQL Server 2005 遷移到 SQL Server Express 2008 R2。
不幸的是,無法對 CRM 進行修改。
撇開明顯的安全問題不談,是否可以在系統 DSN 中硬編碼使用者名和密碼?或者,這是我缺少的另一種明顯的身份驗證方法嗎?
- 編輯
DSN在 Windows 客戶端控制面板的“管理工具”部分的ODBC 數據源管理器中定義。
–編輯2
由於喬納森的回答,我放棄了嘗試在 DSN 中執行此操作。幸運的是,我發現了一個 .ini 文件,我可以在其中插入一個固定的使用者名/密碼來替換佔位符 - 問題解決了。
系統 DSN 儲存在系統資料庫中,無法儲存密碼。如果要儲存密碼,則必須使用文件 DSN,這需要更改 CRM 以使用文件 DSN,您說這是不可能的。通常使用系統 DSN 的應用程序依賴於使用者的 SQL Server 身份驗證來確保其安全性。當應用程序打開時,它應該提示使用者登錄,這是用於連接到數據庫伺服器的系統 DSN 資訊的使用者名和密碼。如果 DSN 使用 Windows 身份驗證並且您正在消除 Windows 域,那麼您將陷入困境。您必須更改 CRM 以使其以不同的方式工作。