给数据库创建登录名时,需要向用户授予服务器范围内的操作权限,如上图,参考:
bulkadmin | 可以运行bulk insert语句 |
---|---|
dbcreater | 可以创建、更改、删除和还原任何数据库 |
diskadmin | 管理磁盘文件,比如镜像数据库和添加备份设备 |
prosessadmin | 多任务化可以通过执行多个进程执行多件事 |
securityadmin | 管理登录名和属性 |
serveradmin | 可以更改服务器范围内的配置选项和关闭服务器 |
setupadmin | 为需要管理链接服务器和空值启动的存储过程的用户设定,能增加、配置和删除链接服务器,并能空值启动过程 |
sysadmin | 执行任何任务 |
public | 初始状态时没有权限,所有数据库都有他的成员 |
再给数据库用户 映射角色成员身份的时候可以发现有如下图所示的几种身份。参考:
db_owner | 在数据库中执行任何操作 |
---|---|
db_accessadmin | 从数据库中增加或删除用户 |
db_backupopperator | 允许备份数据库 |
db_datareader | 允许从任何表中读取数据 |
db_datawriter | 允许往任何表中写入数据 |
db_ddladmin | 允许增加、修改和删除任何对象 |
db_denydatareader | 拒绝查看任何数据,但可以通过存储过程查看 |
db_denydatawriter | 拒绝修改任何数据,但可以通过存储过程修改 |
db_securityadmin | 可以更改数据库中的权限和角色 |
db_denydatareader | 拒绝查看任何数据,但可以通过存储过程查看 |
db_denydatawriter | 拒绝修改任何数据,但可以通过存储过程修改 |
db_securityadmin | 可以更改数据库中的权限和角色 |
public | 每个数据库角色都属于public角色,当尚未对某个用户授予或拒安全对象的特定权限时,该用户将授予该安全对象的public角色权限,且不能删除。 |