系统安全管理
--9.1使用命令方式创建WINDOWS登录名tao(假设windows用户tao以及创建,本地计算机名为BD7E57C949A420)默认数据库设为PXSCJ
CREATE LOGIN [0BD7E57C949A420\tao]
FROM WINDOWS
WITH DEFAULT_DATABASE = PXSCJ
--9.2创建SQL Sever登录名sql_tao,密码为,默认数据库设为pxscj
CREATE LOGIN sql_tao
WITH PASSWOED='123456',
DEFAULT_DATABASE=PXSCJ
--9.3删除windows登陆名tao
DROP LOGIN [0BD7E57C949A420\tao]
--9.4删除sl登录名sql_tao
DROP LOGIN sql_tao
--9.5使用sql登录名sql——tao(假设已经创建)在pxscj数据库中创建数据库用户tao,默认架构名使用dbo
CREATE USER tao
FOR LOGIN sql_tao
WITH DEFAULT_SCHEMA=dbo
--9.6删除pxscj数据库的用户tao
DROP USER tao
USE PXSCJ
GO
--9.7将windows登录名BD7E57C949A420\liu添加到sysadmin固定服务器角色中
EXEC sp_addsrvrolemember '0BD7E57C949A420\liu','sysadmin'
--9.8从sysadmin固定服务器中删除sql sever登录名david
EXEC sp_dropsrvrolemember 'david','sysadmin'
--9.9将数据库pxscj上的数据库用户david添加为固定数据库角色db_owner的成员
EXEC sp_addrolemember 'db_owner','david'
--9.10将数据库用户david从db——owner中除去
EXEC sp_droprolemember 'db_owner','david'
--9.11在当前数据库中创建名为ROLE2的新角色,并制定dbo为该角色的所有者
CREATE ROLE ROLE2
AUTHORIZATION dbo
--9.12使用windows身份验证迷失的登录名创建pxscj数据库的用户,并将该用户添加到ROLE1数据库角色中
CREATE USER [0BD7E57C949A420\liu]
FROM LOGIN [0BD7E57C949A420\liu]
GO
EXEC sp_addrolemember 'ROLE1','wang'
--9.14将数据库角色ROLE2添加到ROLE1中
EXEC sp_addrolemember 'ROLE1','ROLE2'
--9.15删除数据库角色ROLE2
DROP ROLE ROLE2
--9.16给pxscj数据库上的用户david和wang授予创建表的权限
--以系统管理员的方身份登录sql,新建一个查询,输入以下语句
GRANT CREATE TABLE
TO david,wang
GO
--9.17首先在数据库pxscj中给public角色授予表XSB的SELECT 权限.然后,将其他一些权限授予
--用户david和wang,使用户有对表XSB的所有操作权限
--已系统管理员身份登录SQL SEVER,新建一个查询,输入以下语句
USE PXSCJ
GO
GRANT SELECT
ON XSB
TO public
GO
GRANT INSERT,UPDATE DELTE,REFERNCES
ON XSB
TO david,wang
GO
--9.18将CREATE ABLE 权限授予数据库角色ROLE1的所有成员
--已系统管理员身份登录SQL SEVER,新建一个查询,输入以下语句
GRANT CREATE TABLE
TO ROLE1
--9.19已系统管理员身份登录SQL SEVER,将表XSB的SELECT权限授予ROLE2角色(指定WITH GRANT OPTION子句)
--用户是li是ROLE2的成员,在li用户上将表XSB上的SELECT权限授予用户huang,huang不是ROLE2的成员
--以系统管理员身份连接SQL SEVER,授予角色ROLE2在表XSB上的SELECT权限
GRANT SELECT
ON XSB
TO ROLE2
WITH GRANT OPTION
--9.20在当前数据库pxscj中给public角色富裕对表XSB中学号,姓名字段,
--以系统管理员身份登录SQL SEVER,新建一个查询,输入以下语句
GRANT SELECT
(学号,姓名) ON XSB
TO public
--9.21对多个用户不允许使用CREATE VIEW和CREATE TABLE语句
DENY CREATE VIEW,CREATE TABLE
TO li,huang
GO
--9.22拒绝用户li,huang,[0BD7E57C949A420\liu]对表XSB进行一些权限,这样,这些用户就没有对表XSB的操作权限了
DENY SELECT,INSERT,UPDATE,DELETE
ON XSB TO li,huang,[0BD7E57C949A420\liu]
GO
--9.23对所有的ROLE2角色成员拒绝CREATE TABLE权限
DENY CREATE TABLE
ON ROLE2
--9.24取消已授予用户wang的CREATE TABLE权限
REVOKE CREATE TABLE
FROM wang
--9.25取消已授予多个用户的多个语句权限
REVOKE CREATE TABLE,CREATE DEFAULT
FROM wang,li
--9.26取消对以前wang授予或拒绝的在表XSB上的SELECT 权限
REVOKE SELECT
ON XSB
FROM wang
--9.27角色ROLE2在表XSB上拥有的SELECT权限,用户li是ROLE2的成员,li使用WITH GRANT OPTION 子句
--将SELECT权限转移给了用户黄,用户huang不是ROLE2的成员.现要以用户li的身份撤销用户huang的SELECT权限
--以用户li的身份登录SQL SEVER服务器
REVOKE SELECT
ON XSB
TO huang
AS ROLE2
--9.28创建架构test_schema,对其所有者为用户david
CREATE SCHEMA test_schema
AUTHORIZATION david
--删除
DROP SCHEMA test_schema

浙公网安备 33010602011771号