當前位置:首頁 » 編程語言 » sql登錄名的許可權怎麼設置
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql登錄名的許可權怎麼設置

發布時間: 2022-04-27 09:54:53

1. 如何設置sql Server登錄的默認資料庫和許可權。

sql server2005安全管理之用戶、角色、架構 與 許可權
2008-12-04 16:47
--打開資料庫
Use databaseName

--創建角色
create role ProgramerRole

--用於創建表 存儲過程 視圖
grant create table,create procere,create view to ProgramerRole

--execute用以執行存儲過程,alter用以創建、修改存儲過程和視圖,
--並可以新建立表,但不能修改表,但也可以刪除表和對表改名了
grant select,insert,execute,alter on schema::dbo to ProgramerRole

--用於允許用戶查看 顯示估計的執行計劃(081205)
grant showplan to ProgramerRole

--創建登錄賬號
--create login username with password='password'
--創建資料庫用戶
create user username for login username

--將用戶TestUser添加到TestRole角色中
exec sp_addrolemember 'ProgramerRole','username '

--執行Sql Server Profiler是伺服器級許可權,所以在master庫中授權
USE master;grant alter trace to auto;

註:據庫引擎優化顧問必須由具有系統管理員許可權的用戶進行初始化。在具有系統管理員許可權的用戶對資料庫引擎優化顧問進行初始化之後,任何是 db_owner 固定資料庫角色成員的用戶,都可以使用資料庫引擎優化顧問來優化他們擁有的資料庫上的表。
詳優化物理資料庫設計http://msdn.microsoft.com/zh-cn/library/ms191531(SQL.90).aspx

參考資料:
用戶架構分離:http://msdn.microsoft.com/zh-cn/library/ms190387(SQL.90).aspx
資料庫架構是一個獨立於資料庫用戶的非重復命名空間。您可以將架構視為對象的容器
主體:http://msdn.microsoft.com/zh-cn/library/ms181127(SQL.90).aspx
是可以請求 SQL Server 資源的實體

Windows 級別的主體

Windows 域登錄名
Windows 本地登錄名
SQL Server 級的主體

SQL Server 登錄名
資料庫級的主體

資料庫用戶
資料庫角色
應用程序角色
安全對象:http://msdn.microsoft.com/zh-cn/library/ms190401(SQL.90).aspx
安全對象是 SQL Server 資料庫引擎 授權系統控制對其進行訪問的資源
安全對象范圍有伺服器、資料庫和架構
安全對象范圍:伺服器包含以下安全對象:
端點
登錄帳戶
資料庫

安全對象范圍:資料庫包含以下安全對象:
用戶
角色
應用程序角色
程序集
消息類型
路由
服務
遠程服務綁定
全文目錄
證書
非對稱密鑰
對稱密鑰
約定
架構

安全對象范圍:架構包含以下安全對象:
類型
XML 架構集合
對象

對象 下面是對象類的成員:
聚合
約束
函數
過程
隊列
統計信息
同義詞

視圖

架構:http://msdn.microsoft.com/zh-cn/library/ms365789(SQL.90).aspx
架構是指包含表、視圖、過程等的容器。它位於資料庫內部,而資料庫位於伺服器內部
特定架構中的每個安全對象都必須有唯一的名稱。架構中安全對象的完全指定名稱包括此安全對象所在的架構的名稱。因此,架構也是命名空間

許可權:http://msdn.microsoft.com/zh-cn/library/ms190387(SQL.90).aspx
每個 SQL Server 2005 安全對象都有可以授予主體的關聯許可權

資料庫級別的角色:http://msdn.microsoft.com/zh-cn/library/ms189121(SQL.90).aspx
固定資料庫角色是在資料庫級別定義的,並且存在於每個資料庫中。db_owner 和 db_securityadmin 資料庫角色的成員可以管理固定資料庫角色成員身份;但是,只有 db_owner 資料庫的成員可以向 db_owner 固定資料庫角色中添加成員。
每個資料庫用戶都屬於 public 資料庫角色。當尚未對某個用戶授予或拒絕對安全對象的特定許可權時,則該用戶將繼承授予該安全對象的 public 角色的許可權
伺服器級別角色:http://msdn.microsoft.com/zh-cn/library/ms188659(SQL.90).aspx
固定伺服器角色在其作用域內屬於伺服器范圍。固定伺服器角色的每個成員都可以向其所屬角色添加其他登錄名。

GRANT 架構許可權:http://msdn.microsoft.com/zh-cn/library/ms187940(SQL.90).aspx

如何配置用戶以創建和管理 SQL Server 代理作業 http://msdn.microsoft.com/zh-cn/library/ms187901.aspx

若要配置用戶以創建或執行 Microsoft SQL Server 代理作業,必須先將某個現有 SQL Server 登錄名或 msdb 角色添加到 msdb 資料庫中的下列 SQL Server 代理固定資料庫角色之一:SQLAgentUserRole、SQLAgentReaderRole 或 SQLAgentOperatorRole。

默認情況下,這些資料庫角色的成員可以創建各自的作業步驟,這些作業步驟不執行其他作業步驟。如果這些非管理用戶要運行那些執行其他作業步驟類型(例如,SSIS 包)的作業,它們需要對代理帳戶具有訪問許可權。sysadmin 固定伺服器角色的所有成員都有創建、修改和刪除代理帳戶的許可權

為具體的用戶設置具體的訪問許可權 收藏
use 你的庫名
go

--新增用戶
exec sp_addlogin 'test' --添加登錄
exec sp_grantdbaccess N'test' --使其成為當前資料庫的合法用戶
exec sp_addrolemember N'db_owner', N'test' --授予對自己資料庫的所有許可權

--這樣創建的用戶就只能訪問自己的資料庫,及資料庫中包含了guest用戶的公共表
go

--刪除測試用戶
exec sp_revokedbaccess N'test' --移除對資料庫的訪問許可權
exec sp_droplogin N'test' --刪除登錄

如果在企業管理器中創建的話,就用:

企業管理器--安全性--右鍵登錄--新建登錄

常規項
--名稱中輸入用戶名
--身份驗證方式根據你的需要選擇(如果是使用windows身份驗證,則要先在操作系統的用戶中新建用戶)
--默認設置中,選擇你新建的用戶要訪問的資料庫名

伺服器角色項
這個裡面不要選擇任何東西

資料庫訪問項
勾選你創建的用戶需要訪問的資料庫名
資料庫角色中允許,勾選"public","db_ownew"

確定,這樣建好的用戶與上面語句建立的用戶一樣
---------------------------------------------------------------------------

最後一步,為具體的用戶設置具體的訪問許可權,這個可以參考下面的最簡示例:

--添加只允許訪問指定表的用戶:
exec sp_addlogin '用戶名','密碼','默認資料庫名'

--添加到資料庫
exec sp_grantdbaccess '用戶名'

--分配整表許可權
GRANT SELECT , INSERT , UPDATE , DELETE ON table1 TO [用戶名]

--分配許可權到具體的列
GRANT SELECT , UPDATE ON table1(id,AA) TO [用戶名]

2. 如何為SQL Server2008添加登錄賬戶並配置許可權

首先打開資料庫,並以windows身份驗證模式扥牢固資料庫,

然後在左側的【對象資源管理器中】展開【安全性】節點,滑鼠右鍵點擊節點中的【登錄名】,在彈出的菜單中單擊【新建登錄名】,彈出如圖對話框:

然後步驟如下:

1. 在登錄名右側的文本框中輸入新建的管理員賬號名稱;

2. 一對單選按鈕組中,選擇Sql Server 身份驗證,並輸入登錄密碼;

3. 勾選強制實施密碼策略復選框;(密碼策略一般是指加強用戶登錄的密碼方式例如:可能需要至少8個以上字元,或在嘗試若干登陸失敗後該賬號即被禁止登陸等等!如果覺得麻煩可以不必勾選!)

4. 不勾選強制密碼過期;(如果勾選該項的話,則每一次登陸後系統都會提示用戶必須更改現有密碼,如非特殊需求,不建議勾選此項!)

然後繼續點選左側選項頁下的【伺服器角色】,

在右側的伺服器角色面板中,勾選 public 和 sysadmin 兩項!

注意:如果建立的賬號不需要具備系統管理員的許可權時,則不要勾選 sysadmin 項!

繼續點選左側選項頁中的【用戶映射】,

在右側的面板中勾選該賬號可以進行管理操作的資料庫名稱!並在該面板下面的【資料庫角色成員身份】中勾選 db_owner 項!

注意:如果給一個無系統管理許可權的賬號指定管理一個資料庫時,則一定要勾選 db_owner 項!否則該賬號則無法看到該資料庫中的任何數據表!

選後點選【選擇頁】下的【狀態】選項進行設置,

至此,一個新的資料庫管理員已創建完成!

其實,對於專業的DBA管理者來說,T-Sql語句的操作要比這種圖形界面闖建賬號來得更快更靈活!

重要提示(報錯解決方法):

1,賬戶添加後要重啟更新,這里的重啟要右鍵點擊【資料庫】,選擇【重新啟動】。

2,要記得開啟【SQL Server和windows身份驗證】雙重模式。

3. 伺服器如何設置MSSQL資料庫許可權及用戶名

控制面版→管理工具→數據源
選擇:「添加」在裡面找到你所用的資料庫名稱
點擊「完成」
後面看著填
後面有個「你想連接哪一個SQL
Server」
如果的本機上的就直接打個
「.」。