自动为ssas表格生成角色和权限

时间:2018-07-31 09:24:46

标签: ssas powerbi tabular ssas-tabular

我想定义一些用户权限,例如,使一些基本用户只能看到Sales-Dimension中自己的元素,而Team-Leader希望能够看到整个团队。

我在表中有此信息,但是在SSAS中找不到任何要自动导入或设置此权限的内容,我找到的所有文档都显示了如何使用gui手动进行操作,但是有500个用户,我不知道不想那样做...

2 个答案:

答案 0 :(得分:0)

如果您要为其生成角色的所有用户都是同一角色的成员,则可以为该角色生成脚本并运行该脚本。连接到SSMS中的SSAS实例后,展开 Roles 文件夹,右键单击要为其生成脚本的角色,选择 Script Role as ,然后选择操作您要编写脚本。下面的示例使用“创建或替换为”选项。这是使用兼容级别为1200或更高的TMSL。如果模型低于此值,则将使用XMLA。如果您使用行级安全性,则使用tablePermissions选项。

{
"createOrReplace": {
"object": {
"database": "YourTabularDatabase",
"role": "YourRole"
},
"role": {
   "name": "YourRole",
   "modelPermission": "read",
   "members": [
    {
    "memberName": "domain\\UserNameForRoleMember",
    "memberId": "MemberUID"
    },
    {
    "memberName": "domain\\UserNameForNextRoleMember",
    "memberId": "NextMemberUID"
    }
   ],
   "tablePermissions": [
      {
        "name": "TableWithRowFilters",
        "filterExpression": "DAXFilterExpression"
       }
      ]
     }
    }
   }

答案 1 :(得分:0)

几个选项: