Assegnare ruoli di Contratto Enterprise alle entità servizio

È possibile gestire la registrazione Contratto Enterprise (EA) nel portale di Azure. È possibile creare ruoli diversi per gestire l'organizzazione, visualizzare i costi e creare sottoscrizioni. Questo articolo illustra come automatizzare alcune di queste attività usando Azure PowerShell e le API REST con le entità servizio Microsoft Entra ID.

Nota

Se nell'organizzazione sono presenti più account di fatturazione EA, è necessario concedere i ruoli EA alle entità servizio Microsoft Entra ID singolarmente in ogni account di fatturazione EA.

Prima di iniziare, assicurarsi di avere familiarità con gli articoli seguenti:

Creare e autenticare l'entità servizio

Per automatizzare le azioni EA usando un'entità servizio, è necessario creare un'identità dell'app Microsoft Entra, che può quindi eseguire l'autenticazione in modo automatizzato.

Seguire la procedura descritta in questi articoli per creare ed eseguire l'autenticazione usando l'entità servizio.

Ecco un esempio della pagina di registrazione dell'applicazione.

Screenshot che mostra Registrare un'applicazione.

Trovare l'entità servizio e gli ID tenant

Sono necessari l'ID oggetto dell'entità servizio e l'ID tenant. Queste informazioni sono necessarie per le operazioni di assegnazione delle autorizzazioni più avanti in questo articolo. Tutte le applicazioni vengono registrate in Microsoft Entra ID nel tenant. Al termine della registrazione dell'app vengono creati due tipi di oggetti:

  • Oggetto applicazione: l'ID applicazione è quello visualizzato in Applicazioni aziendali. L'ID non deve essere usato per concedere ruoli EA.
  • Oggetto entità servizio: l'oggetto entità servizio è quello visualizzato nella finestra Registrazione organizzazione in Microsoft Entra ID. L'ID oggetto viene usato per concedere ruoli EA all'entità servizio.
  1. Aprire Microsoft Entra ID e quindi selezionare Applicazioni aziendali.

  2. Trovare l'app nell'elenco.

    Screenshot che mostra un'applicazione aziendale di esempio.

  3. Selezionare l'app per trovare l'ID applicazione e l'ID oggetto:

    Screenshot che mostra un ID applicazione e un ID oggetto per un'applicazione aziendale.

  4. Passare alla pagina Panoramica di Microsoft Entra ID per trovare l'ID tenant.

    Screenshot che mostra l'ID tenant.

Nota

Il valore dell'ID tenant di Microsoft Entra è simile a un GUID con il formato seguente: 11111111-1111-1111-1111-111111111111.

Autorizzazioni che possono essere assegnate all'entità servizio

Più avanti in questo articolo si concederà l'autorizzazione all'app Microsoft Entra per agire usando un ruolo EA. È possibile assegnare solo i ruoli seguenti all'entità servizio ed è necessario l'ID definizione del ruolo, esattamente come illustrato.

Ruolo Azioni consentite Un ID di definizione del ruolo
EnrollmentReader I lettori della registrazione possono visualizzare i dati negli ambiti di registrazione, reparto e account. I dati contengono addebiti per tutte le sottoscrizioni incluse negli ambiti, inclusi i tenant. Può visualizzare il saldo del pagamento anticipato di Azure (detto in precedenza impegno monetario) associato alla registrazione. 24f8edb6-1668-4659-b5e2-40bb5f3a7d7e
Addetto acquisti EA Acquistare gli ordini di prenotazione e visualizzare le transazioni di prenotazione. Dispone di tutte le autorizzazioni di EnrollmentReader, che a sua volta avrà tutte le autorizzazioni di DepartmentReader. Può visualizzare l'utilizzo e gli addebiti in tutti gli account e le sottoscrizioni. Può visualizzare il saldo del pagamento anticipato di Azure (detto in precedenza impegno monetario) associato alla registrazione. da6647fb-7651-49ee-be91-c43c4877f0c4
DepartmentReader Scaricare i dettagli di utilizzo per il reparto che amministrano. Può visualizzare l'utilizzo e gli addebiti associati al reparto. db609904-a47f-4794-9be8-9bd86fbffd8a
SubscriptionCreator Creare nuove sottoscrizioni nell'ambito specificato di Account. a0bcee42-bf30-4d1b-926a-48d21664ef71
  • Un ruolo EnrollmentReader può essere assegnato a un'entità servizio solo da un utente che ha un ruolo writer di registrazione. Il ruolo EnrollmentReader assegnato a un'entità servizio non viene visualizzato nel portale di Azure. Viene creato con mezzi programmatici ed è solo per l'uso a livello di codice.
  • Un ruolo DepartmentReader può essere assegnato a un'entità servizio solo da un utente che ha un ruolo writer di registrazione o writer del reparto.
  • Un ruolo SubscriptionCreator può essere assegnato a un'entità servizio solo da un utente proprietario dell'account di registrazione (amministratore EA). Il ruolo non viene visualizzato nella portale di Azure. Viene creato con mezzi programmatici ed è solo per l'uso a livello di codice.
  • Il ruolo di acquirente EA non viene visualizzato nel portale di Azure. Viene creato con mezzi programmatici ed è solo per l'uso a livello di codice.

Quando si concede un ruolo EA a un'entità servizio, è necessario usare la billingRoleAssignmentName proprietà obbligatoria. Il parametro è un GUID univoco che è necessario specificare. È possibile generare un GUID usando il comando PowerShell New-Guid . È anche possibile usare il sito Web Online GUID/UUID Generator per generare un GUID univoco.

Un'entità servizio può avere un solo ruolo.

Assegnare l'autorizzazione del ruolo dell'account di registrazione all'entità servizio

  1. Leggere l'articolo Assegnazioni di ruolo - Inserire l'API REST. Durante la lettura dell'articolo, selezionare Prova per iniziare usando l'entità servizio.

    Screenshot che mostra l'opzione Prova nell'articolo Put.

  2. Usare le credenziali dell'account per accedere al tenant con l'accesso alla registrazione da assegnare.

  3. Specificare i parametri seguenti come parte della richiesta API.

    • billingAccountName: questo parametro è l'ID dell'account di fatturazione. È possibile trovarla nella portale di Azure nella pagina panoramica di Gestione costi e fatturazione.

      Screenshot che mostra l'ID dell'account di fatturazione.

    • billingRoleAssignmentName: questo parametro è un GUID univoco che è necessario fornire. È possibile generare un GUID usando il comando PowerShell New-Guid . È anche possibile usare il sito Web Online GUID/UUID Generator per generare un GUID univoco.

    • api-version: usare la versione 2019-10-01-preview . Usare il corpo della richiesta di esempio in Assegnazioni di ruolo - Put - Esempi.

      Il corpo della richiesta ha codice JSON con tre parametri che è necessario usare.

      Parametro Posizione
      properties.principalId È il valore dell'ID oggetto. Vedere Trovare l'entità servizio e gli ID tenant.
      properties.principalTenantId Vedere Trovare l'entità servizio e gli ID tenant.
      properties.roleDefinitionId /providers/Microsoft.Billing/billingAccounts/{BillingAccountName}/billingRoleDefinitions/24f8edb6-1668-4659-b5e2-40bb5f3a7d7e

      Il nome dell'account di fatturazione è lo stesso parametro usato nei parametri dell'API. È l'ID di registrazione visualizzato nel portale di Azure.

      Si noti che 24f8edb6-1668-4659-b5e2-40bb5f3a7d7e è un ID di definizione del ruolo di fatturazione per un EnrollmentReader.

  4. Selezionare Esegui per avviare il comando.

    Screenshot che mostra un'assegnazione di ruolo di esempio con informazioni di esempio pronte per l'esecuzione.

    Una 200 OK risposta mostra che l'entità servizio è stata aggiunta correttamente.

È ora possibile usare l'entità servizio per accedere automaticamente alle API EA. L'entità servizio ha il ruolo EnrollmentReader.

Assegnare l'autorizzazione del ruolo Acquirente EA all'entità servizio

Per il ruolo di acquirente EA, usare gli stessi passaggi per il lettore di registrazione. roleDefinitionIdSpecificare , usando l'esempio seguente:

"/providers/Microsoft.Billing/billingAccounts/1111111/billingRoleDefinitions/ da6647fb-7651-49ee-be91-c43c4877f0c4"

Assegnare il ruolo lettore del reparto all'entità servizio

  1. Leggere l'articolo Assegnazioni di ruolo del reparto di registrazione - Inserire l'API REST. Durante la lettura dell'articolo, selezionare Prova.

    Screenshot che mostra l'opzione Prova nell'articolo Inserimento assegnazioni ruolo reparto registrazione.

  2. Usare le credenziali dell'account per accedere al tenant con l'accesso alla registrazione da assegnare.

  3. Specificare i parametri seguenti come parte della richiesta API.

    • billingAccountName: questo parametro è l'ID dell'account di fatturazione. È possibile trovarla nella portale di Azure nella pagina panoramica di Gestione costi e fatturazione.

      Screenshot che mostra l'ID dell'account di fatturazione.

    • billingRoleAssignmentName: questo parametro è un GUID univoco che è necessario fornire. È possibile generare un GUID usando il comando PowerShell New-Guid . È anche possibile usare il sito Web Online GUID/UUID Generator per generare un GUID univoco.

    • departmentName: questo parametro è l'ID reparto. È possibile visualizzare gli ID reparto nella portale di Azure nella pagina Gestione costi e reparti di fatturazione>.

      Per questo esempio è stato usato il reparto ACE. L'ID per l'esempio è 84819.

      Screenshot che mostra un ID reparto di esempio.

    • api-version: usare la versione 2019-10-01-preview . Usare l'esempio in Assegnazioni di ruolo del reparto di registrazione - Put.

      Il corpo della richiesta ha codice JSON con tre parametri che è necessario usare.

      Parametro Posizione
      properties.principalId È il valore dell'ID oggetto. Vedere Trovare l'entità servizio e gli ID tenant.
      properties.principalTenantId Vedere Trovare l'entità servizio e gli ID tenant.
      properties.roleDefinitionId /providers/Microsoft.Billing/billingAccounts/{BillingAccountName}/billingRoleDefinitions/db609904-a47f-4794-9be8-9bd86fbffd8a

      Il nome dell'account di fatturazione è lo stesso parametro usato nei parametri dell'API. È l'ID di registrazione visualizzato nel portale di Azure.

      L'ID definizione del ruolo di fatturazione di db609904-a47f-4794-9be8-9bd86fbffd8a è destinato a un lettore di reparto.

  4. Selezionare Esegui per avviare il comando.

    Screenshot che mostra un esempio di assegnazione di ruolo del reparto di registrazione - Prova REST con informazioni di esempio pronte per l'esecuzione.

    Una 200 OK risposta mostra che l'entità servizio è stata aggiunta correttamente.

È ora possibile usare l'entità servizio per accedere automaticamente alle API EA. L'entità servizio ha il ruolo DepartmentReader.

Assegnare il ruolo creatore della sottoscrizione all'entità servizio

  1. Leggere l'articolo Assegnazioni di ruolo dell'account di registrazione - Put . Durante la lettura, selezionare Prova per assegnare il ruolo creatore della sottoscrizione all'entità servizio.

    Screenshot che mostra l'opzione Prova nell'articolo Assegnazioni di ruolo dell'account di registrazione Put.

  2. Usare le credenziali dell'account per accedere al tenant con l'accesso alla registrazione da assegnare.

  3. Specificare i parametri seguenti come parte della richiesta API. Leggere l'articolo Assegnazioni di ruolo dell'account di registrazione - Parametri URI Put.

    • billingAccountName: questo parametro è l'ID dell'account di fatturazione. È possibile trovarla nella portale di Azure nella pagina panoramica di Gestione costi e fatturazione.

      Screenshot che mostra l'ID dell'account di fatturazione.

    • billingRoleAssignmentName: questo parametro è un GUID univoco che è necessario fornire. È possibile generare un GUID usando il comando PowerShell New-Guid . È anche possibile usare il sito Web Online GUID/UUID Generator per generare un GUID univoco.

    • enrollmentAccountName: questo parametro è l'ID account. Trovare l'ID account per il nome dell'account nella portale di Azure nella pagina Gestione costi e fatturazione.

      Per questo esempio è stato usato l'account di test GTM. L'ID è 196987.

      Screenshot che mostra l'ID account.

    • api-version: usare la versione 2019-10-01-preview . Usare l'esempio in Assegnazioni di ruolo del reparto di registrazione - Put - Esempi.

      Il corpo della richiesta ha codice JSON con tre parametri che è necessario usare.

      Parametro Posizione
      properties.principalId È il valore dell'ID oggetto. Vedere Trovare l'entità servizio e gli ID tenant.
      properties.principalTenantId Vedere Trovare l'entità servizio e gli ID tenant.
      properties.roleDefinitionId /providers/Microsoft.Billing/billingAccounts/{BillingAccountID}/enrollmentAccounts/{enrollmentAccountID}/billingRoleDefinitions/a0bcee42-bf30-4d1b-926a-48d21664ef71

      Il nome dell'account di fatturazione è lo stesso parametro usato nei parametri dell'API. È l'ID di registrazione visualizzato nel portale di Azure.

      L'ID definizione del ruolo di fatturazione di a0bcee42-bf30-4d1b-926a-48d21664ef71 è relativo al ruolo creatore della sottoscrizione.

  4. Selezionare Esegui per avviare il comando.

    Screenshot che mostra l'opzione Prova nell'articolo Assegnazioni di ruolo dell'account di registrazione - Put.

    Una 200 OK risposta indica che l'entità servizio è stata aggiunta correttamente.

È ora possibile usare l'entità servizio per accedere automaticamente alle API EA. L'entità servizio ha il ruolo SubscriptionCreator.

Verificare le assegnazioni di ruolo dell'entità servizio

Le assegnazioni di ruolo dell'entità servizio non sono visibili nella portale di Azure. È possibile visualizzare le assegnazioni di ruolo dell'account di registrazione, incluso il ruolo creatore della sottoscrizione, con l'API Billing Role Assignments - List By Enrollment Account - REST API (Azure Billing). Usare l'API per verificare che l'assegnazione di ruolo abbia avuto esito positivo.

Risoluzione dei problemi

È necessario identificare e usare l'ID oggetto applicazione enterprise in cui è stato concesso il ruolo EA. Se si usa l'ID oggetto di un'altra applicazione, le chiamate API avranno esito negativo. Verificare di usare l'ID oggetto applicazione Enterprise corretto.

Se viene visualizzato l'errore seguente quando si effettua la chiamata API, è possibile che si usi erroneamente il valore dell'ID oggetto dell'entità servizio che si trova in Registrazioni app. Per risolvere questo errore, assicurarsi di usare l'ID oggetto entità servizio da Applicazioni aziendali, non Registrazioni app.

The provided principal Tenant Id = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx and principal Object Id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx are not valid

Passaggi successivi

Introduzione all'account di fatturazione Contratto Enterprise.