SQLServer 授權權限


1. SQLServer服務器級別,創建登錄用戶(create login)

USE HIS create login WN010 with password='123456', --must_change, --僅適用於SQL Server登錄。如果包含此項,則SQLServer將在首次使用新登錄時提示用戶輸入新密碼。
    --sid=,
    default_database = HIS, --default_language=language,
    check_expiration=off,                --僅適用於SQL Server登錄。指定是否對此登錄賬戶強制實施密碼過去策略。默認值off
    check_policy=off                     --僅適用於SQL Server登錄。指定對應詞登錄強制實施運行SQLServer計算機的Windows密碼策略。默認on
    --credential=sysadmin --將映射到新SQLServer登錄的憑據名稱。該憑證必須已存在於服務器中。此前此選項將憑據鏈接到登錄名。憑據不能映射到系統管理員(sa)登錄名。

2. 創建數據庫用戶(create user),習慣上,“數據庫用戶”的名字和“登錄賬戶”的名字相同。

create user WN010 for login WN010 with default_schema = dbo    --默認實例

3. master數據庫授權訪問視圖權限 否則無法執行update操作

USE master   grant view server state to WN010

4. 自定義角色--只執行一次(創建updateHIS庫中所有表的權限的角色)

USE HIS
GO
EXEC sp_addrole 'updateroler' --刪除自定義角色:EXEC sp_droprole 'updateroler' GRANT UPDATE TO updateroler10 --REVOKE UPDATE FROM updateroler
--如果想授權指定表
 --GRANT UPDATE ON dbo.ZY_BRSYK TO updateroler

5. 通過加入數據庫角色,賦予數據庫用戶“db_datareader”制度權限醫技update權限

USE HIS GO
exec sp_addrolemember 'db_datareader','WN010'    --通過加入數據庫角色,賦予數據庫用戶db_datareader權限
exec sp_addrolemember 'updateroler','WN010'    --再授予更新權限 --刪除角色成員 --exec sp_droprolemember 'db_owner','WN002'
/*
角色名稱 角色描述
db_owner 數據庫的擁有者,該角色的用戶可以在數據庫中執行任何操作。
db_accessadmin 該角色的成員可以從數據庫中增加或者刪除用戶。
db_datareader 該角色的成員允許從任何表讀取任何數據。
db_datawriter 該角色的成員允許往任何表寫入數據。
db_ddladmin 該角色的成員允許在數據庫中增加、修改或者刪除任何對象(即可以執行任何DDL語句)。
db_securtyadmin 該角色的成員可以更改數據庫中的權限和角色。
db_backupoperator 該角色的成員允許備份數據庫。
db_denydatareader 該角色的成員被拒絕查看數據庫中的任何數據,但是他們仍然可以通過存儲過程來查看。
db_denydatawriter 像db_denydatareader角色,該角色的成員被拒絕修改數據庫中的任何數據,但是他們仍然可以通過存儲過程來修改。
public 當尚未對某個用戶授予或者拒絕對安全對象的特定權限時,這該用戶將據稱授予該安全對象的public角色的權限,這個數據庫角色不能被刪除
*/

6. 授權用戶訪問多個數據庫,WN010用戶可以訪問 HIS和CIS兩個庫

use CIS go

EXEC sp_addrole 'updateroler10'
--EXEC sp_droprole 'updateroler10'
GRANT UPDATE TO updateroler10 go
create user WN010 for login WN010 with default_schema=dbo go
exec sp_addrolemember 'db_datareader','WN010'    --通過加入數據庫角色,賦予數據庫用戶db_datareader權限
exec sp_addrolemember 'updateroler10','WN010'    --再授予更新權限
go

7. 其他操作

/*----------------------------------------------------------------------------- --1. 啟用、禁用登錄賬戶 alter login WN010 disable alter login WN010 enable --2. 修改登錄賬戶名稱與密碼 alter login WN010 with name = WNCS alter login WN010 with password = '123456' --3.刪除SQLServer登錄賬戶 drop login WN010 --4. 修改數據庫用戶名、密碼、數據庫用戶 alter user WN010 with name = WNCS alter user WN010 with password = '123456' alter user WN010 with default_schema = sys --5.刪除數據庫用戶 drop user WN010 -----------------------------------------------------------------------------*/

8. 查詢數據中所有用戶角色以及服務器角色

select * from sys.database_principals

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM