Help > Forum > Integrazione del sito web > Accesso singolo - Autenticazione basata su token
Accesso singolo - Autenticazione basata su token
Se utilizzi WordPress, usa il nostro plugin per WordPress.
Possiamo farlo per te: vai alle impostazioni di Single Sign On e seleziona il tuo costruttore di siti web per far sì che il nostro team di sviluppo integri l'SSO per te, a partire da soli $199.
Supportiamo anche il Single Sign On utilizzando SAML, OAuth2, LDAP, SQL e OpenID.
Puoi utilizzare l'API Single Sign On (SSO) per accedere automaticamente ai tuoi visitatori nel tuo forum. Questo può essere utile se hai un'area di accesso separata sul tuo sito web e non vuoi che i tuoi visitatori accedano due volte.
L'API SSO ti consente di fare una richiesta API per ottenere un token di accesso per un utente e quindi includerlo nell'indirizzo del forum per accedere all'utente.
Segui le istruzioni riportate di seguito per integrare l'API SSO nel tuo sito web:
-
Fai una richiesta per un token di accesso
Nello script di accesso per il tuo sito web, crea un Richiesta HTTP all'URL di accesso all'API SSO:https://FORUM_DOMAIN/register/setauthtoken?type=json&apikey=APIKEY&user=USERSostituisci APIKEY con la chiave API recuperata nel passaggio 1.Sostituisci USER con il nome utente dell'utente del forum a cui desideri accedere. Se il tuo sito web non utilizza nomi utente, puoi utilizzare un indirizzo email come nome utente. In alternativa, se hai l'ID utente del forum dell'utente memorizzato nel tuo database, è possibile utilizzare un parametro &userid= USERID al posto del parametro &user= USER.
Facoltativamente puoi includere un parametro &email=email se vuoi che l'account del forum venga creato automaticamente nei casi in cui l'account del forum specificato non esista già. Consigliamo di includere il parametro email. (Sostituisci EMAIL con l'indirizzo email dell'utente.)
Puoi anche specificare altre informazioni sull'account, come il nome completo dell'utente (parametro «nome»), avatar (parametro «avatar») e altro ancora. I parametri aggiuntivi devono essere codificati tramite URL.
Se utilizzi PHP, ti consigliamo vivamente di utilizzare la nostra libreria SSO PHP. Contiene un file con tutto il codice della libreria di cui avrai bisogno e altri file con un utilizzo di esempio.
-
Ottieni il token dalla risposta
Analizza il JSON restituito dalla richiesta HTTP per ottenere il token di autenticazione e l'ID utente e quindi memorizzarlo in un cookie o nel database. Il token di autenticazione scade tra 6 mesi o immediatamente dopo essere stato utilizzato per garantire un alto livello di sicurezza. La risposta JSON sarà simile alla seguente:{ "authtoken": "88SngRVArwrsZ053lfrqL", "userid": 424764 }
Se si verifica un errore, verrà visualizzato un JSON simile al JSON riportato di seguito anziché la normale risposta JSON:
{ "message": "The error message will be here." }
-
Accedi all'utente con il token
Passa il token di autenticazione nel link del tuo forum sul tuo sito web. Ad esempio:<a href="https://FORUM_DOMAIN/?authtoken=AUTHTOKEN&remember=REMEMBER">Forum</a>Sostituire AUTHTOKEN con il token di autenticazione recuperato nei passaggi precedenti. Sostituisci REMEMBER con 1 se desideri mantenere l'utente connesso anche dopo la chiusura del browser o escluderlo se desideri che l'utente venga disconnesso alla fine della sessione del browser.
Se stai usando il codice di incorporamento, puoi passare il token di autenticazione alla pagina in cui è incorporato il forum o all'interno dell'attributo src del codice di incorporamento. Ad esempio:
<!--Begin Website Toolbox Forum Embed Code-->
<div id="wtEmbedCode"><script type="text/javascript" id="embedded_forum" src="https://FORUM_DOMAIN/js/mb/embed.js?authtoken=AUTHTOKEN&remember=REMEMBER"></script> <noscript><a href="https://FORUM_DOMAIN">Forum</a></noscript></div>
<!--End Website Toolbox Forum Embed Code-->In alternativa, se non vuoi passare il token di autenticazione nell'indirizzo del forum, puoi aggiungere il seguente tag IMG HTML alla tua pagina di destinazione «accesso riuscito»:
<img src="//FORUM_DOMAIN/register/dologin?authtoken=AUTHTOKEN&remember=REMEMBER" border="0" width="1" height="1" alt="">A causa del blocco dei cookie di terze parti nel browser Safari, l'approccio del tag IMG non funzionerà in Safari a meno che il forum non sia stato impostato per utilizzare un sottodominio.
-
Disconnetti l'utente con il token
Dopo che un utente si è disconnesso dal tuo sito Web, reindirizzalo al seguente indirizzo per disconnetterlo anche dal forum:
https://FORUM_DOMAIN/register/logout?authtoken=AUTHTOKEN&redirect=REDIRECT_URLSostituisci REDIRECT_URL con l'indirizzo del sito Web codificato nell'URL a cui desideri inviare l'utente dopo che è stato disconnesso dal forum. Sostituire AUTHTOKEN con il token di autenticazione recuperato nei passaggi precedenti. Se utilizzato allo scopo di disconnettersi, un token è valido per 6 mesi anche se è già stato utilizzato per accedere a un utente. Una volta utilizzato per disconnettere un utente, il token scade immediatamente.
In alternativa, se non desideri reindirizzare l'utente, puoi aggiungere il seguente tag IMG HTML alla pagina di destinazione «disconnessione riuscita» sul tuo sito web:
<img src="//FORUM_DOMAIN/register/logout?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">A causa del blocco dei cookie di terze parti nel browser Safari, l'approccio del tag IMG non funzionerà in Safari a meno che il forum non sia stato impostato per utilizzare un sottodominio.
-
Fai in modo che il tuo forum utilizzi la pagina di accesso del tuo sito
Nella sezione Impostazioni -> Accesso singolo del tuo account Website Toolbox, specifica l'indirizzo della pagina di accesso del tuo sito web per assicurarti che tutti gli accessi al forum avvengano utilizzando il modulo di accesso del tuo sito web.
-
Fai in modo che il forum utilizzi la pagina di disconnessione del tuo sito
Facoltativamente, nella sezione Impostazioni -> Accesso singolo del tuo account Website Toolbox, specifica l'indirizzo della pagina di disconnessione del tuo sito web per assicurarti che agli utenti venga mostrata la pagina di disconnessione del tuo sito web una volta che sono stati disconnesso dal forum.
Utilizza un dominio personalizzato e il nostro codice di incorporamento, API e webhook per creare una configurazione ancora più approfondita integrazione.
If you still need help, please contact us.