共用方式為


將服務主體新增至伺服器管理員角色

若要將無人看管的 PowerShell 工作自動化,服務主體必須擁有受控 Analysis Services 伺服器的伺服器管理員權限。 本文說明如何將服務主體新增至 Analysis Services 伺服器上的伺服器管理員角色。 您可使用 SQL Server Management Studio 或 Resource Manager 範本來執行此操作。

注意

必須「直接」將服務主體新增至伺服器管理員角色。 不支援將服務主體新增至安全性群組,然後將該安全性群組新增至伺服器管理員角色。

開始之前

完成這項工作前,您必須在 Microsoft Entra ID 中註冊服務主體。

建立服務主體 - Azure 入口網站
建立服務主體 - PowerShell

使用 SQL Server Management Studio

您可使用 SQL Server Management Studio (SSMS) 來設定伺服器管理員。 若要完成這項工作,您必須擁有 Analysis Services 伺服器的伺服器管理員權限。

  1. 在 SSMS 中,連線到 Azure Analysis Services 伺服器。

  2. 在 [伺服器屬性]> [安全性] 中,按一下 [新增]

  3. 在 [選取使用者或群組] 中,以名稱搜尋您註冊的應用程式,選取它,然後按一下 [新增]

    Screenshot that shows Search for service principal account.

  4. 確認服務主體帳戶識別碼,然後按一下 [確定]

    Screenshot that shows the service principal account ID and highlights the OK button.

使用 Resource Manager 範本

您也可以使用 Azure Resource Manager 範本來部署 Analysis Services 伺服器以設定伺服器管理員。 執行部署的身分識別必須屬於 Azure 角色型存取控制 (Azure RBAC) 資源的參與者角色。

重要

服務主體必須使用 app:{service-principal-client-id}@{azure-ad-tenant-id} 格式來新增。

下列 Resource Manager 範本會部署 Analysis Services 伺服器,並將指定服務主體新增至 Analysis Services 系統管理員角色:

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "analysisServicesServerName": {
            "type": "string"
        },
        "location": {
            "type": "string"
        },
        "analysisServicesSkuName": {
            "type": "string"
        },
        "analysisServicesCapacity": {
            "type": "int"
        },
        "servicePrincipalClientId": {
            "type": "string"
        },
        "servicePrincipalTenantId": {
            "type": "string"
        }
    },
    "resources": [
        {
            "name": "[parameters('analysisServicesServerName')]",
            "type": "Microsoft.AnalysisServices/servers",
            "apiVersion": "2017-08-01",
            "location": "[parameters('location')]",
            "sku": {
                "name": "[parameters('analysisServicesSkuName')]",
                "capacity": "[parameters('analysisServicesCapacity')]"
            },
            "properties": {
                "asAdministrators": {
                    "members": [
                        "[concat('app:', parameters('servicePrincipalClientId'), '@', parameters('servicePrincipalTenantId'))]"
                    ]
                }
            }
        }
    ]
}

使用受控識別

新增至資料庫或伺服器角色的受控識別將無法登入服務或執行任何作業。 Azure Analysis Services 不支援服務主體的受控識別。