Reindirizzare i collegamenti hardcoded per le app pubblicate con il proxy di app di Azure ADRedirect hardcoded links for apps published with Azure AD Application Proxy

Il proxy di applicazione di Azure AD rende disponibili le app locali per gli utenti remoti o che usano i propri dispositivi.Azure AD Application Proxy makes your on-premises apps available to users who are remote or on their own devices. Alcune app, tuttavia, sono state sviluppate con collegamenti locali incorporati nel codice HTML.Some apps, however, were developed with local links embedded in the HTML. Questi collegamenti non funzionano correttamente quando l'app viene usata in remoto.These links don't work correctly when the app is used remotely. Quando si dispone di diverse applicazioni locali che si puntano a vicenda, gli utenti si aspettano che i collegamenti continuino a lavorare quando non si trovano in ufficio.When you have several on-premises applications point to each other, your users expect the links to keep working when they're not at the office.

Il modo migliore per assicurarsi che i collegamenti funzionino all'interno e all'esterno della rete aziendale consiste nel configurare gli URL esterni delle app in modo che corrispondano con gli URL interni.The best way to make sure that links work the same both inside and outside of your corporate network is to configure the external URLs of your apps to be the same as their internal URLs. Usare domini personalizzati per configurare l'URL esterno in modo che abbia il nome di dominio aziendale anziché il proxy di applicazione predefinito.Use custom domains to configure your external URLs to have your corporate domain name instead of the default application proxy domain.

Se non è possibile usare domini personalizzati nel tenant, la funzionalità di conversione dei collegamenti del proxy di applicazione mantiene in funzione i collegamenti indipendentemente dalla posizione degli utenti.If you can't use custom domains in your tenant, then the link translation feature of Application Proxy keeps your links working no matter where your users are. Quando si hanno applicazioni che puntano direttamente a endpoint o porte interne, è possibile mappare questi URL interni agli URL esterni pubblicati del proxy di applicazione.When you have apps that point directly to internal endpoints or ports, you can map these internal URLs to the published external Application Proxy URLs. Quando la conversione dei collegamenti è abilitata e il proxy di applicazione cerca nel codice HTML e CSS i collegamenti interni pubblicati, il servizio proxy di applicazione li converte in modo da offrire agli utenti un'esperienza senza interruzioni.When link translation is enabled, and Application Proxy searches through HTML and CSS for published internal links, the Application Proxy service translates them so that your users get an uninterrupted experience.

Nota

La funzionalità di conversione dei collegamenti è per i tenant che, per qualsiasi motivo, non possono usare i domini personalizzati per avere gli stessi URL interni ed esterni per le app.The link translation feature is for tenants that, for whatever reason, can't use custom domains to have the same internal and external URLs for their apps. Prima di abilitare questa funzionalità, verificare se i domini personalizzati nel proxy di applicazione di Azure AD possono fare al caso.Before you enable this feature, see if custom domains in Azure AD Application Proxy can work for you.

Oppure, se l'applicazione che deve essere configurata con la traslazione del collegamento è SharePoint, vedere Configurare i mapping di accesso alternativo per SharePoint 2013 per un altro approccio ai collegamenti di mapping.Or, if the application you need to configure with link translation is SharePoint, see Configure alternate access mappings for SharePoint 2013 for another approach to mapping links.

Dopo l'autenticazione, quando il server proxy passa i dati dell'applicazione all'utente, il proxy di applicazione esegue l'analisi dell'applicazione alla ricerca dei collegamenti hardcoded e li sostituisce con i rispettivi URL esterni pubblicati.After authentication, when the proxy server passes the application data to the user, Application Proxy scans the application for hardcoded links and replaces them with their respective, published external URLs.

Il Proxy dell'applicazione presuppone che le applicazioni vengano codificate in UTF-8.Application Proxy assumes that applications are encoded in UTF-8. Se non è questo il caso, specificare il tipo di codifica in un'intestazione di risposta http, ad esempio Content-Type:text/html;charset=utf-8.If that's not the case, specify the encoding type in an http response header, like Content-Type:text/html;charset=utf-8.

La funzionalità di conversione dei collegamenti cerca solo i collegamenti che si trovano nel tag di codice nel corpo di un'app.The link translation feature only looks for links that are in code tags in the body of an app. Il proxy di applicazione ha una funzione separata per la conversione dei cookie o URL in intestazioni.Application Proxy has a separate feature for translating cookies or URLs in headers.

Esistono due tipi comuni di collegamenti interni nelle applicazioni locali:There are two common types of internal links in on-premises applications:

  • I collegamenti interni relativi che puntano a una risorsa condivisa in una struttura di file locale come /claims/claims.html.Relative internal links that point to a shared resource in a local file structure like /claims/claims.html. Questi collegamenti sono attivati automaticamente nelle app che vengono pubblicate tramite il proxy di applicazione e continuano a funzionare con o senza la conversione dei collegamenti.These links automatically work in apps that are published through Application Proxy, and continue to work with or without link translation.
  • I collegamenti interni hardcoded ad altre applicazioni locali come http://expenses o i file pubblicati come http://expenses/logo.jpg.Hardcoded internal links to other on-premises apps like http://expenses or published files like http://expenses/logo.jpg. La funzionalità di conversione dei collegamenti opera sui collegamenti interni hardcoded e li converte, in modo che puntino agli URL esterni che gli utenti remoti devono usare.The link translation feature works on hardcoded internal links, and changes them to point to the external URLs that remote users need to go through.

La conversione dei collegamenti è abilitata per ogni applicazione, perciò si ha il controllo dell'esperienza utente a livello di app.Link translation is enabled for each application, so that you have control over the user experience at the per-app level. Attivare la conversione dei collegamenti per un'app quando si desidera che siano convertiti i collegamenti da tale app e non i collegamenti a tale app.Turn on link translation for an app when you want the links from that app to be translated, not links to that app.

Ad esempio, si supponga di avere tre applicazioni pubblicate mediante il proxy di applicazione e che tutte siano collegate tra loro: Benefits, Expenses e Travel.For example, suppose that you have three applications published through Application Proxy that all link to each other: Benefits, Expenses, and Travel. C'è una quarta app, Feedback, che non viene pubblicata tramite il proxy di applicazione.There's a fourth app, Feedback, that isn't published through Application Proxy.

Quando si abilita la conversione dei collegamenti per l'app Benefits, i collegamenti a Expenses e Travel sono reindirizzati agli URL esterni per tali app, ma il collegamento a Feedback non viene reindirizzato perché non esiste alcun URL esterno.When you enable link translation for the Benefits app, the links to Expenses and Travel are redirected to the external URLs for those apps, but the link to Feedback is not redirected because there is no external URL. I collegamenti da Expenses e Travel a Benefits non funzionano perché la conversione dei collegamenti non è stata abilitata per queste due app.Links from Expenses and Travel back to Benefits don't work, because link translation has not been enabled for those two apps.

Collegamenti da Benefits ad altre app quando è abilitata la conversione dei collegamenti

Per migliorare prestazioni e sicurezza, alcuni collegamenti non vengono convertiti:To improve performance and security, some links aren't translated:

  • Collegamenti non interni ai tag di codice.Links not inside of code tags.
  • Collegamenti non inclusi nel codice HTML o CSS.Links not in HTML or CSS.
  • Collegamenti interni aperti da altri programmi.Internal links opened from other programs. I collegamenti inviati tramite posta elettronica o messaggistica istantanea o inclusi in altri documenti non vengono convertiti.Links sent through email or instant message, or included in other documents, won't be translated. Gli utenti devono sapere di passare all'URL esterno.The users need to know to go to the external URL.

Se è necessario supportare uno di questi due scenari, usare gli stessi URL interni ed esterni, al posto della conversione dei collegamenti.If you need to support one of these two scenarios, use the same internal and external URLs instead of link translation.

Per iniziare con la conversione dei collegamenti, è sufficiente fare clic su un pulsante:Getting started with link translation is as easy as clicking a button:

  1. Accedere al portale di Azure come amministratore.Sign in to the Azure portal as an administrator.
  2. Passare ad Azure Active Directory > Applicazioni aziendali > Tutte le applicazioni > selezionare l'app che si desidera gestire > Proxy di applicazione.Go to Azure Active Directory > Enterprise applications > All applications > select the app you want to manage > Application proxy.
  3. Impostare l'opzione di conversione URL nel corpo dell'applicazione su .Turn Translate URLs in application body to Yes.

    Selezionare Sì per convertire gli URL nel corpo dell'applicazione..

  4. Selezionare Salva per applicare le modifiche.Select Save to apply your changes.

Ora, quando gli utenti accedono a questa applicazione, il proxy esegue automaticamente un'analisi per individuare gli URL interni che sono stati pubblicati tramite il proxy di applicazione nel tenant.Now, when your users access this application, the proxy will automatically scan for internal URLs that have been published through Application Proxy on your tenant.

Inviare commenti e suggerimentiSend feedback

I commenti e i suggerimenti degli utenti sono utili per rendere questa funzionalità applicabile a tutte le app.We want your help to make this feature work for all your apps. La ricerca viene eseguita in oltre 30 tag del codice HTML e CSS.We search over 30 tags in HTML and CSS. Se si hanno esempi di collegamenti generati che non vengono convertiti, inviare un frammento di codice all'area commenti sul proxy di applicazione.If you have an example of generated links that aren't being translated, send a code snippet to Application Proxy Feedback.

Passaggi successiviNext steps

Usare i domini personalizzati con il proxy di applicazione Azure AD per avere gli stessi URL interni ed esterniUse custom domains with Azure AD Application Proxy to have the same internal and external URL

Configurare i mapping di accesso alternativo per for SharePoint 2013Configure alternate access mappings for SharePoint 2013