sql server 使用者訪問許可權設定

2021-06-27 11:22:57 字數 1200 閱讀 2027

/*--示例說明

示例在資料庫pubs中建立乙個擁有表jobs的所有許可權、擁有表titles的select許可權的角色r_test

隨後建立了乙個登入l_test,然後在資料庫pubs中為登入l_test建立了使用者賬戶u_test

同時將使用者賬戶u_test新增到角色r_test中,使其通過許可權繼承獲取了與角色r_test一樣的許可權

最後使用deny語句拒絕了使用者賬戶u_test對錶titles的select許可權。

經過這樣的處理,使用l_test登入sql server例項後,它只具有表jobs的所有許可權。

--*/

use pubs

--建立角色 r_test

exec sp_addrole 'r_test'

--授予 r_test 對 jobs 表的所有許可權

grant all on jobs to r_test

--授予角色 r_test 對 titles 表的 select 許可權

grant select on titles to r_test

--新增登入 l_test,設定密碼為pwd,預設資料庫為pubs

exec sp_addlogin 'l_test','pwd','pubs'

--為登入 l_test 在資料庫 pubs 中新增安全賬戶 u_test

exec sp_grantdbaccess 'l_test','u_test'

--新增 u_test 為角色 r_test 的成員

exec sp_addrolemember 'r_test','u_test'

--拒絕安全賬戶 u_test 對 titles 表的 select 許可權

deny select on titles to u_test

/*--完成上述步驟後,用 l_test 登入,可以對jobs表進行所有操作,但無法對titles表查詢,雖然角色 r_test 有titles表的select許可權,但已經在安全賬戶中明確拒絕了對titles的select許可權,所以l_test無titles表的select許可權--*/

--從資料庫 pubs 中刪除安全賬戶

exec sp_revokedbaccess 'u_test'

--刪除登入 l_test

exec sp_droplogin 'l_test'

--刪除角色 r_test

exec sp_droprole 'r_test'

SQLServer控制使用者訪問許可權表

一 需求 在管理資料庫過程中,我們經常需要控制某個使用者訪問資料庫的許可權,比如只需要給這個使用者訪問某個表的許可權,甚至是crud的許可權,更小粒度的還可以去到某幾個欄位的訪問許可權。寫這篇文章就是說明下這個操作過程。二 操作步驟 1.首先進入資料庫級別的 安全性 登入名 新建登入名 2.在 常規...

SQL SERVER 檢視使用者許可權

使用者與角色關係 select a.uid as uid,a.status as ustatus,a.name as uname,b.uid as rid,b.status as rstatus,b.name as rname from sysusers a left join sysmembers...

控制使用者訪問 使用者和許可權

控制使用者訪問 在多使用者環境中,要維護資料庫訪問和使用的安全性。通過oracle伺服器資料庫安全性,可以執行以下任務 1.控制資料庫訪問 2.授予對資料庫中特定物件的訪問許可權 3.通過oracle資料字典確認給定的和接收的許可權 4.為資料庫物件建立同義詞 資料庫的安全性可以分為以下兩類 系統安...