简介:

本文介绍如何配置SSAS数据库和cube相关维度的安全设置。

相对数据引擎来说,在Management Studio中配置分析服务的安全设置基本没什么区别。但是也会有一些限制,比如SSAS的权限配置都是围绕角色进行的,其次,角色的成员必须是基于windows或者ad环境的,SQL Server用户(比如sa)是无法使用的。还有,权限是无法直接授予给windows或者ad用户或者组的,这些用户或者组必须填加到角色中才可以。另外,如果UAC处于打开的状态,那么比如要以"Run as Administrator"管理员身份的方式来运行BIDS才可以使配置生效。

翻译笔记:

此篇来自MSSQLTIPS,是我目前见过介绍的最全的一篇,一直以来就想写一些关于SSAS安全方面的东西,于是就决定直接拿过来翻译,原文地址:

http://www.mssqltips.com/sqlservertip/2776/configuring-permissions-for-sql-server-analysis-services/?utm_source=dailynewsletter&utm_medium=email&utm_content=headline&utm_campaign=20140421

在翻译的过程中,对于Cell Data部分由于没有具体使用过,所以这部分是基本是直译过来的。有兴趣的朋友可以一起来研究探讨下这部分的话题。

维度部分感觉原文所阐述的方式有点绕(最起码我是这么理解),所以这部分我根据自己的理解直接写,没有直译。

文中DWA的概念我也是头一次看到,Data warehouse administrator,搞BI的兄弟们终于也可以有一个跟DBA一样类似的称谓了。

在安装SQL Server的时候配置管理员权限:

配置SSAS安全的第一步是在安装SQL Server的时候。在安装SQL Server的过程当中,有些DBA或者DWA总是习惯一顿下一步。然而,在这个过程中的有些配置界面还是会影响到安装的结果的。其中的一个步骤就是配置SSAS的管理员账户,这个账户被配置好了之后,配置其它用户就不会显得那么麻烦。SSAS的管理员账户将拥有完整的权限,包括所有的SSAS数据库,多维数据集,维度等。

同样在安装完毕后,在SSMS里也可以填加其它的管理员账户。首先打开SSMS,连接到分析服务。

连接成功后,右键单击分析服务实例,选择属性。

如下图所示,点击"安全"选项,在右侧的界面就可以继续填加其它管理员账户。

数据库以及Cube层面的安全配置:

数据库和Cube层面的配置可以在BIDS和Management Studio中进行,当然在BIDS中的话,如果项目是在版本管理工具中管理的话,需要留意每次部署都可能会覆盖掉目标分析服务数据库上的权限配置,这种情况下可以借助部署向导(详细)来完成。所以这里建议在BIDS中进行配置,而且,无论在哪里配置,配置的方法是一样的。

右键分析服务数据库下的角色文件夹,选择新角色:

如下图所示,这里首先要配置角色的名称,以及这个角色的描述信息(可选)。然后就是三个复选框角色这个角色的权限:

Full Control: 顾名思义,就是完全控制。差不多跟上面配置的管理员权限对这个分析服务数据库的所有权限,也就是说这个角色的配置只局限在当前的分析服务数据库,而不是所有的其它此分析服务实例下的数据库。完全控制将赋予成员配置其它用户的权限以及处理和维护数据库,多维数据集以及维度的权限。

Process database: 这个权限允许成员处理分析服务数据库以及跟它关联的多维数据集和维度的信息。

Read definitions: 这个权限允许用户读取分析服务数据库的元数据信息。然后,赋予这个权限不代表就拥有了其下的多维数据集或者维度的元数据信息,这个层面的权限控制将在后面讨论。

通常来说,对于普通的浏览用户是不需要勾选这三条权限的。

切换到成员选项卡,管理员可以在这里填加用户或者组到这个角色中。请留意,SQL Server账户(比如sa)是无法填加到这里的。为了维护的方便,这里建议只填加组到角色中。

切换到数据源选项卡中,虽然看上去这里是配置数据源的访问权限,除非角色是要在数据挖掘结构中处理数据或者链接外部数据,这里不建议做单独的配置。

切换到多维数据集选项卡,这里将配置角色对于哪些多维数据集拥有访问权限。对于多维数据集的配置主要有以下三项:

Access:

None: 指定角色成员没有访问此cube的权限。

Read: 指定角色有读取多维数据集的权限,但是没有回写的权限。这是大多数配置所考虑的情况。

Read/Write: 对应上一个选项,这个组的用户拥有回写权限。关于回写可以参考这篇文章

Local Cube/Drillthrough Access

None: 不授予钻取或者本地cube创建的权限。

Drill through: 授予角色的钻取权限。(对应Cube下的Action选显卡下的设置)

Drill through and Local Cube: 授予钻取以及本地cube创建的权限。

Process:

指定角色是否可以处理指定的多维数据集。

需要注意的是,如果Access权限没有赋予给角色,那么这个角色下的用户是无法在客户端工具中看到多维数据集的。

切换到单元数据,这里允许管理员设置角色的读取,选择性读取以及读写权限。当每一个部分前面的复选框被选中之后,下面的MDX表达式才可用。

导航到维度选项卡,这里允许管理员配置维度级别的权限。首先,在维度层次上有两个选项,读取或者读取读取写入。在维度选项卡的下一个选项卡是对维度数据的权限配置,比如,可以给销售部门配置若干的角色,每个角色只允许访问维度中对应的几个成员数据。同时你可以选择是通过勾选的方式来配置还是通过写MDX表达式的方式来配置。

针对维度设置的一个细节,默认对维度成员的数据做限制之后,向上汇总的数据默认还是全部的数据。比如配置一个销售角色组只能看到东区和南区的数字,但是向上汇总的时候能看到东南西北四个区的所有数据,这显然不是我们需要的结果。这个时候就需要勾选界面下方的"Visual Totals"复选框,这样向上汇总就只能看到配置好的东区和南区的数据(北区和西区的数字是不会被汇总的)。但有一点需要留意,就是勾选这个会降低性能。

结语:

同对组织数据的管理一样,SSAS的安全管理也同样重要。对于DBA或者DWA来说,通常我们需要快速准确地提供数据,同样也有责任提供数据在安全以及权限上的控制,所以SSAS允许我们做如下的权限设置:

  • 谁是数据库的管理员
  • 谁能处理数据库,多维数据集或者维度
  • 谁能浏览多维数据集和维度的元数据信息
  • 谁能读取SSAS数据库的:
    • 钻取
    • 维度以及维度成员数据

[译]SQL Server分析服务的权限配置的更多相关文章

  1. SSAS(SQL Server 分析服务)、***S(SQL Server报表服务)、SSIS(SQL Server集成服务)

    一.数据仓库入门 实验手册 1. 创建数据源  http://jimshu.blog.51cto.com/3171847/13366622. 创建数据源视图 http://jimshu.blog.51 ...

  2. SQL Server代理(1/12):配置和概况

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. SQL Server代理是SQL Serv ...

  3. 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)

    从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...

  4. 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

  5. SQL Server : Browser服务

    SQL Server : Browser服务是SQL Server 2005新增的,简单的说,如果一个物理服务器上面有多个SQL Server实例,那么为了确保客户端能访问到正确的实例,所以SQL S ...

  6. Sql Server 2008服务启动失败,错误17058

    SQL Server (SQLEXPRESS) 服务因 17058 (0x42A2) 服务性错误而停止. 有关更多信息,请参阅在 http://go.microsoft.com/fwlink/even ...

  7. SQL Server (MSSQLSERVER) 服务因 找不到指定的模块。 服务特定错误而停止。

    新装了sql server 2008,发现sqlserver 服务没法起来.查看系统日志是7024如下: 事件类型: 错误 事件来源: Service Control Manager 事件种类: 无 ...

  8. syslog-ng日志收集分析服务搭建及配置

    syslog-ng日志收集分析服务搭建及配置:1.网上下载eventlog_0.2.12.tar.gz.libol-0.3.18.tar.gz.syslog-ng_3.3.5.tar.gz三个软件: ...

  9. Microsoft SQL Server for Linux安装和配置

    虽说mssql for linux早已经出来了,但原本没有打算这么早就去尝试的,无奈之下还是得先尝试用了,这里分几篇介绍我在用mssql for linux时遇到的问题,不得不说作为先吃螃蟹的人总是要 ...

随机推荐

  1. 线段树 HDU 3308

    t 题目大意:给你n个数,m个操作.操作有两种:1.U x y 将数组第x位变为y   2. Q x y 问数组第x位到第y位连续最长子序列的长度.对于每次询问,输出一个答案 #include< ...

  2. php 不用四舍五入的方式截取小数点后两位

    /** * 字符串截取, 默认小数点后2位 * @param $money * @param int $accuracy * @return float */ private function fil ...

  3. DSP, SSP, DMP

    先了解下广告的产业链有哪些人群: 广告主advertisers 显然是指想为自己的品牌或者产品做广告的人,例如宝马.Intel.蒙牛-- 媒体publisers       则是提供广告位置的载体,例 ...

  4. 【poj1742】 Coins

    http://poj.org/problem?id=1742 (题目链接) 题意 给出n钟纸币,每种纸币面值为a[i],数量为c[i],问能够成多少数值小于等于m的数. Solution 先想到了容斥 ...

  5. codevs 2988 保留小数 2

    2988 保留小数 2  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver       题目描述 Description 这个难度是吸引你点进来的.(其实难度挺 ...

  6. VsFtpd服务配置简明笔记

    Ftp服务是最常用的文件传输方式,把配置步骤记录下来,以备将来使用. 1.用YUM安装VsFtpd服务:[root@Redis usr]# yum install vsftpd 2.安装完成后启动Vs ...

  7. Android JSON、GSON、FastJson的封装与解析

    声明: 1.本帖只提供代码,不深入讲解原理.如果读者想要深入了解,那就不要在这个帖子上浪费时间了 2.客户端用的是Google官方的Volley访问服务器,具体了解Volley请戳 这里 3.本帖三种 ...

  8. (四)SQL Server分区管理

    一.拆分分区(SPLIT) 在已有分区上添加一个新分区. 如下图所示,将分区03拆分成03和04分区,拆分方式先锁定旧03分区的所有数据,后将旧03分区相关数据迁移到分区04,最后删除旧03上的对应分 ...

  9. [Scala] 快学Scala A3L3

    Actor 通过尽可能避免锁和共享状态,actor使得我们能够容易地设计出正确.没有死锁或争用状况的程序. Scala类库提供了一个actor模型的简单实现.AKKA是更高级的actor类库. 19. ...

  10. [Linux] Linux指令汇总(持续更新中...)

    写在前面: 以前真心没有玩过Linux系统,总感觉整天摆弄Linux的同学都是大牛.如今,在公司里实习需要远程登录Linux服务器,所有的代码都要在开发板上完成,所以被逼无奈也不得不定下心来好好学学L ...