簡體   English   中英

使用SQL登錄名和ASP.NET MVC登錄到SQL Server

[英]Logging in to SQL Server using SQL logins with ASP.NET MVC

我正在向現有的應用程序數據庫中編寫一個小型插件移動應用程序,該應用程序通過SQL Server登錄名存儲登錄詳細信息:

登錄

我希望能夠在我的移動Web應用程序中使用這些現有的登錄名(如果可能的話,還有權限),但是我找不到是否有簡便的方法來執行此操作。 我希望有一個現有的提供程序,允許我通過web.config進行此操作。

有什么方法可以不必手動編碼所有登錄/身份驗證的方法嗎?

例如:

<providers>
    <add name="SQLProfileProvider" type="System.Web... />
</providers>

另外,有人知道有什么資源可以幫助我手動完成嗎?

如果我是個白痴,請不要苛刻,這是我第一次進入asp.net!

更新:

也許不清楚我要做什么,所以我會嘗試擴展。

我有一個現有的桌面應用程序(不受我的控制)。 它使用SQL Server 2008來存儲其數據,並使用SQL Server登錄名對用戶進行身份驗證。

我正在編寫一個Web應用程序以連接到該數據庫。 我想允許用戶使用桌面應用程序中的現有登錄詳細信息登錄Web應用程序。

例如。 我有一個數據庫,用戶為“ abc123”:

在此處輸入圖片說明

我希望能夠在ASP中使用此登錄名:

登錄畫面

我知道可以在MVC中使用我自己的成員資格提供程序,但是如果已經編寫了此文件, 我希望能夠使用現有的成員資格提供程序

有人知道這個會員資格提供者嗎?

這個問題實際上很有趣。 我從未聽說過直接使用sql登錄名的現成的成員資格提供程序。 所以,我的回答是“不,不存在”。

我無法想象這將很難編寫。 只需實施MembershipProvider( http://msdn.microsoft.com/zh-cn/library/System.Web.Security.MembershipProvider ( v=vs.110 ) .aspx )並為所有“ CreateUser”內容運行sql腳本。 它應該以非常直接的方式工作。

我只需要注意,這是數據庫登錄名的非常傳統的用法。 但是我看到您將如何立即獲得應用到數據庫中用戶/角色設置的任何權限的好處。 這不是很可擴展,但是您將擁有非常精細的權限。

也許更具可擴展性的解決方案是將一個用戶表映射到表示某些類型(例如ReadOnlyLogin,WriteableLogin等)的通用登錄名。這樣,您可能有100個用戶,並在一個表中包含了用戶名和密碼,然后分配了它們到特定的dblogin(如上所述)。 用戶登錄后,只要他們訪問數據庫,便會使用給定的登錄名,從而強制對登錄名設置任何權限。 因此,Bob,Frank和Harry將使用ReadOnlyLogin,而Sally,Jane和Samantha將使用WriteableLogin。 只是一個想法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM