SSAS:如何自动化多维数据集处理和用户角色归属?
SSAS : How to automate cube processing and user role attribution?
我一直不得不给新用户一个角色,问题是我必须将它们添加到 6 个不同环境中的 2 个不同的多维数据集,这是添加用户和处理权限的 12 次 table,对于每个新用户来说,在我公司相当弱的笔记本电脑上大约需要一个小时。
有什么方法可以编写一些代码,其中包含您要添加到多维数据集列表的用户列表,并且您只需告诉它在每次添加后处理 table 吗?它现在将成为真正的救星。
在 SSIS 中,您可以使用 Analysis Services 执行 DDL 任务。这可以将 TMSL 脚本作为输入,如下所示。
1) sequence - 此命令允许您执行多个操作
2) createOrReplace - 这将使用新的成员列表刷新角色。请注意,每个现有成员都需要包含在角色中,否则他们将被消灭
3) 刷新 - 处理 table
在 ssis 中,您可能会创建到每个环境的连接并循环访问一组脚本文件,这样您就不需要修改包来添加新成员。
但是,我还建议切换到 AD 组,而不是将显式用户添加到角色中。那么你只需要刷新 table.
{
"sequence": {
"operations": [{
"createOrReplace": {
"object": {
"database": "<Your Database>",
"role": "<Your Role Name>"
},
"role": {
"name": "Reader",
"modelPermission": "read",
"members": [{
"memberName": "<Your Domain>\<User 1>",
"memberName": "<Your Domain>\<User 2>",
<All the users in the role...>
}
]
}
}
}, {
"refresh": {
"type": "full",
"objects": [{
"database": "<Your Database>",
"table": "<Your Table>"
}
]
}
}
]
}
}
我一直不得不给新用户一个角色,问题是我必须将它们添加到 6 个不同环境中的 2 个不同的多维数据集,这是添加用户和处理权限的 12 次 table,对于每个新用户来说,在我公司相当弱的笔记本电脑上大约需要一个小时。
有什么方法可以编写一些代码,其中包含您要添加到多维数据集列表的用户列表,并且您只需告诉它在每次添加后处理 table 吗?它现在将成为真正的救星。
在 SSIS 中,您可以使用 Analysis Services 执行 DDL 任务。这可以将 TMSL 脚本作为输入,如下所示。
1) sequence - 此命令允许您执行多个操作
2) createOrReplace - 这将使用新的成员列表刷新角色。请注意,每个现有成员都需要包含在角色中,否则他们将被消灭
3) 刷新 - 处理 table
在 ssis 中,您可能会创建到每个环境的连接并循环访问一组脚本文件,这样您就不需要修改包来添加新成员。
但是,我还建议切换到 AD 组,而不是将显式用户添加到角色中。那么你只需要刷新 table.
{
"sequence": {
"operations": [{
"createOrReplace": {
"object": {
"database": "<Your Database>",
"role": "<Your Role Name>"
},
"role": {
"name": "Reader",
"modelPermission": "read",
"members": [{
"memberName": "<Your Domain>\<User 1>",
"memberName": "<Your Domain>\<User 2>",
<All the users in the role...>
}
]
}
}
}, {
"refresh": {
"type": "full",
"objects": [{
"database": "<Your Database>",
"table": "<Your Table>"
}
]
}
}
]
}
}