共用方式為


以程序設計方式跨相關聯的 Microsoft Entra 租使用者建立 MCA 訂用帳戶

本文可協助您以程序設計方式跨相關聯的計費租使用者建立 Microsoft 客戶合約 (MCA) 訂用帳戶。 在某些情況下,您可能需要跨 Microsoft Entra 租使用者建立 MCA 訂用帳戶,但將它們系結至單一計費帳戶。 這類情況的範例包括:

  • 想要隔離託管客戶服務與內部IT服務的S提供者
  • 持有或風險投資公司與許多投資組合公司
  • 具有嚴格法規合規性需求的內部環境,例如支付卡產業(PCI)

在相關聯的計費租使用者中建立 MCA 訂用帳戶的程式需要在來源和目的地Microsoft Entra 租使用者中採取動作。 本文使用下列術語:

  • 來源Microsoft Entra 租使用者(source.onmicrosoft.com)。 其代表 MCA 計費帳戶所在的來源租用戶。
  • 目的地雲端Microsoft Entra 租使用者(destination.onmicrosoft.com)。 它代表建立新 MCA 訂用帳戶的目的地租用戶。

您無法以程式設計方式建立支援計劃。 您可以在 Azure 入口網站中購買新的支援計劃或升級計劃。 流覽至 [ 說明 + 支援]。 在頁面頂端,選取 [ 選擇正確的支援方案]。

注意

有兩種方法可以透過程序設計方式跨 Microsoft Entra 租使用者建立 MCA 訂用帳戶。 本文所述的方法是簡化的版本,可將管理額外負荷降至最低,並藉由將許可權完全傳送至目的地租使用者來建立 MCA 訂用帳戶,以簡化訂用帳戶建立程式。 另一種方法牽涉到兩 個階段的程式 ,可針對目的地租使用者中建立的訂用帳戶,提供來源租使用者控管。 如果您需要更嚴格地控制在目的地租使用者中建立訂用帳戶,建議您使用此方法。

必要條件

需要下列環境,才能跨相關聯的計費租使用者以程序設計方式建立 MCA 訂用帳戶:

  • 具有作用中 Microsoft 客戶合約計費帳戶的來源 Microsoft Entra 租用戶。 如果您沒有作用中的 MCA,可以建立一個。 如需詳細資訊,請參閱 Azure - 註冊
  • 與 MCA 所屬租用戶不同的目的地 Microsoft Entra 租用戶。 若要建立新的 Microsoft Entra 租用戶,請參閱 Microsoft Entra 租用戶設定
  • 將目的地Microsoft Entra 租使用者新增為來源Microsoft Entra 租用戶內相關聯的計費租 使用者, 並將計費角色指派給來自目的地Microsoft Entra 租用戶的使用者。

應用程式設定

使用下列各節中的資訊,在目的地租用戶中設定及設定所需的應用程式。

在目的地租用戶中註冊應用程式

若要以程式設計方式建立 MCA 訂用帳戶,必須註冊Microsoft Entra 應用程式,並授與適當的 Azure 角色型存取控制 (RBAC) 許可權。 在此步驟中,請確定您已使用有權註冊 Microsoft Entra 應用程式的帳戶登入目的地租使用者 (destination.onmicrosoft.com)。 此外,請確定已將來源租使用者 (source.onmicrosoft.com) 中的計費角色指派為必要條件的一部分。

請依照快速入門:使用 Microsoft 身分識別平台來註冊應用程式中的步驟來操作。

對於此程序的目的,您只需要遵循註冊應用程式新增認證章節中的說明。

儲存下列資訊以測試及設定您的環境:

  • 目錄 (租用戶) 識別碼
  • 應用程式 (用戶端) 識別碼
  • 物件識別碼
  • 產生的應用程式祕密值。 只有在建立時才會顯示此值。

為目的地租使用者中的應用程式建立計費角色指派

若要判斷應用程式的適當範圍和計費角色,請檢閱瞭解 Azure 中 Microsoft 客戶合約 系統管理角色的相關信息

具有擁有者存取權的使用者可以登入相關聯租使用者中的 Azure 入口網站,將角色指派給應用程式。 擁有者存取包括:

  • 計費帳戶擁有者
  • 帳單設定檔擁有者
  • 發票區段擁有者

在您決定範圍和角色之後,請運用管理 Azure 入口網站中計費角色的資訊,為應用程式建立角色指派。 使用您在上一節中註冊應用程式時所使用的名稱來搜尋應用程式。

以程式設計方式建立訂用帳戶

設定應用程式和權限之後,請使用下列資訊,以程式設計方式建立訂用帳戶。

建立訂用帳戶

使用下列資訊在目的地租使用者中建立訂用帳戶。

取得目的地應用程式存取權杖

{{placeholders}}將取代為您先前建立目的地租使用者應用程式時所儲存的實際租使用者標識碼、應用程式(用戶端)標識碼和應用程式秘密值。

叫用要求,並儲存回應的 access_token 值,以供下一個步驟使用。

POST https://login.microsoftonline.com/{{tenant_id}}/oauth2/token
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials&client_id={{client_id}}&client_secret={{app_secret}}&resource=https%3A%2F%2Fmanagement.azure.com%2F

取得計費帳戶、設定檔和發票區段識別碼

使用尋找您有權存取的計費帳戶尋找帳單設定檔和發票區段的資訊,建立訂用帳戶區段,取得計費帳戶、設定檔和發票區段識別碼。

注意

我們建議將 REST 方法與先前取得的存取權杖搭配使用,以確認應用程式計費角色指派已成功在 [應用程式設定] 區段中建立。

建立訂用帳戶別名

使用計費帳戶、設定檔和發票區段識別碼時,您有建立訂用帳戶所需的所有資訊:

  • {{guid}}:可以是有效的 GUID。
  • {{access_token}}:先前取得之目的地租使用者應用程式的存取令牌。
  • {{billing_account}}:先前取得的計費帳戶識別碼。
  • {{billing_profile}}:先前取得的計費設定檔識別碼。
  • {{invoice_section}}:先前取得的發票區段識別碼。
  • {{destination_tenant_id}}:您先前建立目的地租用戶應用程式時,記下的目的地租用戶識別碼。
  • {{destination_service_principal_object_id}}:您先前從 取得目的地應用程式存取令牌一節取得的目的地租使用者服務主體標識符
PUT https://management.azure.com/providers/Microsoft.Subscription/aliases/{{guid}}?api-version=2021-10-01
Authorization: Bearer {{access_token}}
Content-Type: application/json

{
  "properties": {
    "displayName": "{{subscription_name}}",
    "workload": "Production",
    "billingScope": "/billingAccounts/{{billing_account}}/billingProfiles/{{billing_profile}}/invoiceSections/{{invoice_section}}",
    "subscriptionId": null,
    "additionalProperties": {
      "managementGroupId": null,
      "subscriptionTenantId": "{{destination_tenant_id}}",
      "subscriptionOwnerId": "{{destination_service_principal_object_id}}"
    }
  }
}

下一步