快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

澳门新匍京1_龟发之家论坛



SQL Server 2008 和 SQL Server 2005 比旧版安然的诸多方面之一便是改进了权限的粒度。曩昔,治理员必须赋予用户固定办事器角色或固定命据库角色的成员,以履行特定的操作,但这些角色的权限平日会远远越过简单义务的必要。“起码特权”的原则要求用户只能拥有完成事情所需的最低权限,是以为达到小目标而分配用户高档角色就违抗了该原则。

从 SQL Server 2000开始,固定办事器和数据库角色集已发生了伟大年夜变更,当用户或利用法度榜样必要所有或大年夜多半已定义的权限时,仍可使用这些预定义的权限。或许最大年夜的变更便是添加了 public 办事器角色。然则,“起码特权”的原则要求用户不能应用无法正好供给主体完成事情所需权限的角色。虽然为发明及分配主体所需权限必要更多事情,但这会带来加倍安然的数据库情况。

主体和安然实体

在 SQL Server 2008中,“主体”便是可以造访受保护资本且能得到造访资本所需权限的任何小我、组或流程。与旧版 SQL Server 一样,可以在 Windows 中定义主体,也可将没有对应 Windows 主体的 SQL Server 登录作为其根基。下面的列表显示了 SQL Server 2008主体的层次布局,但不包括固定办事器和数据库角色,还显示了将登录和数据库用户映射为安然工具的措施。主体的影响范围取决于它的定义范围,这样 Windows 级其余主体就比 SQL Server 级其余主体拥有更大年夜的影响范围,而后者的影响范围又大年夜于数据库级其余主体。每个数据库用户都邑自动附属于固定的 public 角色。

Windows 级其余主体

Windows 域登录

Windows 本地登录

Windows 组

SQL Server 级其余主体

SQL Server登录

映射为 Windows 登录的 SQL Server 登录

映射为证书的 SQL Server 登录

映射为纰谬称密钥的 SQL Server 登录

数据库级其余主体

数据库用户

映射为 SQL Server 登录的数据库用户

映射为 Windows 登录的数据库用户

映射为证书的数据库用户

映射为纰谬称密钥的数据库用户

数据库角色

利用法度榜样角色

公共角色

授权的另一部分便是可用以保护权限赋予操作或回绝赋予操作的工具。图4列出了SQL Server 2008 中安然实体工具的层次布局。在办事器级别,可以保护收集端点,以节制收支办事器的通信通道,以及数据库、绑定角色和登录。在数据库和架构级别,用户创建的每一个工具都被算作安然主体,包括那些驻留在架构中的工具。

办事器

数据库

端点

远程绑定

路由

SQL Server登录

数据库

利用法度榜样角色

法度榜样集

纰谬称密钥

证书

数据库用户

固定命据库角色

全文目录

消息类型

办事

办事条约

对称密钥

架构

默认

函数

历程

查询状态

行列步队

规则

同义词澳门新匍京1

触发器

类型

视图

XML架构聚拢

498)this.style.width=498;'height=254 alt=图1 src="http://www.51cto.com/files澳门新匍京1/uploadimg/20090416/1803180.gif" width=448>

图1:SQL Server 2008中的安然实体工具层次布局

角色和权限

要懂得可在 SQL Server 中可用的权限数量,可以调用 fn_builtin_permissions 系统函数:

SELECT * FROM sys.fn_builtin_permissions(default)

下面是 SQL Server 2005 中的新权限类型:

CONTROL。赋予与所有者类似的权限,可有效地将所有已定义的权限赋予工具及其范围内的所有工具,包括能够赋予其他被赋予者任何权限。CONTROL SERVER 相称于赋予 sysadmin 特权。

ALTER。赋予权限以变动安然实体工具的任何属性,但改动所有权除外。从本色上讲,它将为同一范围内的 ALTER、CREATE 或 DROP 安然实体工具赋予权限。例如,为数据库赋予 ALTER 权限就可以改动它的表。

ALTER ANY 安然实体工具>。赋予权限以改动指定类型的任何安然实体工具。例如,赋予 ALTER ANY ASSEMBLY 就可以改动数据库中的任何 .NET 法度榜样集,而在办事器级别赋予 ALTER ANY LOGIN,则用户将可改动该办事器上的任何登录。

IMPERSONATE ON 登录或用户>。 赋予权限以扮演特定用户或登录。本章稍后将讲到,该权限是为存储历程切换履行高低文所必需的。在以批处置惩罚要领履行扮演时也必要该权限。

TAKE OWNERSHIP。赋予权限以包管得到对安然实体的所澳门新匍京1有权,应用的是 ALTER AUTHORIZATION 语句。

SQL Server 2008 仍旧应用大年夜家认识的 GRANT、DENY 和 REVOKE 架构,将安然实体工具的权限分配或回绝分配主体。GRANT 语句现在供给了所有的新权限选项,如赋予范围以及主体是否能够向其他主体赋予权限等。SQL Server 不容许应用跨数据库权限。要赋予此类权限,要在每个数据库中创建复制用户,并分手为各个数据库的用户分配该权限。

与旧版 SQL Server 类似,激活利用法度榜样角色时,其他权限在角色激活时代内都邑被暂时取消。然后,在 SQL Server 2008 和 SQL Server 2005中,可以取消设置利用法度榜样角色。SQL Server 2000 与新版本之间的另一个差别便是,在激活利用法度榜澳门新匍京1样角色时,角色也会暂时取消任何办事器特权,包括 public。例如,如为 public 赋予 VIEW ANY DEFINITION,则利用法度榜样角色将不会容许应用该权限。在利用法度榜样角色高低文中造访办事器级元数据时,这一点最显着。

注释 利用法度榜样角色的新首选替代措施便是在代码模块中应用履行高低文。有关更多信息,请参阅本文的“履行高低文”部分。

赋予特定权限隐含地可以传送其他权限的权利。例如,架构的 ALTER 权限“涵盖”更细的粒度和初级权限,这些都是隐式定义的。图5为 ALTER SCHEMA 的隐含权限。请参阅 SQL Server Books Online 上的“Covering/Implied Permissions (Database Engine)”,以懂得ImplyingPermissions 用户定义函数的 Transact-SQL 代码,该函数从sys.fn_builtin_permissions目录视图中网络层次布局列表,并识别层次布局中每种权限的深度。在主数据库中添加 ImplyingPermissions 后,履行该语句将孕育发生图5的结果,传入工具和权限类型:

SELECT * FROM master.dbo.ImplyingPermissions('schema', 'alter')

ORDER BY height, rank

这是浏览 SQL Server 2008 权限层次布局的抱负措施。

498)this.style.width=498;'height=1澳门新匍京156 alt=图2 src="http://www.51cto.com/files/uploadimg/20090416/1803181.gif" width=341 border=0>

图2:ALTER SCHEMA 的隐含权限层次布局

斟酌可用的主体数量和类型、办事器和范例数据库中的安然实体工具数量,以及可用权限、涵盖权限、隐含权限的数量时,会很轻易发明 SQL Server 2008中的权限的粒度异常细。创建数据库必要对其安然必要进行更具体的阐发,并审慎节制所有工具的权限。不过,这种阐发事情是值得做的,应用SQL Server 2008中的这些功能会使数据库加倍安然。

SQL Server 2008数据集成办事简介

在SQL Server 2008中治理报表办事

使用SQL Server 2008进行自动化治理

您可能还会对下面的文章感兴趣: