第7章SQLServer安全管理.pptVIP

  • 12
  • 0
  • 约1.38万字
  • 约 50页
  • 2016-11-30 发布于天津
  • 举报
第7章SQLServer安全管理

《SQL Server 2008 数据库管理与应用实例教程》 1.理解架构 2.创建架构 【例7-11】在成绩管理数据库中创建S_CZY架构,所有者U_CZY1。 USE 成绩管理 CREATE SCHEMA S_CZY AUTHORIZATION U_CZY1 7.3.3 架构 《SQL Server 2008 数据库管理与应用实例教程》 修改架构是指将特定架构中的对象转移到其他架构中。修改架构转移对象并不会改动对象本身。需要注意的是,由于对象的权限是与所属的架构紧密关联的,当将对象转移到新架构时,与该对象关联的所有权限都被删除。 可以使用ALTER SCHEMA语句完成对架构的修改,其基本语法如下: ALTER SCHEMA 目标架构名 TRANSFER 原架构名.对象名 可以使用ALTER AUTHORIZATION语句修改架构的所有者,其基本语法如下: ALTER AUTHORIZATION ON [ 实体类型 ::] 实体名 TO { SCHEMA OWNER | 主体名 } 对象类型 ::= { Object | Type | XML Schema Collection | Fulltext Catalog | Fulltext Stoplist | Schema | Assembly | Role | Message Type | Contract | Service | Remote Service Binding | Route | Symmetric Key | Endpoint | Certificate | Database } ALTER AUTHORIZATION语句不仅可修改架构的所有者,还可以修改其他类型对象的所有者。 3.修改架构 《SQL Server 2008 数据库管理与应用实例教程》 【例7-12】将成绩管理数据库中学生表xs转移到S_CZY架构下。 USE 成绩管理 ALTER SCHEMA S_CZY TRANSFER dbo.xs 从某个架构中转移对象,一般不会影响所转移对象的定义,如生产商表与其他表的外键关系,但是会对某些对象有影响,例如,如果将原表之间的关系保存为关系图,那么架构的转换会是关系图存放的信息发生变化,影响到关系图的内容。 【例7-13】将成绩管理数据库中SC1架构的所有者改为dbo用户。 USE 成绩管理 ALTER AUTHORIZATION ON SCHEMA::S_CZY TO dbo 《SQL Server 2008 数据库管理与应用实例教程》 如果希望查看数据库中的架构信息,可以使用sys.schemas架构目录视图。该视图包含了数据库中架构的名称、架构的标识符、架构所有者的标识符等信息。 【例7-14】在成绩管理数据库中查看架构的用户及角色信息。 USE 成绩管理 SELECT * FROM sys.schemas 如果架构已经没有存在的必要了,可以使用DROP SCHEMA语句删除架构,其基本语法如下: DROP SCHEMA 架构名 删除架构时需要注意,如果架构中包含有任何对象,那么删除操作失败。只有当架构中不再包含有对象时,才可以被删除。 4.查看架构信息及删除架构 《SQL Server 2008 数据库管理与应用实例教程》 7.4.1 固定数据库角色 数据库角色是数据库级别的主体。数据库角色分为固定数据库角色和用户定义的数据库角色。 1.固定数据库角色 2.public角色 7.4.2 用户定义数据库角色 用户定义的数据库角色应用包括创建角色、给角色添加成员、给角色授权或撤销,删除角色成员、删除角色等。 7.4 数据库角色 《SQL Server 2008 数据库管理与应用实例教程》 【例7-15】在成绩管理数据库中创建ROLE_CZY角色。 USE 成绩管理 CREATE ROLE ROLE_CZY 【例7-16】在当前数据库中查看所有角色信息。 SELECT * FROM sys.database_principals 可以查看所有角色即其他主体的名称、主体ID、类型(角色类型为R)等信息。 在SSMS中,还可以在对象资源管理器中使用交互方式更改数据库角色名称和删除数据库角色。操作方法与操作用户等对象相似。 早期SQL Server版本使用系统存储过程创建和删除数据库角色,基本语法如下: sp_addrole‘数据库角色名’ sp_droprole ‘数据库角色名’ 《SQL Server 2008 数据库管理与应用实例教程》 1.添加数据库角色成员 可以使用系统存储过程SP_ADDROLEMEMBER向数据库角色中添加一个成员。存储过程的基本语法如下: SP_ADDROLEMEMBER [@rolename=]

文档评论(0)

1亿VIP精品文档

相关文档