【转】在SQL Server中创建用户角色及授权(使用SQL语句)
1. 首先在 SQL Server 服務(wù)器級(jí)別,創(chuàng)建登陸帳戶(create login)
--創(chuàng)建登陸帳戶(create login)
create login dba with password='abcd1234@', default_database=mydb
登陸帳戶名為:“dba”,登陸密碼:abcd1234@”,默認(rèn)連接到的數(shù)據(jù)庫:“mydb”。 這時(shí)候,dba 帳戶就可以連接到 SQL Server 服務(wù)器上了。但是此時(shí)還不能 訪問數(shù)據(jù)庫中的對(duì)象(嚴(yán)格的說,此時(shí) dba 帳戶默認(rèn)是 guest 數(shù)據(jù)庫用戶身份, 可以訪問 guest 能夠訪問的數(shù)據(jù)庫對(duì)象)。
要使 dba 帳戶能夠在 mydb 數(shù)據(jù)庫中訪問自己需要的對(duì)象, 需要在數(shù)據(jù)庫 mydb 中建立一個(gè)“數(shù)據(jù)庫用戶”,賦予這個(gè)“數(shù)據(jù)庫用戶” 某些訪問權(quán)限,并且把登陸帳戶“dba” 和這個(gè)“數(shù)據(jù)庫用戶” 映射起來。 習(xí)慣上,“數(shù)據(jù)庫用戶” 的名字和 “登陸帳戶”的名字相同,即:“dba”。 創(chuàng)建“數(shù)據(jù)庫用戶”和建立映射關(guān)系只需要一步即可完成:
2. 創(chuàng)建數(shù)據(jù)庫用戶(create user):
--為登陸賬戶創(chuàng)建數(shù)據(jù)庫用戶(create user),在mydb數(shù)據(jù)庫中的security中的user下可以找到新創(chuàng)建的dba
create user dba for login dba with default_schema=dbo
并指定數(shù)據(jù)庫用戶“dba” 的默認(rèn) schema 是“dbo”。這意味著 用戶“dba” 在執(zhí)行“select * from t”,實(shí)際上執(zhí)行的是 “select * from dbo.t”。
3. 通過加入數(shù)據(jù)庫角色,賦予數(shù)據(jù)庫用戶“dba”權(quán)限:
--通過加入數(shù)據(jù)庫角色,賦予數(shù)據(jù)庫用戶“db_owner”權(quán)限
exec sp_addrolemember 'db_owner', 'dba'
此時(shí),dba 就可以全權(quán)管理數(shù)據(jù)庫 mydb 中的對(duì)象了。
如果想讓 SQL Server 登陸帳戶“dba”訪問多個(gè)數(shù)據(jù)庫,比如 mydb2。 可以讓 sa 執(zhí)行下面的語句:
--讓 SQL Server 登陸帳戶“dba”訪問多個(gè)數(shù)據(jù)庫
use mydb2
go create user dba for login dba with default_schema=dbo
go exec sp_addrolemember 'db_owner', 'dba' go
此時(shí),dba 就可以有兩個(gè)數(shù)據(jù)庫 mydb, mydb2 的管理權(quán)限了!
完整的代碼示例
?
轉(zhuǎn)載于:https://www.cnblogs.com/yunspider/p/7719714.html
總結(jié)
以上是生活随笔為你收集整理的【转】在SQL Server中创建用户角色及授权(使用SQL语句)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: easyUI 学习网站
- 下一篇: SQL记录-PLSQL异常