sql-server数据库基础知识五(用户、角色、权限)

一、用户

创建用户

1.

use test

create user zhang;

创建一个zhang用户,该用户只具有登陆test数据库的权限,不能进行其他操作。

2.

use test

create user zhu with resource;

创建一个zhu用户,该用户可以创建表格、视图,不能创建模式、用户,可以对其他用户再授予自己的权限。


3.

use test

create user wang with dba;

创建一个wang用户,该用户是超级用户,可以创建用户、模式、表格、视图、可以对表格进行更改,更新,可以授权给其他用户。


二、服务器角色和数据库角色,简单来说就是一些权限的集合 。

先将数据库角色


创建角色

1、use test

create role R;

这句是创建一个R角色,但是R角色并没有任何权限。


2、

use test

grant insert, delete

on student

to R;

这句sql语句是将插入和删除操作的权限授予了角色R,以后可以直接将角色R授予单个或则一些用户。


3、

use test

grant R

to zhu, wang;

这句sql语句是将角色R授予用户zhu和wang,他们都具有了R角色的权限,即插入和删除操作。


4、一次性收回权限,可以直接通过角色来完成。

use tes

revoke R

from zhu, wang;

这句sql语句就是将用户zhu和wang的插入和删除权限收回。


服务器角色

服务器角色是将对服务器的各种操作授予某个登陆名,登陆可以是用户名,也可以不是用户名,如sa是登录名,用户名是dbo。

相应的服务器角色对应相应的权限;

如下;

sysadmin 
执行SQL Server中的任何动作,也是对任何数据库的任何操作的权限。

serveradmin 
配置服务器设置,并可使用SHUTDOWN来停止实例的权限。

setupadmin 
向该服务器角色中添加其他登录,添加、删除或配置链接的服务器,执行一些系统过程,如sp_serveroption。

securityadmin 
用于管理登录名、读取错误日志和创建数据库许可权限的登录名,可以执行关于服务器访问和安全的所有动作。

processadmin 
管理SQL Server进程,在实例中杀死其他用户进程的权限。

dbcreator 
创建和修改数据库

diskadmin 
管理物理数据库的权限。 
bulkadmin

向数据库批量插入数据的权限(SqlServer2005中被添加进来)

public

本身不授予其他成员任何权限。只有连接权限。

三、权限


1.将school数据库中student表格查询权限授给用户zhang,但是zhang不能再授给他人

use school

grant select

on student

to zhang;


2.将school中的student表格查询权限授给用户zhang,zhang可以再授给他人

use school

grant select

on student

to zhang

with grant option;


3.revoke回收权限

收回zhang的修改学生学号的权限

use school

revoke update(Sno)

on student

from zhang;

猜你喜欢

转载自blog.csdn.net/stay_zezo/article/details/78306502