Tableau Server 中的直接 SQL Server 连接,业务用户没有数据库的读取权限
Posted
技术标签:
【中文标题】Tableau Server 中的直接 SQL Server 连接,业务用户没有数据库的读取权限【英文标题】:Direct SQL Server connections in Tableau Server without business user having read permission on database 【发布时间】:2016-06-29 23:33:33 【问题描述】:是否可以在 Tableau Server 中使用嵌入式直接 SQL Server 数据库连接配置工作簿,不需要使用该工作簿的业务用户也已阅读已连接数据库的权限?
我可以将提取用于非实时数据(这适用于大多数情况),但某些来源最好通过直接连接提供,以便工作簿视图始终提供我们数据库中的最新记录( s),但大多数(如果不是全部)业务用户不会通过请求访问报告可能使用的每个数据库(而且,IT 会讨厌我)。
我目前使用的是 Tableau Desktop 9.3.3、Tableau Server 9.3.3 和 SQL Server 2012。
我在将数据源上传到 Tableau Server 时尝试使用impersonate user
,虽然源上传正常,但尝试访问时出现权限错误。
我在调查此问题时发现的另一个选项是使用服务帐户并嵌入数据库连接凭据,但由于担心多个用户/一个登录,这将是(可以理解的)难以(或不可能)获得通过安全团队。
鉴于有很多公司在使用 Tableau 的大型 BI 团队和许多报告消费者,肯定有人已经解决了这个问题,但我本人和 Tableau 支持都没有提出好的解决方案。
【问题讨论】:
我认为您可以在使用系统帐户或任何其他帐户处理多维数据集时为多维数据集数据库定义用户角色 您需要嵌入和模拟。 【参考方案1】:您可以发布实时连接并选择嵌入式密码。然后,Tableau 用户可以使用服务器托管的数据源(如果您授予他们权限),他们将不需要自己的帐户访问 SQL Server。
【讨论】:
好的,看来我需要使用服务帐户并在发布后将凭据嵌入工作簿/数据源中?我的 Tableau (9.3.3) 版本只有Server Run As account
和 Impersonate via server Run As account
用于身份验证选项(适用于与 SQL Server 实时连接的数据源)。
如果您的用户有tableau desktop,您只需要发布数据源。然后他们可以连接到桌面并进行自己的分析。以上是关于Tableau Server 中的直接 SQL Server 连接,业务用户没有数据库的读取权限的主要内容,如果未能解决你的问题,请参考以下文章
如何将数据从本地 SQL Server 推送到 AWS 上的 Tableau Server
如何从 SQL Server 或 Tableau Desktop 加载临时表?