1.安全机制
1.1安全验证方式
安全验证方式即用户登录,这是SQL Server安全实施安全性的第一步。
SQL Server提供2种验证模式:Window身份验证模式和混合模式。
Window身份验证模式:SQL Server把登录验证的任务交给了Windows操作系统,用户要通过Windows的验证,就可以连接到SQL Server服务器。
混合模式:该模式下即可使用Window身份验证和SQL Server身份验证。
设置验证模式
服务器名称-》(右击)属性-》设置验证方式-》重启SQL Server
1.2创建Window登录账户
开始-》控制面板-》管理工具-》计算机管理-》本地用户和组-》用户-》新建
1.3创建SQL Server登录账户
安全性-》登录名-》(右击)新建登录名-》
选择数据库角色成员身份和数据库用户
1.4删除登录账户的登录名
DROP LOGIN login_name
在SMSS中直接删除
2.角色与权限
按照角色的作用范围,可以分为4类:固定服务器角色、数据库角色、自定义数据库角色和应用程序角色。
固定服务器角色
固定的数据库角色
自定义数据库角色
将登陆指派到角色
服务器下-》登录名-》目标登录名-》属性-》服务器角色-》复选框中勾选服务器角色
如果要执行库角色,代课“用户映射”选项
将角色指派到多个登录账户
服务器下-》安全性-》服务器角色-》目标服务器角色-》属性-》添加成员
数据权限管理
根据是否系统预定义,可以把权限划分为预定义权限和自定义权限;按照权限与特定对象的关系,可以把权限划分为针对所有对象的权限和针对特殊对象的权限。
预定义权限和自定义权限
固定服务器角色和固定数据库角色属于预定义权限。
自定义权限需要通过授权或者继承才可以得到的权限,大多数安全主体都需要经过授权才能获得指定对象的使用权限。
所有对象和特殊对象的权限
所有对象权限可以针对SQL Server中所有数据库对象,CONTROL权限可用于所有对象。
特殊对象权限是指那些只能在指定对象上执行的权限,例如SELECT可用于表或者视图,但是不可用于存储过程1;而EXEC只能用于存储过程,而不能用于表或者视图。
针对表或视图,数据用户在操作这些对象之前必须拥有相应的操作权限,可以授予数据库用户的针对表或视图的权限有INSERT、UPDATE、DELETE、SELECT和REFERENCES 五种。
用户只有获得了针对某种对象特定的权限后,才能对该对象执行相应的操作不同的对象有不同的权限,权限管理包括下面的内容:授予权限、拒绝权限和撤销权限。
1授予权限
GRANT { ALL [ PRIVILEGES ] }
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
[ ON [ class :: ] securable ] TO principal [ ,...n ]
[ WITH GRANT OPTION ] [ AS principal ]
2.拒绝权限
DENY { ALL [ PRIVILEGES ] }
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
[ ON [ class :: ] securable ] TO principal [ ,...n ]
[ CASCADE ] [ AS principal ]
3.撤销权限
REVOKE [ GRANT OPTION FOR ]
{
[ ALL [ PRIVILEGES ]
| permission [ ( column [ ,...n ] ) ] [ ,...n ]
}
[ ON [ class :: ] securable ]
{ TO | FROM } principal [ ,...n ]
[ CASCADE ] [ AS principal ]