技术开发 频道

管理Microsoft SQL Server的分析服务

  2. 安全管理

  在此练习中,您将使用 SQL Server Management Studio 对您的 Analysis Services 环境应用安全措施。SQL Server Analysis Services 提供了一个综合性的安全环境,支持管理员对服务器和数据库安全进行细微调。您将使用这些安全功能对 Analysis Services 服务帐户应用更改,创建管理员帐户以管理 Analysis Services 环境,创建用户定义的角色以管理对多维数据集内的安全数据的访问。

  配置 Analysis Services 服务帐户

  1. 单击开始,指向所有程序,单击 Microsoft SQL Server 2008,单击配置工具,然后单击 SQL Server 配置管理器。收到提示时,单击继续。

  2. 在导航窗格中,单击SQL Server 服务,在右侧窗格中,右键单击 SQL Server Analysis Services (MSSQLSERVER)服务,然后单击属性。

  3. 在属性对话框中,确认选中了本帐户,在帐户名框中键入 .\AnalysisService,在密码和确认密码框中键入 Pa$$w0rd,然后单击确定。

  4. 在确认帐户更改消息中,单击是以允许重新启动服务。重新启动服务成功后,属性对话框将自动关闭。

  5. 关闭 SQL Server 配置管理器。

  注意:通过配置 Analysis Services,使其使用特定用户帐户运行,可以确保服务使用仅具有所需权限和系统权利的帐户。此方法有助于将安全风险降到最低。

  向服务器角色添加用户

  1. 在 SQL Server Management Studio 中,在对象资源管理器中右键单击 (local) Analysis Services 实例,然后单击属性。

  2. 在分析服务器属性对话框中,在选择页区域单击安全性。

  3. 在服务器管理员区域,单击添加。

  4. 在选择用户和组对话框中,在输入对象名称来选择框中,键入 ASAdmin,然后单击检查名称。

  5. 确认此名称解析为 MIAMI\ASAdmin,然后单击确定。

  6. 在分析服务器属性页中,单击确定。

  通过将 ASAdmin 用户帐户添加到服务器角色,您已授予其管理 Analysis Services 实例和数据库所需的所有权限。在下面的步骤中,将通过使用此帐户重新启动 Analysis Services 服务来验证此帐户拥有管理权限。

  7. 单击开始,指向“关机”和“锁定计算机”图标旁边的箭头图标,然后单击切换用户。

  8. 按右 Alt +Del,使用密码 Pa$$w0rd 以 ASAdmin身份登录。

  9. 单击开始|所有程序|Microsoft SQL Server 2008|配置工具|SQL Server 配置管理器。

  10. 在导航窗格中,单击SQL Server 服务,在右侧窗格中,右键单击SQL Server Analysis Services (MSSQLSERVER),单击重新启动,然后确认服务已成功重新启动。

  11. 关闭 SQL Server 配置管理器并注销。

  配置用户访问 Analysis Services 数据库的权限

  1. 继续运行会话,这一回使用密码 Pa$$w0rd 以 Student身份登录。

  2. 返回到 SQL Server Management Studio。

  3. 在对象资源管理器中,依次展开数据库|Adventure Works OLAP,右键单击角色,然后单击新建角色。

  4. 在创建角色对话框中,在常规页中的角色名称框中,键入 VPSalesRole。

  5. 在选择页窗格中,单击成员身份。

  6. 在成员身份页中,单击添加为此角色指定用户和组。

  7. 在选择用户或组对话框中,单击对象类型。

  8. 在对象类型对话框中,确认选中了内置安全主体和用户复选框,选中组复选框,然后单击确定。

  9. 在选择用户或组页中,在输入要选择的对象名称框中,键入 VPSales,然后单击检查名称。

  10. 确认此名称解析为 MIAMI\VPSales,然后单击确定。

  11. 在选择页窗格中,单击多维数据集。

  12. 在多维数据集页中,将 Adventure Works Cube 的访问列更改为读,然后单击确定。

  注意:这将允许作为 VPSalesRole角色的用户读取Adventure Works 多维数据集中的数据。

  13. 在对象资源管理器中,右键单击角色,然后单击新建角色。

  14. 在创建角色对话框中,在常规页中的角色名称框中,键入 EuroSalesMgrsRole。

  15. 在选择页窗格中,单击成员身份。

  16. 在成员身份页中,单击添加为此角色指定用户和组。

  17. 在选择用户或组对话框中,单击对象类型。

  18. 在对象类型对话框中,确认选中了内置安全主体和用户复选框,选中组复选框,然后单击确定。

  19. 在选择用户或组对话框中,在输入对象名称来选择框中,键入 EuropeanSalesMgrs,然后单击检查名称。

  20. 确认此名称解析为 MIAMI\EuropeanSalesMgrs,然后单击确定。

  21. 在选择页窗格中,单击多维数据集。

  22. 在多维数据集页中,将 Adventure Works Cube 的访问列更改为读。

  注意:这将允许 EuroSalesMgrs 组中的用户读取 Adventure Works 多维数据集中的数据。

  23. 在选择页窗格中,单击维度数据。

  24. 在维度数据页中,在维度下拉框中,选择 Sales Reason,然后单击确定。

  25. 在基本选项卡中,在属性层次结构下拉列表中,单击Sales Reason Type,然后单击取消选择所有成员。然后仅选择下列成员:

  • marketing

  • Promotion

  注意:这将防止作为 EuroSalesMgrs角色的用户查看销售原因类型层次结构中的Other销售原因类型。

  26. 在选择页窗格中,单击单元数据。

  27. 在单元数据页中,在多维数据集框中,选择 Adventure Works Cube,单击启用读权限,然后在允许读取多维数据集内容框中键入以下 MDX 查询。

  Ancestor([Sales Territory].[Sales Territories].CurrentMember,[Sales Territory].[Sales Territories].[Sales Territory Group]).Name = "Europe" OR (NOT Measures.CurrentMember IS [Measures].[Sales Amount Quota])

  注意:您可以从 C:\SQLHOLS\Managing Analysis Services\Starter\CellDataMDX.txt 复制此脚本。这样限定了作为 EuropeanSalesMgrs 角色的用户只能查看欧洲市场的销售配额。

  28. 单击确定关闭创建角色对话框。

  测试用户对 Analysis Services 数据库的访问权限

  1. 在对象资源管理器中,展开多维数据集,右键单击 Adventure Works Cube,然后单击浏览。

  2. 在 Adventure Works 多维数据集[浏览] 选项卡中,单击更改用户图标。

  3. 在安全上下文对话框中,单击角色,选择 VPSalesRole 角色,确认未选中其他角色,单击确定,然后单击确定更改安全上下文。

  请注意工具栏下方提示您使用的是 VPSalesRole 凭据的信息行。

  4. 在元数据窗格中,依次展开Measures | Internet Sales| Sales,将 Internet Sales – Sales Amount拖动到右侧的结果窗格中,然后将其放置到将汇总或明细字段拖至此处区域(也可以右键单击 Internet Sales – Sales Amount,然后单击添加到数据区域)。

  5. 在元数据窗格中,展开Sales Reason维度,将Sales Reason Type拖动到结果窗格中,然后将其放置到将行字段拖至此处区域(也可以右键单击Sales Reason Type属性,然后单击添加到行区域)。

  确认 VPSalesRole 角色可以查看Marketing、Promotion和Other销售原因类型的销售额。

  6. 右键单击结果区域,然后单击清除结果(也可以在工具栏中单击清除结果)从浏览器清除所有数据。

  7. 在元数据窗格中,依次展开Measures | Sales Quotas,右键单击Sales Amount Quota,然后单击添加到数据区域。

  8. 在元数据窗格中,展开Sales Territory维度,右键单击Sales Territory,然后单击添加到行区域。

  确认 VPSalesRole 角色可以查看所有区域的销售配额。

  9. 单击更改用户图标。

  10. 在安全上下文对话框中,在角色下拉列表中清除 VPSalesRole 角色,选择 EuroSalesMgrsRole,确认未选中其他角色,单击确定,然后单击确定关闭安全上下文对话框。

  请注意工具栏下方提示您使用的是 EuroSalesMgrsRole 凭据的信息行。

  11. 在元数据窗格中,依次展开Measures | Internet Sales| Sales,右键单击 Internet Sales – Sales Amount,然后单击添加到数据区域。

  12. 在元数据窗格中,展开Sales Reason维度,右键单击Sales Reason Type,然后单击添加到行区域。

  确认 EuroSalesMgrsRole 角色可以查看Marketing、Promotion销售原因类型的销售额,但不能查看Other销售原因类型的销售额。

  13. 在工具栏中,单击清除结果从浏览器清除所有数据。

  14. 在元数据窗格中,依次展开Measures | Sales Quotas,右键单击Sales Amount Quota,然后单击添加到数据区域。

  15. 在元数据窗格中,展开Sales Territory维度,右键单击Sales Territory,然后单击添加到行区域。

  确认 EuroSalesMgrsRole 角色可以查看欧洲市场的销售配额,但不能查看其他区域的销售配额。

  16. 保持多维数据集浏览器窗口打开,下一个练习还要使用此窗口。

0
相关文章