sql2005安全管理

来源:互联网 发布:一号店和淘宝的区别 编辑:程序博客网 时间:2024/04/30 04:04

先创建登录名,可以是windows登录名也可以sql登录名
windows登录名是windows操作系统已经存在的用户名
sql登录名要在sql中创建而得的
要创建windows登录名:
例如:已经在windows中存在一个pkxz用户,域名是xxiang
create login [xxiang/pkxz] from windows with  default_database = css
alter login pkxz with name=ppp
drop login pkxz

注意:只有administrators组的用户可以访问所有实例,并可获所有访问权,
其余本地用户组里的组,只能相对应的访问实例。
例如:chenshanshan是users用户组里的,是[xxinag2006/pkxz]实例的域用户帐户,
chenshanshan只能访问这个实例,并可获所有访问权。
例如:joan是users用户组里的,是[xxinag2006/pkxz]实例的登录名,joan只能访问这个实例。
要创建sql登录名:
sql用户名是pkxz
create login pkxz with password ='xx121314' , default_database = css
alter login pkxz with password = 'pp'
drop login pkxz

注意:sql用户名只能相对应的访问实例
例如:pc是[xxiang/pkxz]的登录名,只能访问这个实例,不可访问别的实例。

两者都创建了登录名,且都是css为默认数据库

然后创建完后把登录名授予角色

sp_addsrvrolemember 'pkxz','sysadmin'
sp_dropsrvrolemember 'pkxz','sysadmin'

服务器角色只能访问相对应的实例操作!不能访问别的实例!

创建用户
Ceate user pkxz_user from login pkxz with default_schema = pkxz_schema
如果没有创建架构的话,默认是dbo架构,这里是pkxz_schema

创建架构
创建架构的同时还可以创建该架构所拥有的表,视图,羡慕且可以对这些对象设轩权限。
create schema pkxz_schema authorization pkxz_user
Create Table pp (pp int)
Grant Select To pkxz_user_1

数据库角色
可以自己添加,还有内置固定数据库角色
自己添加角色
create role CreateTable authorization pkxz_user // CreateTable是角色名
分配权限
Grant Insert To CreateTable
添加成员
sp_addrolemember 'CreateTable','pkxz_user_1'

public角色的两个特点,1、初始状态没有权限 2、所有的数据库的成员都是他的成员
当修改了public角色,其实更改了所有数据库成员的权限

权限的管理

Grant 授予 Revoke 收回权限 Deny 否认权限
例如:将一个表pt的插入权限授予pkxz_user_1
Grant Insert On pt To pkxz_user_1