Help > Forum > Integrazione del sito web > Single Sign On - Autenticazione basata su token

Single Sign On - Autenticazione basata su token

Se stai usando WordPress, usa il nostro Plugin WordPress.

Possiamo farlo per te - Vai al Impostazioni Single Sign/On e seleziona il tuo sito web builder affinché il nostro team di sviluppo integri SSO per te, a partire da soli 149$.

Supportiamo anche Single Sign On usando SAML, OAuth2, LDAP, SQL e OpenID.

È possibile utilizzare l'API Single Sign On (SSO) per registrare automaticamente i visitatori nel forum. Questo può essere utile se hai un'area di accesso separata sul tuo sito web e non vuoi far accedere i tuoi visitatori due volte.

L'API SSO consente di inviare una richiesta HTTP dall'interno dell'applicazione per accedere un utente all'interno o all'esterno del forum. Un token viene restituito dall'API, che viene quindi utilizzato in un piccolo tag IMG nella pagina successiva per memorizzare i cookie del browser necessari.

Segui le istruzioni riportate di seguito per integrare l'API SSO nel tuo sito web:

  1. Se stai usando PHP, ti consigliamo vivamente di usare il nostro libreria SSO PHPContiene un file con tutto il codice della libreria di cui avrai bisogno e altri file con l'uso di esempio.

  2. Ottieni la tua chiave API.
  3. Nello script di accesso per il tuo sito web, crea un Richiesta HTTP all'URL di accesso dell'API SSO:
  4. https://USERNAME.websitetoolbox.com/register/setauthtoken?type=json&apikey=APIKEY&user=USER

    Sostituisci APIKEY con la chiave API recuperata nel passaggio 1.

    Sostituisci USER con il nome utente dell'utente del forum che desideri effettuare il login.

    È possibile includere facoltativamente un &email=EMAIL se si desidera creare automaticamente l'account del forum nei casi in cui l'account del forum specificato non esiste già. Si consiglia di includere il parametro email. È inoltre possibile opzionalmente specificare altre informazioni sul conto o un &pw=PASSWORD per impostare la password del nuovo account. (Sostituisci EMAIL e PASSWORD con l'indirizzo e-mail e la password non crittografata/non hash dell'utente.) Nei casi in cui un account viene creato senza password, l'utente non sarebbe in grado di accedere direttamente al forum a meno che non resettino prima la password nella pagina di accesso. L'accesso SSO funzionerebbe senza problemi anche senza che l'account dell'utente abbia una password.

    Puoi anche utilizzare un indirizzo email come nome utente.

  5. Analizzare il JSON restituito dalla richiesta HTTP per ottenere il token di autenticazione e l'ID utente e quindi memorizzarlo in un cookie. La risposta JSON sarà simile a questa:

    {
      "authtoken": "88SngRVArwrsZ053lfrqL",
      "userid": 424764
    }
    

  6. Sul tuo sito web, aggiungi il seguente tag HTML IMG alla tua pagina di destinazione “Accesso riuscito”:

    <img src="//USERNAME.websitetoolbox.com/register/dologin?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">

    Sostituisci AUTHTOKEN con il token di autenticazione recuperato nel passaggio 3.

    La finestra del browser che carica il tag IMG verrà registrata nel forum come utente con il nome utente fornito nel passaggio 2.

  7. Sul tuo sito web, aggiungi il seguente tag HTML IMG alla tua pagina di destinazione “disconnetti con successo”:

    <img src="//USERNAME.websitetoolbox.com/register/logout?authtoken=AUTHTOKEN" border="0" width="1" height="1" alt="">

    Sostituisci AUTHTOKEN con il token di autenticazione recuperato nel passaggio 3.

  8. Nella Impostazioni -> Single Sign-On del tuo account Website Toolbox, specificare l'indirizzo del sito Web Accedi alla pagina per assicurarti che tutti gli accessi ai forum avvengano utilizzando il modulo di accesso del tuo sito web.

  9. Nella Impostazioni -> Single Sign-On del tuo account Website Toolbox, specificare l'indirizzo del sito Web Pagina di uscita per assicurarti che gli utenti vengano mostrati la pagina di logout del tuo sito web una volta che sono stati disconnessi dal forum.

  10. Imposta un sottodominio per il tuo forum. Ad esempio, https://forums.yourwebsite.com. Questo passaggio è facoltativo. Tuttavia, il browser Safari viene fornito con una cookie policy conservativa che limita la scrittura dei cookie alle sole pagine scelte (“navigato”) dall'utente. Ciò impedisce che il cookie di accesso del forum venga impostato sulla pagina di destinazione “log in riuscito”. Pertanto, l'unico modo per far funzionare Single Sign On sul browser Safari è utilizzare un sottodominio per il tuo forum o anche passare il token di autenticazione nel link del tuo forum sul tuo sito web. Per esempio:

    <a href="https://USERNAME.websitetoolbox.com/?authtoken=AUTHTOKEN">Forum</a>

    Se si utilizza il codice di incorporamento, è possibile passare il token di autenticazione alla pagina in cui il forum è incorporato o all'interno del src del codice di incorporazione.

Note importanti:

  • Se è stato acquistato un nome di dominio gestito o si utilizza un nome di dominio personalizzato per il forum, utilizzare tale nome di dominio anziché “Username.Websitetoolbox.com”.
  • USERNAME dovrebbe essere sostituito dal nome utente Toolbox del sito Web.
  • UN &userid=USERID può essere passato al posto del parametro &user=USER parametro.
  • Se si verifica un errore, verrà visualizzato JSON simile al JSON seguente anziché la normale risposta JSON:

    {
       "message": "The error message will be here."
    }
    

  • Se è necessario disconnettere un utente e non si dispone del token di autenticazione restituito durante la richiesta HTTP nel passaggio 2, è possibile ritirare il token di autenticazione effettuando una richiesta HTTP all'URL riportato di seguito oppure è possibile generare un nuovo token di autenticazione.

    https://USERNAME.websitetoolbox.com/register/getauthtoken?type=json&apikey=APIKEY&user=USER

  • Puoi anche integrare il processo di registrazione del tuo sito web. Maggiori informazioni...
  • Il token di autenticazione recuperato nel passaggio 3 scade quando viene generato un nuovo token di autenticazione o immediatamente dopo che è stato utilizzato per garantire un elevato livello di sicurezza. Il token di autenticazione, quando utilizzato per la disconnessione, scade solo dopo che è stato generato un nuovo token di autenticazione.
  • Normalmente l'utente verrà disconnesso alla fine della sessione del browser. Per mantenere l'utente connesso anche dopo la chiusura del browser, aggiungere &remember=1 alla fine dell'URL nei passaggi 5 e 9.
  • La stringa di query deve essere codificata con URL.
  • Usa il nostro API per fare tutti i tipi di altre integrazioni.


If you still need help, please contact us.