本教程使用 SQL Server Management Studio (SSMS) 连接到 Azure 中的服务器,以配置服务器管理员和模型数据库角色。 你还将了解表格模型脚本语言(TMSL)。 TMSL 是一种基于 JSON 的脚本语言,适用于 1200 和更高兼容级别的表格模型。 它可用于自动执行许多表格建模任务。 TMSL 通常用于 PowerShell,但在本教程中,在 SSMS 中使用 XMLA 查询编辑器。 使用本教程,您将完成以下任务:
- 从门户获取服务器名称
- 使用 SSMS 连接到服务器
- 将用户或组添加到服务器管理员角色
- 将用户或组添加到模型数据库管理员角色
- 添加新的模型数据库角色并添加用户或组
若要详细了解 Azure Analysis Services 中的用户安全性,请参阅 身份验证和用户权限。
先决条件
- 订阅中的Microsoft Entra ID。
- 在订阅中创建 Azure Analysis Services 服务器 。
- 具有 服务器管理员 权限。
- 将 adventureworks 示例模型添加到 服务器。
- 安装最新版本的 SQL Server Management Studio (SSMS)。
登录到 Azure 门户
登录到 门户。
获取服务器名称
若要从 SSMS 连接到服务器,首先需要服务器名称。 可以从门户获取服务器名称。
在“Azure 门户”中,单击“服务器”“概述”>“服务器名称”,并复制服务器名称。
在 SSMS 中连接
对于剩余的任务,可以使用 SSMS 连接到和管理服务器。
在 SSMS >“对象资源管理器”中,单击“连接”“Analysis Services”。
在“ 连接到服务器 ”对话框中的服务器 名称中,粘贴从门户复制的服务器名称。 在 “身份验证”中,选择 具有 MFA 支持的 Active Directory Universal,然后输入用户帐户,然后按 Connect。
小窍门
建议选择支持多重身份验证 (MFA) 的 Active Directory Universal。 这种类型的身份验证类型支持 非交互式和多重身份验证。
在 对象资源管理器中,展开以查看服务器对象。 右键单击可查看服务器属性。
将用户帐户添加到服务器管理员角色
在此任务中,将Microsoft Entra ID 中的用户或组帐户添加到服务器管理员角色。 如果指定安全组,请使用 obj:groupid@tenantid
。
在 对象资源管理器中,右键单击服务器名称,然后单击“ 属性”。
在 “Analysis Server 属性 ”窗口中,单击“ 安全>添加”。
在 “选择用户或组 ”窗口中,在Microsoft Entra ID 中输入用户或组帐户,然后单击“ 添加”。
单击“ 确定”关闭 Analysis Server 属性。
小窍门
您还可以在门户中使用 Analysis Services 管理员 来添加服务器管理员。
将用户添加到模型数据库管理员角色
在此任务中,将用户或组帐户添加到模型中已存在的 Internet 销售管理员角色。 此角色对 adventureworks 示例模型数据库具有完全控制(管理员)权限。 此任务在为你创建的脚本中使用 CreateOrReplace TMSL 命令。
在 '对象资源管理器' 中,展开 '数据库>>'。
右键单击 Internet 销售管理员,然后单击 脚本角色为>创建或替换到>新查询编辑器窗口。
在 XMLAQuery 中,将 “memberName” 的值更改为Microsoft Entra ID 中的用户或组帐户。 默认情况下,包含你登录的帐户;但是,无需添加自己的帐户,因为你已经是服务器管理员。
按 F5 执行脚本。
添加新的模型数据库角色并添加用户或组
在此任务中,你将使用 TMSL 脚本中的 “创建 ”命令创建新的 Internet Sales Global 角色,指定角色的 读取 权限,并从Microsoft Entra ID 中添加用户或组帐户。
在 对象资源管理器中,右键单击 adventureworks,然后单击“ 新建查询>XMLA”。
将以下 TMSL 脚本复制并粘贴到查询编辑器中:
{ "create": { "parentObject": { "database": "adventureworks", }, "role": { "name": "Internet Sales Global", "description": "All users can query model data", "modelPermission": "read", "members": [ { "memberName": "globalsales@adventureworks.com", "identityProvider": "AzureAD" } ] } } }
将
"memberName": "globalsales@adventureworks.com"
对象值更改为 Microsoft Entra ID 中的用户或组帐户。按 F5 执行脚本。
验证所做的更改
在 对象资源管理器中,单击服务器名称,然后单击“ 刷新 ”或按 F5。
展开 数据库>adventureworks>角色。 请验证您在前面任务中添加的用户帐户和新角色更改是否已显示。
清理资源
不再需要时,请删除用户或组帐户和角色。 为此,请使用 角色属性>成员身份 删除用户帐户,或右键单击角色,然后单击“ 删除”。
后续步骤
本教程介绍了如何连接到 Azure AS 服务器,并探索 SSMS 中的 adventureworks 示例模型数据库和属性。 你还了解了如何使用 SSMS 和 TMSL 脚本将用户或组添加到现有和新角色。 为服务器和示例模型数据库配置了用户权限后,你和其他用户可以使用 Power BI 等客户端应用程序连接到该数据库。 若要了解详细信息,请继续学习下一教程。