代码之家  ›  专栏  ›  技术社区  ›  Piotr Perak

在Azure devops发布管道中启用对SQL Server的公共访问

  •  0
  • Piotr Perak  · 技术社区  · 5 年前

    为了在配置了PrivateLink的测试Azure SQL上运行迁移,我暂时启用公共访问,然后再次禁用它。

    Set-AzSqlServer
      -ServerName $sqlServerName
      -ResourceGroupName $(IntegrationResourceGroupName)
      -PublicNetworkAccess "Enabled"
    

    它工作了几个月,但最近我开始收到这个错误消息。

    Cannot find the Azure Active Directory object 'My_DB_Admins_Group_Name'.
    Please make sure that the user or group or application you are authorizing is registered
    in the current subscription's Azure Active directory. To get a list of Azure Active Directory
    groups use Get-AzADGroup, or to get a list of Azure Active Directory
    users use Get-AzADUser or to get a list of Azure Active Directory applications use Get-AzADApplication.
    

    我可以像我一样从本地机器上执行这个PS命令,它工作得很好。

    0 回复  |  直到 5 年前
        1
  •  0
  •   IpsitaDash-MT    5 年前

    根据错误消息:AZSSQLServerActiveDirectoryAdministrator仅过滤azaduser和azadgroup。它不太可能寻求服务原则。您可以创建一个名为DBA或类似的azure广告组。然后将服务主体添加到该组。

        $sp = Get-AzADServicePrincipal -DisplayName "theserviceprincipalname"
    Add-AzADGroupMember -MemberObjectId $($sp.id) -TargetGroupDisplayName "AAD Group Name"
    
    Set-AzSqlServerActiveDirectoryAdministrator -ResourceGroupName 'data-eastus2'  -ServerName 'data-eastus2-sqlsvr' -DisplayName "AAD Group Name"