2012-09-07 22 views
1

我在使用SQL Server登錄時遇到了一些麻煩。我正在構建一個Excel電子表格,它將從SQL Server(2008)中檢索數據,然後以什麼方式顯示它是必需的等等......在沒有登錄的情況下使用SQL用戶時拒絕訪問SQL Server(通過Excel VBA)

我設置了一個沒有登錄的SQL用戶'genericReadOnly'和' genericReadWrite',然後我打算用environ(「username」)捕獲windows登錄,然後檢索該用戶被允許訪問的報告。當我和我的團隊正在處理這個問題時,這工作正常,但我們已經在SQL Server上設置爲「Windows用戶」。

我現在已經將文件發送給不是也列爲Windows用戶的人,即使連接字符串使用genericReadOnly SQL用戶名,它也會以ACCESS DENIED FOR DOMAIN\USERNAME失敗。

任何想法,因爲我不能爲需要訪問的每個人添加特定用戶名。

+0

發佈相關代碼和連接字符串 – BlackICE

+1

這只是我的猜測,您沒有提供足夠的信息。但我認爲數據庫設置爲Windows身份驗證模式(這是推薦的模式,而現在大多數公司都將此置於其策略中)。結果,其他人拒絕訪問。你的團隊,因爲他們的ID有數據庫權限可以運行該應用程序。如果是這種情況,最好的辦法是創建一個域組,將您的用戶添加到該組,並將該數據庫的權限授予該組。 – Reza

回答

0

我會建議創建一個域組,並將該組添加爲具有適當權限的SQL實例的Windows登錄。

然後添加任何需要使用您的Excel文件的人必須是該組的成員,並且不需要更改您的代碼或SQL設置。

相關問題