授予维度访问权限

默认情况下,Microsoft SQL Server 2005 Analysis Services (SSAS) 中的数据库角色对其可以访问的每个多维数据集中的所有维度成员具有读取权限。但是,数据库的管理员可以限制允许数据库角色查看的维度成员,并针对数据库角色可以访问的多维数据集中任意维度的某些或全部成员授予读/写权限。

如果数据库角色有权访问多维数据集,那么,除非对特定多维数据集中的维度显式设置了不同权限,否则,将从在数据库级别对维度设置的权限继承对此多维数据集中维度的访问权限。如果基于单一数据库维度的多维数据集定义了多个多维数据集维度,那么,为数据库维度指定的权限将应用于所有多维数据集维度,但可以覆盖一个或多个多维数据集维度的权限。例如,假设一个多维数据集有三个基于单一数据库维度的多维数据集维度。那么,您可以在数据库级别授予数据库角色对维度选定成员的读取权限,然后,在多维数据集级别覆盖这些权限,并在该级别授予对三个维度中一个或多个维度的读/写权限。

设置对维度的读或读/写权限

若要设置数据库角色的权限,用户必须是 Analysis Services 服务器角色成员或者是拥有完全控制(管理员)权限的 Analysis Services 数据库角色成员。

授予数据库角色对维度的读或读/写权限

  1. 在 SQL Server Management Studio 中,连接到 Analysis Services 实例,在对象资源管理器中展开相应数据库的**“角色”**,然后单击某个数据库角色(或创建新的数据库角色)。

  2. 单击**“选择页”窗格中的“维度访问”,在“选择维度集”列表中找到维度,再在维度的“访问”列表中选中“读”“读/写”**。

注意事项注意

如果使用分析管理对象 (AMO) 配置数据库角色权限,那么,任何对多维数据集的 DimensionPermission 特性中多维数据集维度的引用都将切断对数据库的 DimensionPermission 特性的权限继承。有关 AMO 的详细信息,请参阅分析管理对象 (AMO)

除了为数据库角色指定读取或读/写维度访问权限之外,还可以定义特定的属性层次结构以及允许角色成员访问的维度中的成员。默认情况下,拥有多维数据集访问权限的成员至少拥有读取权限,可查看维度中的所有属性层次结构以及这些层次结构中的所有成员。默认情况下,对属性成员至少拥有读取权限的成员至少拥有对与该属性成员有关的所有多维数据集单元的读取权限。可以限制对特定单元的访问权限。

有关详细信息,请参阅授予对维度数据的自定义访问权限授予对多维数据集的访问权限授予对单元数据的自定义权限