SQL角色與許可權

2021-04-25 08:48:21 字數 2486 閱讀 4340

伺服器級,使用使用者的loginid來識別使用者,可以是sql server登陸,也可是windows域和使用者名稱。

資料庫級,通過將使用者加入固定的資料庫角色來為其授予特定的管理許可權。

物件級,每個物件所有者自動獲得其所擁有的物件的許可權,使用dcl命令和系統儲存過程來管理。

伺服器角色

sysadmin

可以在sql server例項中完成所有的活動,可以忽略deny許可權。

bulkadmin

可以執行大容量插入操作。

dbcreator

可以建立和更改資料庫。

processadmin

可以結束正在執行中的sql server程序。

securityadmin

可以管理伺服器的登陸許可權。

serveradmin

可以配置伺服器範圍,包括全文檢索和關閉伺服器。

setupadmin

可以配置鏈結的伺服器、擴充套件的儲存過程和自動執行儲存過程。

diskadmin

用來管理sql server 6.5格式的磁碟檔案。

sql server將所有的登陸資訊儲存於master資料庫中。

xp_loginconfig 驗證登陸模式

hkey_local_machine/software/microsoft/microsoftsqlserver//mssqlserver/loginmode 認證模式

sp_grantlogin/sp_denylogin/sp_revokelogin 新增、拒絕、刪除windows使用者(組)。

sp_validatelogins 找到所有的孤立使用者(有sql帳號但沒windows帳號)。

解決孤立使用者

1. 如果使用者擁有物件,應當使用sp_changeobjectowner將許可權轉移或刪除這些物件。

2. 使用sp_revokedbaccess刪除使用者對所有的資料庫的訪問許可權。

3. 使用sp_revokelogin取消使用者對於伺服器的訪問許可權。

建立sqlserver登陸sp_addlogin,可以建立乙個有85bit的二進位制使用者id,通過sp_helplogins來查詢。

sp_defaultdb 為使用者設定預設資料庫。

sp_password 修改使用者的口令。

sp_droplogin 刪除sql server登陸。

sp_addsrvrolemember/sp_dropsrvrolemember 將使用者加入伺服器角色/從角色中移除。

資料庫建立時不會自動建立guest使用者,要用exec sp_adduser 'guest'

sp_grantdbaccess 授予使用者資料庫訪問許可權。

sp_revokedbaccess 取消使用者資料庫訪問許可權。

資料庫角色

db_owner

擁有資料庫所有許可權,但deny許可權優先於它。

db_accessadmins

可以授予使用者訪問資料庫的許可權,但不能管理資料庫級的安全性。

db_backupoperators

可以進行備份,執行檢查點和dbcc命令,但不能進行還原。

db_datareaders

可以讀取資料庫的所有資料。

db_datawriters

可以寫資料庫的所有資料。

db_ddladmins

可以執行ddl命令。

db_denydatareaders

不允許讀取資料庫的任意資料。

db_denydatawriters

不允許修改資料庫的任意資料。

db_securityadmins

可以管理資料庫級的安全性——角色和許可權。

sql dcl命令:grant、revoke和deny來指派物件許可權。

deny優先於grant,grant優先於revoke。

可以授予的物件許可權包括:select,insert,update,delete,dri,execute。

with grant option選項可以讓獲授權的使用者將許可權轉授給其他人的能力。

使用cascade選項級聯**許可權。

屬於sysadmin,db_owner,db_securityadmins的使用者可以建立標準資料庫角色。

應用程式角色是一種資料庫專用的角色,可以使應用程式獲得資料庫的訪問許可權。

sp_addrole 建立標準角色。

sp_droprole 刪除角色,如果角色中包含有使用者,就不能刪除它。

sp_addrolemember 為角色新增使用者。

sp_droprolemember 從角色中刪除使用者。

sysadmins建立dbo的物件,普通使用者擁有自己建立的物件。

sp_changeobjectowner重新指派物件的所有權。

常用的一種許可權限制方法:

建立投影到特定列,或者使用where子句和with check option子句對行進行限制的檢視,然後,只為使用者授予訪問檢視的許可權,從而限制對資料的訪問。

SQL語言(五)許可權與角色

角色grant 許可權 許可權 on 物件型別 物件名 物件型別 物件名 to 使用者 使用者 with grant option revoke 許可權 許可權 on 物件型別 物件名 物件型別 物件名 from 使用者 使用者 cascade restrict 資料庫角色是被命名的一組與資料庫操作...

使用者 角色與許可權

經常整理 反思,才能進步。一位偉大的哲學家 還原真相 事情是這樣的,我在實習的時候,我的實習導師安排我做系統後台管理中的 使用者資訊管理 角色管理 許可權管理 三個進行分析,並讓我說了說我的想法。初生牛犢不怕虎,稍微思索了下,就開始講。在講到角色管理和許可權管理的時候,我就說可以將角色管理和許可權管...

SAP 許可權與角色設計

原文 角色 通用角色 本地角色 許可權物件 mm x 物件 許可權字段 欄位一 負責增刪改 欄位二 負責字段級准入 允許操作 01 03 05 07 允許值 factory1,factory2,factory5 factory7 直觀的說,許可權就是 某人能幹某事 和 某人不能幹某事 之合。在sap...