1. 程式人生 > >sql server中的一些角色,命令,函式的講解

sql server中的一些角色,命令,函式的講解

今天悲劇了,把資料庫中的使用者設定成了db_denydatareader角色,沒有sa的密碼,找了好久。可以使用系統儲存過程將使用者從中移除

exec sp_droprolemember 'db_denydatareader', 'Mssql_NLTS';

為便於管理資料庫中的許可權,SQL Server 提供了若干“角色”,這些角色是用於分組其他主體的安全主體。它們類似於 Microsoft Windows 作業系統中的組。資料庫級角色的許可權作用域為資料庫範圍。 
SQL Server 中有兩種型別的資料庫級角色:資料庫中預定義的“固定資料庫角色”和您可以建立的“靈活資料庫角色”。 
固定資料庫角色是在資料庫級別定義的,並且存在於每個資料庫中。db_owner 和 db_securityadmin 資料庫角色的成員可以管理固定資料庫角色成員身份。但是,只有 db_owner 資料庫角色的成員能夠向 db_owner 固定資料庫角色中新增成員。msdb 資料庫中還有一些特殊用途的固定資料庫角色。 
您可以向資料庫級角色中新增任何資料庫帳戶和其他 SQL Server 角色。固定資料庫角色的每個成員都可向同一個角色新增其他登入名。 
重要提示: 
請不要將靈活資料庫角色新增為固定角色的成員。這會導致意外的許可權升級。 下表顯示了固定資料庫級角色及其能夠執行的操作。所有資料庫中都有這些角色。 資料庫級別的角色名稱及說明  
 
db_owner 固定資料庫角色的成員可以執行資料庫的所有配置和維護活動,還可以刪除資料庫。 
db_securityadmin 固定資料庫角色的成員可以修改角色成員身份和管理許可權。向此角色中新增主體可能會導致意外的許可權升級。 
db_accessadmin 固定資料庫角色的成員可以為 Windows 登入名、Windows 組和 SQL Server 登入名新增或刪除資料庫訪問許可權。 
db_backupoperator 固定資料庫角色的成員可以備份資料庫。 
db_ddladmin 固定資料庫角色的成員可以在資料庫中執行任何資料定義語言 (DDL) 命令。 
db_datawriter 固定資料庫角色的成員可以在所有使用者表中新增、刪除或更改資料。 db_datareader 固定資料庫角色的成員可以從所有使用者表中讀取所有資料。 db_denydatawriter 固定資料庫角色的成員不能新增、修改或刪除資料庫內使用者表中的任何資料。 

db_denydatareader 固定資料庫角色的成員不能讀取資料庫內使用者表中的任何資料。 
有關資料庫級固定角色許可權的特定資訊,請參閱固定資料庫角色的許可權(資料庫引擎)。 msdb 角色 msdb 資料庫中包含下表顯示的特殊用途的角色。 msdb 角色名稱及說明  
 db_ssisadmin   db_ssisoperator   
db_ssisltduser 
這些資料庫角色的成員可以管理和使用 SSIS。從早期版本升級的 SQL Server 例項可能包含使用 Data Transformation Services (DTS)(而不是 SSIS)命名的舊版本角色。有關詳細資訊,請參閱 使用 Integration Services 角色。 
 dc_admin   dc_operator   
dc_proxy 
這些資料庫角色的成員可以管理和使用資料收集器。有關詳細資訊,請參閱資料收集器的安全性。 
 
PolicyAdministratorRole 
db_ PolicyAdministratorRole 資料庫角色的成員可以對基於策略的管理策略和條件執行所有配置和維護活動。有關詳細資訊,請參閱使用基於策略的管理來管理伺服器。 
 ServerGroupAdministratorRole   
ServerGroupReaderRole 
這些資料庫角色的成員可以管理和使用註冊的伺服器組。有關詳細資訊,請參閱建立伺服器組。 
重要提示: 
db_ssisadmin 角色和 dc_admin 角色的成員也許可以將其許可權提升到 sysadmin。之所以會發生此許可權提升,是因為這些角色可以修改 Integration Services 包,而 SQL Server 可以使用 SQL Server 代理的 sysadmin 安全上下文來執行 Integration Services 包。若要防止在執行維護計劃、資料收集組和其他 Integration Services 包時出現此許可權提升,請將執行包的 SQL Server 代理作業配置為使用擁有有限許可權的代理帳戶,或只將 sysadmin 成員新增到 db_ssisadmin 和 dc_admin 角色。

下表說明了用於伺服器級角色的命令、檢視和函式。 功能 型別 說明  
 sp_helpdbfixedrole (Transact-SQL)   →  元資料   →  返回固定資料庫角色的列表。  
 sp_dbfixedrolepermission (Transact-SQL)   →  元資料   →  顯示固定資料庫角色的許可權。  
 sp_helprole (Transact-SQL)   →  元資料   →  返回當前資料庫中有關角色的資訊。  
 sp_helprolemember (Transact-SQL)   →  元資料   →  返回有關當前資料庫中某個角色的成員的資訊。  
 sys.database_role_members (Transact-SQL)   →  元資料   →  為每個資料庫角色的每個成員返回一行。  
 IS_MEMBER (Transact-SQL)   →  元資料   →  指示當前使用者是否為指定 Microsoft Windows 組或 Microsoft SQL Server 資料庫角色的成員。   CREATE ROLE (Transact-SQL)   →  命令   →  在當前資料庫中建立新的資料庫角色。  
 ALTER ROLE (Transact-SQL)   →  命令   →  更改資料庫角色的名稱。   DROP ROLE (Transact-SQL)    →  命令從資料庫中刪除角色。  
 sp_addrole (Transact-SQL)   →  命令   →  在當前資料庫中建立新的資料庫角色。  
 sp_droprole (Transact-SQL)   →  命令   →  從當前資料庫中刪除資料庫角色。  
 sp_addrolemember (Transact-SQL)   →  命令   →  為當前資料庫中的資料庫角色新增資料庫使用者、資料庫角色、Windows 登入名或 Windows 組。   
sp_droprolemember (Transact-SQL)   →  命令   →  從當前資料庫的 SQL Server 角色中刪除安全帳戶。 
public 資料庫角色 
每個資料庫使用者都屬於 public 資料庫角色。如果未向某個使用者授予或拒絕對安全物件的特定許可權時,該使用者將繼承授予該物件的 public 角色的許可權。

相關推薦

SQL Server如何獲取當前年

Select GETDATE() as '當前日期',DateName(year,GetDate()) as '年',DateName(month,GetDate()) as '月',DateName(day,GetDate()) as '日',DateName(dw,GetDate()) as '

sql server一些角色命令函式講解

今天悲劇了,把資料庫中的使用者設定成了db_denydatareader角色,沒有sa的密碼,找了好久。可以使用系統儲存過程將使用者從中移除 exec sp_droprolemember 'db_denydatareader', 'Mssql_NLTS'; 為便於管理資

sql server的全局變量常用的沒有多少...以後看看就行

detail 技術分享 服務 @* version 變量 名稱 tail identity 全局變量格式: @@***   這些變量有系統維護,不需要我們自己定義,一般都是用來查看信息。 在存儲過程中 用得最多的 @@error,判斷有沒有錯誤信息。 一、@@versio

理解SQL Server索引的概念原理

contact 不為 post 學習 分享 最小 div 例子 index 轉自:http://www.cnblogs.com/CareySon/archive/2011/12/22/2297568.html 簡介 在SQL Server中,索引是

T-SQL查詢進階--理解SQL Server索引的概念原理以及其他

工具 def microsoft 需要 blog b- eve 實現 中一 簡介 在SQL Server中,索引是一種增強式的存在,這意味著,即使沒有索引,SQL Server仍然可以實現應有的功能。但索引可以在大多數情況下大大提升查詢性能,在OLAP

sql server的charindex函數用法解析(在一段字符搜索字符或者字符串-----返回expression1在expression2出現的位置;反之返回0)

abcde char 解析 ssi num 結果 -- art pan https://blog.csdn.net/xinghuo0007/article/details/70651358 知識點一:charindex()語法 CHARINDEX ( exp

Mac下如何用SSH連接遠程Linux服務器及Linux一些常用操作命令更新.....

oot .... 地址 密碼 res ini 更新 目錄 讀寫 1、 終端命令   a).打開Mac的命令終端   b).輸入ssh -p 22 [email protected] 它會提示你輸入密碼,輸入正確的密碼之後,你就發現已經登陸成功了.(22: 端口號 roo

(4.18)SQL server 2008一些常見配置之二(鏈接服務器配置訪問其他數據庫)

修改 beta pro ntp 查看版本 collation chang 手工 lin SQL server 2008一些常見配置之二(鏈接服務器配置,訪問其他數據庫) 一、訪問Oracle數據庫 Oracle是目前排名第一的數據庫,一般對數據安全和

SQL server while迴圈的使用方法將day表的資料累加到sum表

       因為在保險行業工作,在統計資料的時候會遇到將每天的資料累加起來作為年累計的資料落到sum表中。涉及公司的機密就不把實際的表結構和資料展示,我重新建立一些測試表來說明while迴圈的神奇之處,day的資料累加到sum表中。 一、準備資料表t

SQL Server的日期時間組合查詢

如圖所示,Jdate和Jdate2是兩個分開的欄位,一個是date型別,儲存日期,一個是time(0)型別,儲存具體時間 現在有這樣的要求,就是獲得(Jdate和Jdate2組合起來的日期時間)在(當前日期時間之後)的資料 一開始我是用的SQL語句是  select * from tab

SQL server刪除synonym時報不存在或者您沒有所需的許可權

sql server 2008  使用sa登入的。建立了synonym成了,但是刪除時發生下面的錯誤資訊: 建立>create synonym dbo.test1  for table_test; 檢視所有同義詞>select * 

使用Setup Factory 打包軟體安裝時自動建立資料庫及資料庫的表(效果類似sql server的附加資料庫操作)

前提:已安裝Setup Fatory軟體、我使用的是 安裝工廠永樂漢化版,需要的請自行下載安裝 下面只列出關鍵性步驟,黃色字型較為關鍵,是一個出錯點   步驟一(關鍵):生成資料庫備份檔案,以及建表sql指令碼,和bat命令檔案 備份資料庫,生成檔案1,.bak檔

SQL Server的datedatetimedatetimeoffset和datetime2(7)的區別

       在資料庫時錯誤很多,昨天在日期上也出現了一個小小的錯誤,這可能就會涉及到輸入日期的數值型別了。SQL Server中有四個日期型別:date,datetime,datetimeoffset和datetime2(7)。那麼這幾個又有什麼區別呢

SQL Server事務日誌管理的階梯級別5:以完全恢復模式管理日誌

value letter 的確 維護計劃 臨時 行數 dbo call des 該系列本文是Stairway系列的一部分:SQL Server中事務日誌管理的階梯 當事情進展順利時,沒有必要特別註意事務日誌的功能或工作方式。您只需要確信每個數據庫都有正確的備份機制。當出現問

SQL Server索引的概念原理以及其他

在SQL Server中,索引是一種增強式的存在,這意味著,即使沒有索引,SQL Server仍然可以實現應有的功能。但索引可以在大多數情況下大大提升查詢效能,在OLAP中尤其明顯.要完全理解索引的概念,需要了解大量原理性的知識,包括B樹,堆,資料庫頁,區,填充因子,碎片

SQL Server事務日誌管理的步驟第5級:完全恢復模式管理日誌(譯)

維護計劃 recover 最小 替代 關心 每日 工作方式 檢查 耗時 SQL Server中事務日誌管理的步驟,第5級:完全恢復模式管理日誌 作者:Tony Davis,2012/01/27 系列 本文是進階系列的一部分:SQL Server中事務日誌管理的步驟 當事情進

SQL Server事務日誌管理的步驟第5級:完全恢復模式管理日誌

語句 targe .aspx 頻率 良好的 popu 這樣的 模式 insert SQL Server中事務日誌管理的步驟,第5級:完全恢復模式管理日誌 作者:Tony Davis,2012/01/27 系列 本文是進階系列的一部分:SQL Server中事務日誌管理的

翻譯:SQL Server事務日誌管理的階梯級別5:以完全恢復模式管理日誌

作者:Tony Davis, 2012/01/27 該系列 本文是Stairway系列的一部分:SQL Server中事務日誌管理的階梯 當事情進展順利時,沒有必要特別注意事務日誌的功能或工作方式。您只需要確信每個資料庫都有正確的備份機制。當出現問題時,瞭解事務日誌對於採取糾正措施非常重要,尤

翻譯之:SQL Server事務日誌管理的階梯級別5:以完全恢復模式管理日誌

資料庫中事務日誌管理的階梯,級別5:以完全恢復模式管理日誌 原文連結:http://www.sqlservercentral.com/articles/Stairway+Series/73785/ 作者:Tony Davis, 2012/01/27 本文是樓梯系列的一部分:SQL Server

翻譯:Stairway to Transaction Log Management in SQL Server, Level 5: Managing the Log in Full Recovery Mode SQL Server事務日誌管理的階梯級別5:以完全恢復模式管理日誌

轉載自:Stairway to Transaction Log Management in SQL Server, Level 5: Managing the Log in Full Recovery Mode SQL Server,By Tony Davis,文章來源:http://www.sqlserve