授予数据库权限(分析服务)

如果您以前从事关系型数据库的工作,并开始管理 Analysis Services 数据库,首先需要了解的是,在数据访问方面,数据库在 Analysis Services 中不是主要的安全对象。

Analysis Services 中的主要查询结构是立方体(或表格模型),用户权限在这些特定对象上设置。 与关系数据库引擎的对比是,关系数据库通常在其本身上设置数据库登录名和用户权限,而 Analysis Services 数据库主要是作为数据模型中主要查询对象的容器。 如果你的直接目标是为多维数据集或表格模型启用数据访问,则可以暂时绕过数据库权限,直接转到本主题:授予多维数据集或模型权限(Analysis Services)。

Analysis Services 中的数据库权限可启用管理功能;总体而言,您可以像使用完全控制数据库权限那样进行广泛管理,也可以在委派处理操作时使用更精细化的权限设置。 Analysis Services 数据库的权限级别在“创建角色”对话框的“常规”窗格中指定,如下图所示,并在下文说明。

Analysis Services 中没有登录名。 只需在 “成员身份 ”窗格中创建角色并分配 Windows 帐户。 所有用户(包括管理员)都使用 Windows 帐户连接到 Analysis Services。

显示数据库权限的创建角色对话框

数据库级别指定了三种类型的权限。

完全控制(管理员) • 完全控制 是一种涵盖全部的权限,它传达了 Analysis Services 数据库的广泛权限,例如查询或处理数据库中的任何对象的能力,以及管理角色安全性。 完全控制是数据库管理员状态的同义词。 选择 Full Control 时,Process DatabaseRead Definition 权限也会被自动选择,且无法取消选择。

注释

服务器管理员(服务器管理员角色的成员)也对服务器上的每个数据库具有隐式完全控制。

Process Database ~ 此权限用于在数据库级别委托处理。 作为管理员,可以通过创建一个角色来卸载此任务,该角色允许其他用户或服务调用数据库中任何对象的处理作。 或者,还可以创建角色,以便对特定对象启用处理。 有关详细信息 ,请参阅“授予进程权限”(Analysis Services )。

Read Definition • 此权限授予读取对象元数据的能力,减去查看关联数据的能力。 通常,此权限用于创建用于专用处理的角色,并添加了使用 SQL Server Data Tools 或 SQL Server Management Studio 等工具以交互方式处理数据库的功能。 如果没有 Read Definition权限,权限 Process Database 仅在脚本方案中有效。 如果计划通过 SSIS 或其他调度程序自动化处理,你可能需要创建一个包含 Process Database 但不包含 Read Definition 的角色。 否则,请考虑将这两个属性组合在同一角色中,以支持通过可视化用户界面中的数据模型的 SQL Server 工具进行无人参与和交互式处理。

完全控制(管理员)权限

在 Analysis Services 中,数据库管理员是指任何被分配至具有完全控制(管理员)权限角色的 Windows 用户身份。 数据库管理员可以在数据库中执行任何任务,包括:

  • 处理对象

  • 读取数据库中所有对象的数据和元数据,包括多维数据集、维度、度量值组、透视和数据挖掘模型

  • 通过添加用户或权限来创建或修改数据库角色,包括将用户添加到具有完全控制权限的角色

  • 删除数据库角色或角色成员身份

  • 为数据库注册程序集(或存储过程)。

请注意,数据库管理员不能添加或删除服务器上的数据库,也不能向同一服务器上的其他数据库授予管理员权限。 该权限仅属于服务器管理员。 有关此权限级别的详细信息 ,请参阅“授予服务器管理员权限”(Analysis Services )。

由于所有角色都是用户定义的,因此我们建议你创建一个专用于此用途的角色(例如,名为“dbadmin”的角色),然后相应地分配 Windows 用户和组帐户。

在 SSMS 中创建角色

  1. 在 SQL Server Management Studio 中,连接到 Analysis Services 实例,打开 “数据库” 文件夹,选择一个数据库,然后右键单击“ 角色 | 新建角色”。

  2. “常规 ”窗格中,输入一个名称,例如 DBAdmin。

  3. 选中多维数据集的 “完全控制”(管理员) 复选框。 请注意, Process Database 并且 Read Definition 会自动选择。 这两个权限始终包含在包含 Full Control的角色中。

  4. “成员身份 ”窗格中,输入使用此角色连接到 Analysis Services 的 Windows 用户和组帐户。

  5. 单击“ 确定 ”以完成角色的创建。

进程数据库

定义授予数据库权限的角色时,可以跳过Full Control并仅选择Process Database。 此权限在数据库级别设置,允许处理数据库中的所有对象。 请参阅 “授予进程权限”(Analysis Services)

读取定义

同样 Process Database,在数据库级别设置 Read Definition 权限对数据库中的其他对象有级联影响。 如果要在更精细的级别设置读取定义权限,则必须在“常规”窗格中将读取定义清除为数据库属性。 有关详细信息,请参阅 授予对对象元数据(Analysis Services)的读取定义权限

另请参阅

授予服务器管理员权限(Analysis Services)授予进程权限(Analysis Services)