Come abilitare le app client native per l'interazione con le applicazioni proxyHow to enable native client apps to interact with proxy applications

Oltre che per le applicazioni Web, è possibile usare il proxy di applicazione di Azure Active Directory per pubblicare app client native configurate con Azure AD Authentication Library (ADAL).In addition to web applications, Azure Active Directory Application Proxy can also be used to publish native client apps that are configured with the Azure AD Authentication Library (ADAL). Le app client native si differenziano dalle app Web perché vengono installate su un dispositivo, mentre le app Web sono accessibili tramite un browser.Native client apps differ from web apps because they are installed on a device, while web apps are accessed through a browser.

Il proxy di applicazione supporta le app client native accettando i token rilasciati da Azure AD e inviati nell'intestazione.Application Proxy supports native client apps by accepting Azure AD issued tokens sent in the header. Il servizio Proxy di applicazione esegue l'autenticazione per conto degli utenti.The Application Proxy service performs authentication on behalf of the users. Questa soluzione non prevede l'utilizzo di token di applicazione per l'autenticazione.This solution does not use application tokens for authentication.

Relazione tra utenti finali, Azure Active Directory e applicazioni pubblicate

Per pubblicare applicazioni native, usare Azure AD Authentication Library, che gestisce l'autenticazione e supporta molti ambienti client.Use the Azure AD Authentication Library, which takes care of authentication and supports many client environments, to publish native applications. Il proxy di applicazione si integra con lo scenario Da applicazione nativa ad API Web.Application Proxy fits into the Native Application to Web API scenario.

Questo articolo illustra i quattro passaggi necessari per pubblicare un'applicazione nativa con il proxy di applicazione e Azure AD Authentication Library.This article walks you through the four steps to publish a native application with Application Proxy and the Azure AD Authentication Library.

Passaggio 1: Pubblicare l'applicazioneStep 1: Publish your application

Pubblicare l'applicazione proxy come qualsiasi altra applicazione e assegnare agli utenti l'accesso all'applicazione.Publish your proxy application as you would any other application and assign users to access your application. Per altre informazioni, vedere Pubblicare applicazioni mediante il proxy di applicazione.For more information, see Publish applications with Application Proxy.

Passaggio 2: Configurare l'applicazioneStep 2: Configure your application

Configurare l'applicazione nativa come indicato di seguito:Configure your native application as follows:

  1. Accedere al portale di Azure.Sign in to the Azure portal.
  2. Passare ad Azure Active Directory > Registrazioni per l'app.Navigate to Azure Active Directory > App registrations.
  3. Selezionare Registrazione nuova applicazione.Select New application registration.
  4. Specificare un nome, selezionare Nativa come tipo di applicazione e immettere l'URI di reindirizzamento per l'applicazione.Specify a name for your application, select Native as the application type, and provide the Redirect URI for your application.

    Creare una nuova registrazione di app

  5. Selezionare Crea.Select Create.

Per informazioni più dettagliate sulla creazione di una nuova registrazione di app, vedere Integrazione di applicazioni con Azure Active Directory.For more detailed information about creating a new app registration, see Integrating applications with Azure Active Directory.

Passaggio 3: Concedi accesso ad altre applicazioniStep 3: Grant access to other applications

Abilitare l'applicazione nativa da esporre ad altre applicazioni nella directory:Enable the native application to be exposed to other applications in your directory:

  1. In Registrazioni per l'app selezionare la nuova applicazione nativa appena creata.Still in App registrations, select the new native application that you just created.
  2. Selezionare Autorizzazioni necessarie.Select Required permissions.
  3. Selezionare Aggiungi.Select Add.
  4. Aprire il primo passaggio, Selezionare un'API.Open the first step, Select an API.
  5. Usare la barra di ricerca per trovare l'app del proxy di applicazione pubblicata nella prima sezione.Use the search bar to find the Application Proxy app that you published in the first section. Scegliere tale app e quindi fare clic su Seleziona.Choose that app, then click Select.

    Cercare l'app proxy

  6. Aprire il secondo passaggio, Selezionare le autorizzazioni.Open the second step, Select permissions.
  7. Usare la casella di controllo per concedere all'applicazione proxy l'accesso all'applicazione nativa e quindi fare clic su Seleziona.Use the checkbox to grant your native application access to your proxy application, then click Select.

    Concedere l'accesso all'app proxy

  8. Selezionare Operazione completata.Select Done.

Passaggio 4: Modificare Active Directory Authentication LibraryStep 4: Edit the Active Directory Authentication Library

Modificare il codice dell'applicazione nativa nel contesto di autenticazione di Active Directory Authentication Library (ADAL) per includere il testo seguente:Edit the native application code in the authentication context of the Active Directory Authentication Library (ADAL) to include the following text:

// Acquire Access Token from AAD for Proxy Application
AuthenticationContext authContext = new AuthenticationContext("https://login.microsoftonline.com/<Tenant ID>");
AuthenticationResult result = authContext.AcquireToken("< External Url of Proxy App >",
        "<App ID of the Native app>",
        new Uri("<Redirect Uri of the Native App>"),
        PromptBehavior.Never);

//Use the Access Token to access the Proxy Application
HttpClient httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", result.AccessToken);
HttpResponseMessage response = await httpClient.GetAsync("< Proxy App API Url >");

Le variabili nel codice di esempio devono essere sostituite come segue:The variables in the sample code should be replaced as follows:

  • Il valore di Tenant ID è riportato nel portale di Azure.Tenant ID can be found in the Azure portal. Passare ad Azure Active Directory > Proprietà e copiare l'ID directory.Navigate to Azure Active Directory > Properties and copy the Directory ID.
  • Il valore di External URL è l'URL front-end immesso nell'applicazione proxy.External URL is the front-end URL you entered in the Proxy Application. Per trovare questo valore, passare alla sezione Proxy dell'applicazione dell'app proxy.To find this value, navigate to the Application proxy section of the proxy app.
  • Il valore di App ID of the Native app è riportato nella pagina Proprietà dell'applicazione nativa.App ID of the native app can be found on the Properties page of the native application.
  • Il valore di Redirect URI of the native app è riportato nella pagina URI di reindirizzamento dell'applicazione nativa.Redirect URI of the native app can be found on the Redirect URIs page of the native application.

Dopo la modifica di ADAL con questi parametri, gli utenti dovrebbero essere in grado di eseguire l'autenticazione alle app client native, anche se si trovano all'esterno della rete aziendale.Once the ADAL is edited with these parameters, your users should be able to authenticate to native client apps even when they're outside of the corporate network.

Passaggi successiviNext steps

Per altre informazioni sul flusso delle applicazioni native, vedere Da applicazione nativa ad API WebFor more information about the native application flow, see Native application to web API

Ottenere informazioni su come configurare l'accesso Single Sign-On per il proxy di applicazioneLearn about setting up Single sign-on for Application Proxy