【发布时间】:2018-07-31 09:24:45
【问题描述】:
我想定义一些用户权限,例如让一些基本用户只能在销售维度中看到自己的元素,而团队负责人能够看到整个团队。
我在表格中有这些信息,但是我没有找到任何可以在 SSAS 中自动导入或设置此权限的内容,我找到的所有文档都显示了如何使用 gui 手动执行此操作,但是对于 500 个用户,我不知道不想那样做……
【问题讨论】:
标签: ssas powerbi tabular ssas-tabular
我想定义一些用户权限,例如让一些基本用户只能在销售维度中看到自己的元素,而团队负责人能够看到整个团队。
我在表格中有这些信息,但是我没有找到任何可以在 SSAS 中自动导入或设置此权限的内容,我找到的所有文档都显示了如何使用 gui 手动执行此操作,但是对于 500 个用户,我不知道不想那样做……
【问题讨论】:
标签: ssas powerbi tabular ssas-tabular
如果您要为其生成角色的所有用户都是同一角色的成员,您可以为该角色生成一个脚本并运行它。连接到 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"
}
]
}
}
}
【讨论】:
几个选项:
【讨论】: