Configurare Single Sign-On in con Microsoft Entra ID

Copilot Studio supporta Single Sign-On (SSO). SSO consente ai copiloti nel sito Web di far accedere i clienti se sono già connessi alla pagina o all'app in cui è distribuito il copilota.

Prerequisiti

Nota

Per configurare SSO utilizzando altri provider OAuth 2.0, consulta Configurare Single Sign-On con provider OAuth generici

Ad esempio, il copilota è ospitato sull'intranet aziendale o in un'app a cui l'utente ha già effettuato l'accesso.

Sono disponibili quattro passaggi principali per la configurazione di SSO per Copilot Studio:

  1. Crea una registrazione app in Microsoft Entra ID per il canvas personalizzato.

  2. Definire un ambito personalizzato per il tuo copilota.

  3. Configura l'autenticazione in Copilot Studio per abilitare SSO.

  4. Configura il codice HTML canvas personalizzato per abilitare SSO.

Canali supportati

La tabella seguente descrive in dettaglio i canali che attualmente supportano SSO. Puoi suggerire il supporto per canali extra al forum delle idee di Microsoft Copilot Studio.

Canale Supportato
Canali del servizio Azure Bot Non supportato
Sito Web personalizzato Supportato
Sito Web demo Non supportato
Facebook Non supportato
Microsoft Teams1 Supportato
App per dispositivi mobili Non supportato
Multicanale per il servizio clienti2 Supportato

1 Se hai anche il canale Teams abilitato, devi seguire le istruzioni di configurazione nella documentazione Configurare Single Sign-On con Microsoft Entra ID per i copiloti in Microsoft Teams. Se non si configurano le impostazioni SSO di Teams come indicato in quella pagina, gli utenti non riusciranno mai a eseguire l'autenticazione quando usano il canale Teams.

2 È supportato solo il canale della live chat. Per ulteriori informazioni, vedi Configurare il passaggio a Dynamics 365 Customer Service.

Importante

SSO attualmente non è supportato quando un copilota viene:

Tuttavia, SSO è supportato per un copilota che è stato pubblicato su un sito Web SharePoint come componente SPFx.

Creare registrazioni app per il sito Web personalizzato

Per abilitare SSO, avrai bisogno di creare due registrazioni di app separate:

  • Una registrazione dell'app di autenticazione, che consente l'autenticazione utente Microsoft Entra ID per il tuo copilota
  • Una registrazione dell'app canvas che abilita SSO per la tua pagina web personalizzata

Per motivi di sicurezza, non consigliamo di riutilizzare la stessa registrazione dell'app sia per il copilota che per il sito Web personalizzato.

  1. Segui le istruzioni in Configurare l'autenticazione dell'utente con Microsoft Entra ID per creare una registrazione dell'app di autenticazione.

  2. Segui nuovamente le istruzioni per la registrazione di un'app di autenticazione per creare una seconda registrazione di app che serve come registrazione della tua app canvas.

  3. Aggiungi l'ID della registrazione dell'app canvas alla registrazione dell'app di autenticazione.

Aggiungere un URL di scambio di token

Per aggiornare le impostazioni di autenticazione di Microsoft Entra ID in Copilot Studio, devi aggiungere l'URL di scambio del token per consentire alla tua app e a Copilot Studio di condividere informazioni.

  1. Nel portale di Azure sul pannello di registrazione dell'app di autenticazione, vai a Esponi un'API.

  2. Sotto Ambiti, seleziona Copia negli appunti.

    Screenshot del pulsante Copia negli appunti.

  3. In Copilot Studio, nel menu di spostamento in Impostazioni, seleziona Sicurezza, quindi seleziona il riquadro Autenticazione.

  4. Per URL di scambio token (richiesto per SSO), incolla l'ambito che hai copiato in precedenza.

    Screenshot dell'URI ID applicazione inserito come URL di scambio token in Copilot Studio.

  5. Seleziona Salva.

Configurare la registrazione dell'app canvas

  1. Dopo aver creato la registrazione dell'app canvas, vai a Autenticazione e seleziona Aggiungi una piattaforma.

  2. In Configurazioni della piattaforma seleziona Aggiungi una piattaforma, quindi seleziona Web.

  3. In URI di indirizzamento, inserisci l'URL della tua pagina web, ad esempio http://contoso.com/index.html.

    Screenshot della pagina Configura Web.

  4. Nella sezione Concessione implicita e flussi ibridi, attiva Token di accesso (usati per flussi impliciti) e Token ID (usati per i flussi impliciti ed ibridi).

  5. Seleziona Configura.

Trova l'URL endpoint del token del tuo copilota

  1. In Copilot Studio, apri il copilota, quindi seleziona Canali.

  2. Seleziona App per dispositivi mobili.

  3. In Endpoint token, seleziona Copia.

    Screenshot della copia dell'URL del dell'endpoint del token in Copilot Studio.

Configurare SSO nella pagina web

Utilizza il codice fornito nel repository GitHub di Copilot Studio per creare una pagina Web per l'URL di reindirizzamento. Copia il codice dal repository GitHub e modificalo utilizzando le istruzioni fornite di seguito.

Nota

Il codice nel repository GitHub richiede che l'utente selezioni un pulsante di accesso o acceda da un sito diverso. Per abilitare l'accesso automatico, aggiungi il seguente codice all'inizio di aysnc fucntion main():

    (async function main() {
        if (clientApplication.getAccount() == null) {
           await clientApplication.loginPopup(requestObj).then(onSignin).catch(function (error) {console.log(error) });
        }
        // Add your BOT ID below 
        var theURL =
  1. Vai alla pagina Panoramica nel portale di Azure e copia ID applicazione (client) e ID directory (tenant) dalla registrazione dell'app canvas.

    Screenshot della pagina Panoramica registrazione app nel portale di Azure, con Panoramica, ID applicazione e ID directory evidenziati.

  2. Per configurare la libreria di autenticazione Microsoft (MSAL):

    • Assegna clientId al tuo ID applicazione (client).
    • Assegna authority a https://login.microsoftonline.com/ e aggiungi il tuo ID directory (tenant) alla fine.

    Ad esempio:

    var clientApplication;
        (function (){
        var msalConfig = {
            auth: {
                clientId: '692e92c7-xxxx-4060-76d3-b381798f4d9c',
                authority: 'https://login.microsoftonline.com/7ef988bf-xxxx-51af-01ab-2d7fd011db47'     
            },
    
  3. Imposta la variabile theURL sull'URL del token endpoint che hai copiato in precedenza. Ad esempio:

    (async function main() {
    
        var theURL = "https://1c0.0.environment.api.powerplatform.com/powervirtualagents/bots/5a099fd/directline/token?api-version=2022-03-01-preview"
    
  4. Modifica il valore di userId per includere un prefisso personalizzato. Ad esempio:

    var userId = clientApplication.account?.accountIdentifier != null ? 
            ("My-custom-prefix" + clientApplication.account.accountIdentifier).substr(0, 64) 
            : (Math.random().toString() + Date.now().toString()).substr(0,64);
    
  5. Salva le modifiche.

Metti alla prova il tuo copilota utilizzando la tua pagina Web

  1. Apri la tua pagina web nel browser.

  2. Selezionare Accedi.

    Screenshot dell'accesso utilizzando il codice di convalida

    Nota

    Se il tuo browser blocca i popup o stai utilizzando una finestra di navigazione in incognito o privata, ti verrà richiesto di accedere. Altrimenti, l'accesso viene completato utilizzando un codice di convalida.

    Si apre una nuova scheda del browser.

  3. Passa alla nuova scheda e copia il codice di convalida.

  4. Torna alla scheda con il tuo copilota e incolla il codice di convalida nella conversazione del copilota.