Powershell 修改DevOps中的Azure Analysis Services数据库角色
我正在尝试在Azure DevOps中为Azure Analysis Services数据库部署配置CI/CD管道 部署Model.bim文件非常简单,使用已经可用的“Azure分析服务部署”任务 但是,分配给AAS数据库中角色的AD组会根据部署是测试还是生产而变化。我希望运行某种PowerShell来实现这一点,但是数小时的搜索并没有取得成果。当前的Az.AnalysisServices似乎没有超出其范围内的实际服务器: 上面的文档中提到了使用标准SQL Powershell命令,但是其中没有任何AAS示例脚本,甚至没有任何基于云的解决方案 我想知道是否有人在这方面取得了成功?如果需要,我愿意连接到虚拟机并在那里运行脚本,但最好使用完全基于云的解决方案Powershell 修改DevOps中的Azure Analysis Services数据库角色,powershell,azure-devops,continuous-deployment,azure-analysis-services,Powershell,Azure Devops,Continuous Deployment,Azure Analysis Services,我正在尝试在Azure DevOps中为Azure Analysis Services数据库部署配置CI/CD管道 部署Model.bim文件非常简单,使用已经可用的“Azure分析服务部署”任务 但是,分配给AAS数据库中角色的AD组会根据部署是测试还是生产而变化。我希望运行某种PowerShell来实现这一点,但是数小时的搜索并没有取得成果。当前的Az.AnalysisServices似乎没有超出其范围内的实际服务器: 上面的文档中提到了使用标准SQL Powershell命令,但是其中没
TMSL解决方案也很受欢迎。对于后代,我使用了
调用ASCmd
和createOrReplace
语句,这实现了我需要做的事情
这涉及到创建连接凭据(我使用的是服务帐户),创建包含createOrReplace
语句的参数,然后根据AAS执行它:
$password = ConvertTo-SecureString “<password>” -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential (“<user>@<domain>”, $password)
Connect-AzAccount -Credential $Cred
$TMSLCommand = @"
{
"createOrReplace": {
"object": {
"database": "<AAS Database>",
"role": "Read"
},
"role": {
"name": "Read",
"modelPermission": "read",
"members": [
{
"memberName": "<ad group object id/user>@<tenant id/domain>",
"identityProvider": "AzureAD"
}
]
}
}
}
"@
Invoke-ASCmd -Server "<AAS Server Name>" -Database "<AAS Database>" -Query $TMSLCommand -Credential $Cred;
$password=converttosecurestring”“-AsPlainText-Force
$Cred=新对象System.Management.Automation.PSCredential(“@”,$password)
连接AzaAccount-凭据$Cred
$TMSLCommand=@”
{
“创建或替换”:{
“对象”:{
“数据库”:“”,
“角色”:“读取”
},
“作用”:{
“名称”:“读取”,
“模型权限”:“读取”,
“成员”:[
{
“成员名称”:“@”,
“标识提供程序”:“AzureAD”
}
]
}
}
}
"@
调用ASCmd-Server”“-Database”“-Query$TMSLCommand-Credential$Cred;
< /代码>还没有这样做,但是如果您想确定PS脚本中的部署(阶段),请考虑使用$(System .StaseDePosiNeNd)。