授予数据库权限 (Analysis Services)

如果你正在接触具有关系数据库背景的 Analysis Services 数据库管理,首先你应该了解,就数据访问而言,数据库并非 Analysis Services 中的主要可保护对象。

Analysis Services 中的主要查询结构是多维数据集(或表格模型),这些特定对象上设置有用户权限。与关系数据库引擎相比,后者的数据库登录和用户权限(通常为 db_datareader)均在数据库自身上设置,Analysis Services 数据库主要是数据模型中主要查询对象的容器。如果你的直接目的是启用对多维数据集或表格模型的数据访问权限,则可以暂时绕过数据库权限,直接进入此主题:授予多维数据集或模型权限 (Analysis Services).

Analysis Services 中的数据库权限可实现管理功能;更宽泛的说,如同“完全控制”数据库权限一样,或者如果你授权处理操作,则具有更精细的本质。Analysis Services 数据库的权限级别可在“常规”窗格下通过“创建角色”对话框指定,如下图所示,描述如下。

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

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

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

完全控制(管理员) ─ 完全控制是一种万能权限,传达对 Analysis Services 数据库的广泛权力,例如查询或处理数据库中的任何对象以及管理角色安全的能力。完全控制与数据库管理员状态同义。选择 Full Control 时,Process Database 和 Read Definition 权限将同时选中且不能删除。

注意注意

服务器管理员(服务器管理员角色的成员)还拥有对服务器上所有数据库的隐式完全控制权限。

处理数据库 ─ 此权限用于授权数据库级别的处理。作为管理员,你可以通过创建允许其他人或服务为数据库中的任何对象调用处理操作的角色,卸载此任务。或者,你还可以创建启用特定对象上的处理的角色。有关详细信息,请参阅授予处理权限 (Analysis Services)

读取定义 ─ 此权限授予读取对象元数据的权力,取消查看相关元数据的权力。通常此权限用于为专门处理、添加权力以使用工具(如 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. 单击“确定”以完成角色创建。

处理数据库

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

读取定义

类似于“处理数据库”,在数据库级别上设置“读取定义”这一操作会对数据库中的其他对象产生级联影响。如果你想在更精细的级别上设置“读取定义”权限,则必须清除“常规”窗格中作为数据库属性的“读取定义”。有关详细信息,请参阅授予对象元数据的读取定义权限 (Analysis Services)

请参阅

任务

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

授予处理权限 (Analysis Services)