Procedura: usare il portale per creare un'applicazione Azure AD e un'entità servizio che possano accedere alle risorseHow to: Use the portal to create an Azure AD application and service principal that can access resources

Questo articolo illustra come creare una nuova applicazione Azure Active Directory (Azure AD) e un'entità servizio che può essere utilizzata con il controllo di accesso basato sui ruoli.This article shows you how to create a new Azure Active Directory (Azure AD) application and service principal that can be used with the role-based access control. Se il codice che si sta usando deve accedere alle risorse o modificarle, è possibile creare un'identità per l'app.When you have code that needs to access or modify resources, you can create an identity for the app. Questa identità è nota come entità servizio.This identity is known as a service principal. È quindi possibile assegnare le autorizzazioni richieste all'entità servizio.You can then assign the required permissions to the service principal. Questo articolo illustra come usare il portale per creare l'entità servizio.This article shows you how to use the portal to create the service principal. È incentrato su un'applicazione con un tenant singolo dove si prevede che l'applicazione venga eseguita all'interno di una sola organizzazione.It focuses on a single-tenant application where the application is intended to run within only one organization. Le applicazioni con un tenant singolo si usano in genere per applicazioni line-of-business eseguite all'interno dell'organizzazione.You typically use single-tenant applications for line-of-business applications that run within your organization.

Importante

Anziché creare un'entità servizio, considerare l'uso delle identità gestite per le risorse di Azure per l'identità dell'applicazione.Instead of creating a service principal, consider using managed identities for Azure resources for your application identity. Se il codice viene eseguito in un servizio che supporta le identità gestite e accede a risorse che supportano l'autenticazione di Azure AD, identità gestite sono un'opzione migliore per l'utente.If your code runs on a service that supports managed identities and accesses resources that support Azure AD authentication, managed identities are a better option for you. Per altre informazioni sulle identità gestite per le risorse di Azure, inclusi i servizi attualmente supportati, vedere Informazioni sulle identità gestite per le risorse di Azure.To learn more about managed identities for Azure resources, including which services currently support it, see What is managed identities for Azure resources?.

Creare un'applicazione Azure Active DirectoryCreate an Azure Active Directory application

Si passerà direttamente alla creazione dell'identità.Let's jump straight into creating the identity. Se si verifica un problema, controllare le autorizzazioni necessarie per assicurarsi che l'account possa creare l'identità.If you run into a problem, check the required permissions to make sure your account can create the identity.

  1. Accedere all'account di Azure tramite il portale di Azure.Sign in to your Azure Account through the Azure portal.

  2. Selezionare Azure Active Directory.Select Azure Active Directory.

  3. Selezionare Registrazioni per l'app.Select App registrations.

    Selezionare Registrazioni per l'app

  4. Selezionare Nuova registrazione.Select New registration.

    Aggiungere l'app

  5. Specificare un nome per l'applicazione.Provide a name for the application. Selezionare un account supportato tipo, che determina chi può usare l'applicazione.Select a supported account type, which determines who can use the application. Sotto URI di reindirizzamento, selezionare Web per il tipo di applicazione che si desidera creare.Under Redirect URI, select Web for the type of application you want to create. Immettere l'URI in cui il token di accesso viene inviato.Enter the URI where the access token is sent to. Non è possibile creare credenziali per un'applicazione nativaYou can't create credentials for a Native application. e non è possibile usare questo tipo per creare un'applicazione automatica.You can't use that type for an automated application. Dopo aver impostato i valori, selezionare registrare.After setting the values, select Register.

    Assegnare un nome all'applicazione

Sono state create un'applicazione e un'entità servizio di Azure AD.You've created your Azure AD application and service principal.

Assegnare l'applicazione a un ruoloAssign the application to a role

Per accedere alle risorse della propria sottoscrizione è necessario assegnare l'applicazione a un ruolo.To access resources in your subscription, you must assign the application to a role. Decidere quale ruolo offre le autorizzazioni appropriate per l'applicazione.Decide which role offers the right permissions for the application. Per informazioni sui ruoli disponibili, vedere RBAC: ruoli predefiniti.To learn about the available roles, see RBAC: Built in Roles.

È possibile impostare l'ambito al livello della sottoscrizione, del gruppo di risorse o della risorsa.You can set the scope at the level of the subscription, resource group, or resource. Le autorizzazioni vengono ereditate a livelli inferiori dell'ambito.Permissions are inherited to lower levels of scope. Se ad esempio si aggiunge un'applicazione al ruolo Lettore per un gruppo di risorse, l'applicazione può leggere il gruppo di risorse e le risorse in esso contenute.For example, adding an application to the Reader role for a resource group means it can read the resource group and any resources it contains.

  1. Passare al livello dell'ambito al quale si vuole assegnare l'applicazione.Navigate to the level of scope you wish to assign the application to. Ad esempio, per assegnare un ruolo a un ambito della sottoscrizione, selezionare Tutti i servizi e Sottoscrizioni.For example, to assign a role at the subscription scope, select All services and Subscriptions.

    Selezionare la sottoscrizione

  2. Selezionare la sottoscrizione specifica a cui assegnare l'applicazione.Select the particular subscription to assign the application to.

    Selezionare la sottoscrizione per l'assegnazione

    Se la sottoscrizione che si sta cercando non viene visualizzata, selezionare il filtro per le sottoscrizioni globali.If you don't see the subscription you're looking for, select global subscriptions filter. Assicurarsi che la sottoscrizione desiderata sia selezionata per il portale.Make sure the subscription you want is selected for the portal.

  3. Selezionare Controllo di accesso (IAM) .Select Access control (IAM).

  4. Selezionare Aggiungi assegnazione ruolo.Select Add role assignment.

    Selezionare aggiungi assegnazione ruolo

  5. Selezionare il ruolo che si desidera assegnare all'applicazione.Select the role you wish to assign to the application. Per consentire all'applicazione di eseguire azioni quali istanze di riavvio, avvio e arresto, selezionare il ruolo Collaboratore.To allow the application to execute actions like reboot, start and stop instances, select the Contributor role. Per impostazione predefinita, le applicazioni di Azure AD non sono visualizzate nelle opzioni disponibili.By default, Azure AD applications aren't displayed in the available options. Per trovare l'applicazione, cercare il nome e selezionarlo.To find your application, search for the name and select it.

    Selezionare il ruolo

  6. Selezionare Salva per completare l'assegnazione del ruolo.Select Save to finish assigning the role. L'applicazione ora compare nell'elenco degli utenti assegnati a un ruolo per quell'ambito.You see your application in the list of users assigned to a role for that scope.

L'entità servizio è stata configurataYour service principal is set up. ed è possibile iniziare a usarla per eseguire script o app.You can start using it to run your scripts or apps. Nella sezione successiva viene illustrato come ottenere i valori necessari quando si accede a livello di codice.The next section shows how to get values that are needed when signing in programmatically.

Ottenere i valori per l'accessoGet values for signing in

Quando si accede a livello di codice, è necessario specificare l'ID tenant con la richiesta di autenticazione.When programmatically signing in, you need to pass the tenant ID with your authentication request. Sono necessari anche l'ID dell'applicazione e una chiave di autenticazione.You also need the ID for your application and an authentication key. Per ottenere questi valori eseguire la procedura seguente:To get those values, use the following steps:

  1. Selezionare Azure Active Directory.Select Azure Active Directory.

  2. Da Registrazioni app in Azure AD selezionare l'applicazione.From App registrations in Azure AD, select your application.

    Selezionare l'applicazione

  3. Copiare l'ID di Directory (tenant) e archiviarlo nel codice dell'applicazione.Copy the Directory (tenant) ID and store it in your application code.

    ID tenant

  4. Copiare l'ID applicazione e archiviarlo nel codice dell'applicazione.Copy the Application ID and store it in your application code.

    ID client

I segreti e certificatiCertificates and secrets

Applicazioni daemon possono usare due tipi di credenziali per l'autenticazione con Azure AD: certificati e i segreti dell'applicazione.Daemon applications can use two forms of credentials to authenticate with Azure AD: certificates and application secrets. È consigliabile usare un certificato, ma è anche possibile creare un nuovo segreto dell'applicazione.We recommend using a certificate, but you can also create a new application secret.

Caricamento di un certificatoUpload a certificate

È possibile usare un certificato esistente se ne hai uno.You can use an existing certificate if you have one. Facoltativamente, è possibile creare un certificato autofirmato a scopo di test.Optionally, you can create a self-signed certificate for testing purposes. Aprire PowerShell ed eseguire New-SelfSignedCertificate con i parametri seguenti per creare un certificato autofirmato nell'archivio certificati utente nel computer in uso: $cert=New-SelfSignedCertificate -Subject "CN=DaemonConsoleCert" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature.Open PowerShell and run New-SelfSignedCertificate with the following parameters to create a self-signed certificate in the user certificate store on your computer: $cert=New-SelfSignedCertificate -Subject "CN=DaemonConsoleCert" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature. Esportare questo certificato usando il Gestisci certificato utente snap-in MMC accessibili dal Pannello di controllo di Windows.Export this certificate using the Manage User Certificate MMC snap-in accessible from the Windows Control Panel.

Per caricare il certificato:To upload the certificate:

  1. Selezionare certificati e i segreti.Select Certificates & secrets.

    Selezionare Impostazioni

  2. Fare clic su carica certificato e selezionare il certificato (autofirmato o un certificato esistente del certificato viene esportato).Click on Upload certificate and select the certificate (an existing certificate or the self-signed certificate you exported). Carica certificatoUpload certificate

  3. Fare clic su Aggiungi.Click Add.

Dopo aver registrato il certificato con l'applicazione nel portale di registrazione dell'applicazione, è necessario abilitare il codice dell'applicazione client usare il certificato.After registering the certificate with your application in the application registration portal, you need to enable the client application code to use the certificate.

Crea un nuovo segreto dell'applicazioneCreate a new application secret

Se si sceglie di non utilizzare un certificato, è possibile creare un nuovo segreto dell'applicazione.If you choose not to use a certificate, you can create a new application secret.

  1. Selezionare certificati e i segreti.Select Certificates & secrets.

    Selezionare Impostazioni

  2. Selezionare i segreti Client -> nuovo segreto client.Select Client secrets -> New client secret.

  3. Fornire una descrizione del segreto e una durata.Provide a description of the secret, and a duration. Al termine, selezionare Add.When done, select Add.

    Salvare il segreto

    Dopo aver salvato il segreto client, viene visualizzato il valore del segreto client.After saving the client secret, the value of the client secret is displayed. Copiare il valore in quanto non sarà possibile recuperare la chiave in seguito.Copy this value because you aren't able to retrieve the key later. Il valore della chiave sarà fornito insieme all'ID applicazione per eseguire l'accesso come applicazione.You provide the key value with the application ID to sign in as the application. Salvare il valore della chiave in una posizione in cui l'applicazione possa recuperarlo.Store the key value where your application can retrieve it.

    Copiare la chiave privata

Autorizzazioni necessarieRequired permissions

È necessario disporre di autorizzazioni sufficienti per registrare un'applicazione con il tenant di Azure AD e assegnare l'applicazione a un ruolo nella sottoscrizione di Azure.You must have sufficient permissions to register an application with your Azure AD tenant, and assign the application to a role in your Azure subscription.

Controllare le autorizzazioni di Azure ADCheck Azure AD permissions

  1. Selezionare Azure Active Directory.Select Azure Active Directory.

  2. Annotare il proprio ruolo.Note your role. Se si ha il ruolo Utente, assicurarsi che anche gli utenti non amministratori possano registrare le applicazioni.If you have the User role, you must make sure that non-administrators can register applications.

    Trovare un utente

  3. Selezionare Impostazioni utente.Select User settings.

    Selezionare Impostazioni utente

  4. Controllare l'impostazione Registrazioni per l'app.Check the App registrations setting. Questo valore può essere impostato solo da un amministratore.This value can only be set by an administrator. Se è impostato su , qualsiasi utente nel tenant di Azure AD può registrare un'app.If set to Yes, any user in the Azure AD tenant can register an app.

    Visualizzare le registrazioni dell'app

Se l'impostazione relativa alle registrazioni dell'app è impostata su No, solo gli utenti con un ruolo di amministratore possono registrare questi tipi di applicazioni.If the app registrations setting is set to No, only users with an administrator role may register these types of applications. Vedere Ruoli disponibili e Autorizzazioni dei ruoli per informazioni sui ruoli di amministratore disponibili e le specifiche autorizzazioni di Azure AD assegnate a ogni ruolo.See available roles and role permissions to learn about available administrator roles and the specific permissions in Azure AD that are given to each role. Se l'account è assegnato al ruolo Utente, ma l'impostazione relativa alle registrazioni dell'app è limitata agli utenti amministratori, chiedere al proprio amministratore di essere assegnati a uno dei ruoli di amministratore in grado di gestire tutti gli aspetti delle registrazioni dell'app oppure di consentire agli utenti di registrare le app.If your account is assigned to the User role, but the app registration setting is limited to admin users, ask your administrator to either assign you to one of the administrator roles that can create and manage all aspects of app registrations, or to enable users to register apps.

Controllare le autorizzazioni di sottoscrizione di AzureCheck Azure subscription permissions

Nella sottoscrizione di Azure è necessario che l'account disponga dell'accesso Microsoft.Authorization/*/Write per assegnare un'app di Active Directory a un ruolo.In your Azure subscription, your account must have Microsoft.Authorization/*/Write access to assign an AD app to a role. Questa azione è concessa tramite il ruolo Proprietario o Amministratore accessi utente.This action is granted through the Owner role or User Access Administrator role. Se il proprio account è assegnato al ruolo Collaboratore, non si dispone dell'autorizzazione appropriata.If your account is assigned to the Contributor role, you don't have adequate permission. Se si tenterà di assegnare l'entità servizio a un ruolo si riceve un errore.You receive an error when attempting to assign the service principal to a role.

Per controllare le proprie autorizzazioni di sottoscrizione:To check your subscription permissions:

  1. Selezionare l'account in alto a destra e selezionare ... -> autorizzazioni personali.Select your account in the upper right corner, and select ... -> My permissions.

    Selezionare le autorizzazioni utente

  2. Nell'elenco a discesa selezionare la sottoscrizione in cui si vuole creare l'entità servizio.From the drop-down list, select the subscription you want to create the service principal in. Selezionare quindi Fare clic qui per visualizzare i dettagli di accesso completi per questa compilazione.Then, select Click here to view complete access details for this subscription.

    Trovare un utente

  3. Selezionare assegnazioni di ruolo per visualizzare i ruoli assegnati e determinare se si dispone delle autorizzazioni adeguate per assegnare un'app AD a un ruolo.Select Role assignments to view your assigned roles, and determine if you have adequate permissions to assign an AD app to a role. In caso contrario chiedere all'amministratore della sottoscrizione di essere aggiunti al ruolo Amministratore accessi utente.If not, ask your subscription administrator to add you to User Access Administrator role. Nella figura seguente l'utente è assegnato al ruolo Proprietario, perciò dispone delle autorizzazioni adeguate.In the following image, the user is assigned to the Owner role, which means that user has adequate permissions.

    Visualizzare le autorizzazioni

Passaggi successiviNext steps