Multibrand ti consente di controllare tutti i brand aziendali in un’unica istanza Zendesk Support. Tuttavia, le impostazioni di sicurezza ti permetteranno di impostare un solo URL per gli accessi remoti, il che potrebbe essere problematico se disponi di database utente diversi per ciascuno dei tuoi brand.
Questo approccio ti consentirà di creare uno script tra Zendesk Support e lo script di accesso SSO nel server che ti consentirà di indirizzare i clienti a URL specifici in base al brand a cui stanno tentando di accedere.
Questa procedura presuppone che tu abbia già configurato JWT sul tuo server. In caso contrario, assicurati di seguire le istruzioni elencate nell’articolo Abilitazione del Single Sign-On JWT .
Questo esempio in questo articolo usa PHP, ma puoi adattarlo ad altre lingue, se necessario.
Il presente articolo include le seguenti sezioni:
- Due o più brand configurati
- Due o più sistemi di autenticazione utente configurati con JWT SSO
- Gli script
- Aggiorna le impostazioni di sicurezza
- Considerazioni importanti
- Risoluzione dei problemi
Due o più brand configurati
Per seguire questa procedura, devi configurare almeno due brand. Per maggiori dettagli, consulta Configurazione di più brand (Componente aggiuntivo Professional ed Enterprise).
Dopo averlo configurato, salva l’URL del brand e l’URL del brand mappato all’host. Li useremo nel nostro script in seguito.
Due o più sistemi di autenticazione utente configurati con JWT SSO
Come accennato in precedenza, dovrai aver impostato e configurato JWT SSO sui sistemi di autenticazione degli utenti. Puoi già eseguirne uno per ciascun brand, ma tieni presente che il segreto condiviso che ottieni dalle opzioni di sicurezza dovrà essere lo stesso in tutti i tuoi sistemi di autenticazione.
Salva l’URL di accesso e l’URL di uscita insieme alle informazioni della sezione precedente.
Gli script
L’elenco degli URL salvati potrebbe avere il seguente aspetto:
Brand 1
URL non mappato all’host: https://brand1.zendesk.com
URL mappato all’host: https://support1.example.com
Brand 2
URL non mappato all’host: https://brand2.zendesk.com
URL mappato host: https://support2.example.com
Sistema 1
URL di accesso: https://page1.example.com/zdlogin.php
URL di uscita: https://page1.example.com/zdlogout.php
Sistema 2
URL di accesso: https://page2.example.com/zdlogin.php
URL di uscita: https://page2.example.com/zdlogout.php
Quindi, crea lo script. Rimuovi https:// dall’URL di ciascun URL del brand. Tienili nei link del sito web.
Puoi trovare gli script anche qui:
Script di accesso
<? $brand_URLs = array( "brand1.zendesk.com" => "https://page1.example.com/yourcustomloginjwtscript.php", "support1.example.com" => "https://page1.example.com/yourcustomloginjwtscript.php", "brand2.zendesk.com" => "https://page2.example.com/yourcustomloginjwtscript2.php", "support2.example.com" => "https://page2.example.com/yourcustomloginjwtscript2.php" ); foreach($brand_URLs as $k => $v){ if(strpos($_GET['return_to'],$k)){ header("Location: ". $v); die(); } } ?>
Script di disconnessione
<? $brand_URLs = array( "brand1.zendesk.com" => "https://page1.example.com/yourcustomlogoutjwtscript.php", "support1.example.com" => "https://page1.example.com/yourcustomlogoutjwtscript.php", "brand2.zendesk.com" => "https://page2.example.com/yourcustomlogoutjwtscript.php", "support2.example.com" => "https://page2.example.com/yourcustomlogoutjwtscript.php" ); foreach($brand_URLs as $k => $v){ if(strpos($_GET['return_to'],$k)){ header("Location: ". $v); die(); } } ?>
Aggiorna le impostazioni di sicurezza
- Nel Centro amministrativo, fai clic su Account nella barra laterale, quindi seleziona Sicurezza > Single Sign-On.
- Fai clic suCrea configurazione SSO, quindi selezionaJSON Web Token.
- Inserisci unnome di configurazioneunivoco.
- InURL di accesso remoto, inserisci l’URL dello script di accesso.
- InURL di disconnessione remota, inserisci l’URL dello script di disconnessione.
- Per evitare conflitti nel caso in cui alcuni clienti abbiano un account in più di un sistema di autenticazione utente con lo stesso indirizzo email, puoi impostareAggiornamento di ID esterni su On.
- Fornisci il segreto condivisoal team IT. Ne avranno bisogno per l’implementazione JWT.
- Salva le modifiche.
Considerazioni importanti
- Il rischio per la sicurezza è basso se usi lo script così com’è. Se lo modifichi in modo esteso oltre alle modifiche menzionate qui, potresti creare una vulnerabilità di sicurezza sul tuo server (non su Zendesk).
- Poiché forniamo un solo token JWT, tutti gli script SSO useranno gli stessi token nei sistemi di autenticazione. Se uno dei tuoi sistemi viene compromesso, tutti i tuoi brand potrebbero essere compromessi.
- Se viene visualizzato il messaggio di errore "Richiesta JWT non valida" quando provi a eseguire il SSO, fai riferimento alle istruzioni per la risoluzione dei problemi di seguito.
Risoluzione dei problemi
Per evitare errori di richiesta JWT non validi, codifica https://(defaultsubdomain).zendesk.com/ as/access/jwt?jwt=
per entrambi i brand dove (defaultsubdomain) è il sottodominio principale del brand. Ad esempio, miodominio.zendesk.com
- https://(defaultsubdomain).zendesk.com nello script SSO, in modo che il payload JWT venga sempre inviato a https://(defaultsubdomain).zendesk.com/access/jwt
- Implementa il frammento di codice nello script per usare “return_to” in modo che l’utente finale venga reindirizzato al Centro assistenza di origine. Assicurati di aggiungere il payload per entrambi gli URL di marcatura del brand come “(defaultsubdomain)” e di aggiungere “return_to”.
Il frammento di codice di riferimento:
if(isset($_GET["return_to"])) {
$location .= "&return_to=" . urlencode($_GET["return_to"]);
}
Avvertenza sulla traduzione: questo articolo è stato tradotto usando un software di traduzione automatizzata per fornire una comprensione di base del contenuto. È stato fatto tutto il possibile per fornire una traduzione accurata, tuttavia Zendesk non garantisce l'accuratezza della traduzione.
Per qualsiasi dubbio sull'accuratezza delle informazioni contenute nell'articolo tradotto, fai riferimento alla versione inglese dell'articolo come versione ufficiale.