ssas连接mysql_再谈通过http访问SSAS

article/2025/9/19 23:57:01

问题:

在有些场景下,数据中心会分为不同的服务器场:数据库场和应用程序场。服务器场间有严格的防火墙控制,其中数据库场只能建立从应用程序场的防火墙穿越,也就是说不允许任何客户端直接连接到防火墙。

这种策略对于数据库引擎来说没什么问题,但是对于分析服务来说就被完全限制住了,通常我们都是通过Excel直接连接分析服务数据库的,并且通过分析服务的角色来控制对数据的访问权限。那么是否有什么方法可以解决这个问题呢?

解决思路:

我们知道SSAS是可以通过http的方式来访问的,那么我们只要让这个站点接受windows方式的身份验证就可以简介的实现excel客户端到分析服务数据库的连接。

实验环境:

Windows 8.1 + IIS

SQL Server 2012

Adveuture Works微软官方示例数据库,这里用到的是分析服务数据库。

实验步骤:

首先,确保IIS已经被填加,然后windows身份模式已经被安装。

3fcc43e7eb3f923ad13180a35ed84eac.png

分别在操作系统下建立测试账户aaa和bbb依次填加到这两个组中。

65b5664632574455508a36da133a3e52.png

在分析服务数据库下,建立两个角色, Team1和Team2。

12bea66e06ee7893661b87f2fa6f970e.png

找到维度数据的设置,分别指定第一个角色拥有Department维度下的前两个成员,另一个角色拥有这个维度下的后三个成员。

d88554a94b320d769298c7500d0fe0fa.png

填加完毕,确认两个组都被填加到分析服务数据库中。

f236ba51a44606353314540de70caccb.png

接下来测试一下角色权限控制的结果,用管理员身份登录,可以看到Department下的所有维度成员。

5050270e2a65b23f1f8ad811892229be.png

用aaa账户登录Management Studio(提示,按住Shift右键单击),可以看到其隶属的Team1角色只能看到前两个成员。

b46f2209b48d63449b3b01820d529f9e.png

打开IIS,配置站点,打开Windows身份验证模式。

2f17a96a07ecbabedaee0ca7d904703e.png

浏览数据,可以看到返回的xml结果页面。

be2300f49a1e4e95112a3ee3d2a5a676.png

用这个URL地址连接分析服务,用aaa账户连接,可以看到通过http的方式识别出了当前客户端的账户。

44089d6630817f4f3658697b165a2fd7.png

并且里面的数据接受了分析服务数据库的权限控制。

b73a2084448a14b0e664ad036552897c.png

接下来在Excel中实验下,右键单击Excel.exe,选择使用指定的账户运行。

6a8d35d3782dd986e88713e294c03269.png

数据账户aaa的信息,使Excel以这个身份运行。

6e23f9159536b2848577ba52ded84db1.png

在Excel下新建透视表。

b6ca0785554bee78957897e9b886a5d5.png

选择连接到分析服务数据库。

f2b9731ed6aab28ed8ee6b6d2662bcc1.png

在服务器名称下输入URL。

bf69eaaeb6a39b46e034a979248e59e5.png

选择连接到Adventure Works多维数据集。在微软的这个示例数据库下,这个是最全的多维数据集,其它能看到的数据集实际上都是出自这个数据集的一个透视。

25388cc8e0eab8454c30fa57c41fff70.png

在Excel的透视表下,拖拽Department维度,可以看到已经接受了分析服务的角色权限控制。

912cfbdd59b705f71c1073bb67585a99.png

保存这个Excel文件,再用管理员帐号打开这个文件,刷新透视表,可以看到根据分析服务数据库的权限设定,返回了Department下的全部维度成员数据。

4ecadee2a0b9ef3e1047d88cba95d4e9.png

结论:

通过http的方式连接到分析服务数据库,可以看到通过站点的windows身份验证模式,是可以接受分析服务数据库的角色权限控制的。通过这种方法,就可以通过应用程序服务器间接的实现对于服务器场中的分析服务数据库的访问,并且跟直接连接到分析服务数据库的效果是一样的。


http://chatgpt.dhexx.cn/article/mqOXGdiw.shtml

相关文章

ssas计算度量_如何在Analysis Services(SSAS)中创建中间度量

ssas计算度量 The whole premise of Analysis Services (SSAS) is to place business logic into a central repository (a database). This central repository should be easy to understand from the average reporting user. Simplicity for SSAS databases starts with th…

ssas表格模型 权限控制_性能调整SSAS表格模型

ssas表格模型 权限控制 Modeling for the xVelocity/Vertipaq engine is a completely different beast than modeling for your trusty multi-dimensional SSAS cubes. In-memory blazingly fast; At least that’s what you would think. As Tabular models gain popularity…

ssas从mysql获取数据库_SSAS-实用的DMV查询

以下查询,比较实用。 --All Cubes in database SELECT [CATALOG_NAME] AS [DATABASE],CUBE_CAPTION AS [CUBE/PERSPECTIVE],BASE_CUBE_NAME FROM $system.MDSchema_Cubes WHERE CUBE_SOURCE1 --All dimensions in Cube SELECT [CATALOG_NAME] as [DATABASE], CUBE_N…

ssas表格模型 权限控制_创建第一个SSAS表格模型数据库

ssas表格模型 权限控制 Considering BI environment, when comparing Multidimensional Vs Tabular model databases, both of them have their own advantages and purpose in data analytics and business intelligence. 考虑到BI环境,在比较多维VS表格模型数据库…

ssas 分层维度_通过SSAS维度层次结构增强数据分析

ssas 分层维度 介绍 (Introduction) This article will discuss how SSAS Dimension Hierarchies can be used to analyze data much efficiently. If you are a data analyst, you want to start the analysis with a higher hierarchy. Then navigate the narrow attributes …

ssas连接mysql_Web服务器(Websphere、Tomcat)使用olap4j连接多维数据库(Ssas)

最近项目需要使用Java连接到Sql Server多维数据库(Ssas)。在网上找到了一种通过可以通过IIS发布dll来作为jdbc连接串的方法,通过开源的olap4j的jar包,成功实现了类jdbc的方式连接到ssas。但实际应用中往往是通过web服务器的jdbc连接池的方式获得连接。 费…

ssas连接mysql_BI-SSAS简介篇

一、是什么? SSAS是用于SQLServer数据库用于BI的组件,通过SSAS可以创建多维数据库,并在之上进行数据挖掘操作。本文我们主要介绍一些关于SSAS数据分析的知识。接下来就让我们来一起了解一下吧。 商业智能提供的解决方案能够从多种数据源获取数…

ssas连接oracle性能,Analysis Services(SSAS) 性能优化

1、聚合选项中添加聚合,以空间换时间提升性能。 如下图: 性能提升百分比越高,聚合数越高,生成的Cube越大,这就是以空间换时间。 2、修改SSAS服务器上的线程池配置选项、提升并发数。 通过X:\Program Files\Microsoft S…

大数据时代:SSAS从入门到放弃

大数据时代到来,如何从数据中提取、挖掘对业务发展有价值的信息,为业务决策提供有力依据,推动精益化化的企业管理。商业分析师通常会使用各种数据分析工具,例如Excel、Tableau和PowerBI等对数据进行分析。OLAP就经常被用于对接这类…

ssas连接mysql_SSAS系列基础知识

1、什么是Cube? 简单 Cube 对象由基本信息、维度和度量值组组成。 基本信息包括多维数据集的名称、多维数据集的默认度量值、数据源和存储模式等。维度是多维数据集中使用的实际维度组。所有维度都必须先在数据库的维度集合中定义,然后才能在多维数据集中引用。度量…

SSAS多维数据分析创建

一、Visual Studio简介 Microsoft在 SQL Server Analysis Services (SSAS) 中,可以方便地创建复杂的联机分析处理(OLAP) 和数据挖掘解决方案。Analysis Services 工具提供了设计、创建和管理来自数据仓库的多维数据集和数据挖掘模型的功能,还提供对 OLAP…

SSAS介绍

文章提纲 商业智能(BI, Business Intelligence)基本概念 SSAS(SQL Server Analysis Services)相关工具(开发、管理和客户端) 总结 一、商业智能(BI, Business Intelli…

SSAS教程(一)——SSAS简介

SSAS全称SQL Server Analysis Services。Analysis Services 是在决策支持和商业分析中使用的分析数据引擎,它为商业报表和客户端应用程序提供了企业级语义数据模型,比如Power BI、 Excel、 Reporting Services 以及其他数据可视化工具。只要是支持Analys…

Java数组的初始化

Java数组初始化 1 一维数组初始化2 二维数组初始化 1 一维数组初始化 public class ArrayDemo1 {public static void main(String[] args) {// 格式一(动态初始化)int[] arr1 new int[3]; // 数组的长度(这里为3)必须指定// 格式二(静态初始化)int[] arr2 new int[]{1, 2, 3…

java类初始数组_java中数组初始化的三种方式是什么

java中数组初始化的三种方式是:1、静态初始化,如【int a[] {2, 0, 1, 9, 2020}】;2、动态初始化,如【int[] c new int[4]】;3、默认初始化,如【int[]dnew int[5]】。 初始化方式: 1、静态初始…

Java数组初始化、赋值与输出

文章目录 Java数组相关知识数组初始化一维数组二维数组 数组输出一维数组二维数组 Java数组相关知识 数组初始化 一维数组 初始化为0 int[] a; a new int[5]; int[] b new int[5]; 初始化为指定值 int[] a new int[]{0,1,2,3,4};//正确 int[] b {0,1,2,3,4};//正确&a…

java初始化array_java数组初始化方式

在使用一个新的数组之前,要先对其中的数值进行设置,也就是我们常说的初始化工作。因为数组有长度和内容的区分,所以常见的两种初始化方法是动态和静态,另外一种就是默认初始化。下面我们对数组的初始化概念进行理解,区…

c++ lamuda表达式mutable

1.lambda表达式 C11引入了Lambda表达式。Lambda表达式的引入,方便了简短函数的定义,为常用的一次性函数的定义和使用提供了很大的便利。 Lambda表达式实际上是一种匿名函数定义,常用来定义简单和不重复使用的函数。其可使用的外部变量、定义方…

const和mutable关键字

const修饰变量表示改变量内容不可修改,在类中,const还可以修饰成员函数,修饰成员函数后就不可以更改成员变量了。 可以看出,this指针是const*const类型,既不可以修改其内容,也不能修改其指向。 想一下&…

C++的mutable

一、介绍 mutable的中文意思是“可变的,易变的”,正好与const相反。在C中,mutable也是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中。 二、用法 如果类的成员函数…