L’accesso automatico a Plesk risulta utile per motivi di integrazione, così che i clienti che hanno effettuato l’accesso a un altro sistema possano accedere a Plesk senza dover effettuare un secondo accesso.

Per implementare l’accesso automatico, avrai bisogno di uno script di integrazione che contenga una richiesta API XML, in modo da poter creare un token di sessione per un URL una tantum. Lo script farà accedere gli utenti a Plesk utilizzando l’URL che contenga uno dei seguenti elementi:

  • un token di sessione (consigliato);
  • nome di accesso e password dell’utente (non consigliato per ragioni di sicurezza).

Accesso automatico a Plesk tramite token di sessione

Per configurare l’accesso automatico tramite i token di sessione:

  1. configura il tuo script di integrazione per creare un token di sessione. Per farlo, invia una richiesta API XML utilizzando il nodo crea_sessione, ad esempio:

    <packet version="1.6.9.1">
      <server>
        <create_session>
          <login>admin</login>
          <data>
            <user_ip>192.0.2.1</user_ip>
            <source_server></source_server>
          </data>
        </create_session>
      </server>
    </packet>
    

    i seguenti parametri devono contenere i tuoi valori:

    • nome di accesso è il nome di accesso dell’utente Plesk per il quale devi creare la sessione.
    • ip_utente è l’indirizzo IP dell’utente in testo normale o codificato in formato base64 (ad esempio, MTkyLjAuMi4x).
    • server_origine è il nome host del computer dal quale viene inviata la richiesta codificata in formato base64 (opzionale).

    Nota: L’operazione crea_sessione è disponibile all’amministratore, ai clienti e ai rivenditori di Plesk. L’amministratore di Plesk può creare token di sessione per se stesso, i rivenditori e i clienti; i rivenditori solo per loro stessi e i clienti; i clienti solo per loro stessi.

    Invece di inviare una richiesta API XML in maniera diretta, puoi inserirla in un file XML e inviarla tramite curl, ad esempio:

    curl –kLi -H "Content-Type: text/xml" -H "HTTP_AUTH_LOGIN: admin" -H "HTTP_AUTH_PASSWD: password" -H "HTTP_PRETTY_PRINT: TRUE" -d @request.xml https:<server-hostname-or-ip>/enterprise/control/agent.php
    

    dove

    • admin e password indicano le credenziali usate dall’amministratore di Plesk per accedere al server di Plesk;
    • richiesta.xml indica un file XML contenente una richiesta API XML che crea un token di sessione (ad esempio, la richiesta mostrata qui sopra);
    • nomehost-o-ip-server indica il nome host o l’indirizzo IP del server di Plesk per il quale intendi creare un token di sessione.

    L’API XML di Plesk creerà un token di sessione e lo invierà nella risposta, ad esempio:

    <?xml version="1.0" encoding="UTF-8"?>
    <packet version="1.6.9.1">
      <server>
        <create_session>
          <result>
            <status>ok</status>
            <id>df9d386ee5ef13dbcd583c1f616857a2</id>
          </result>
        </create_session>
      </server>
    </packet>
    

    il tag id contiene un token di sessione (df9d386ee5ef13dbcd583c1f616857a2 nell’esempio). Lo script utilizzerà tale token in un URL una tantum per permettere l’accesso;

  2. Lo script reindirizzerà il browser dell’utente a rsession_init.php, facendo accedere l’utente a Plesk. L’URL una tantum per l’accesso presenta la seguente struttura:

    https://<server-hostname-or-ip>:8443/enterprise/rsession_init.php?PLESKSESSID=<session_token>&success_redirect_url=<success_redirect_url>&failure_redirect_url=<failure_redirect_url>
    

    dove:

    • <server-hostname-or-ip> indica il nome host o l’indirizzo IP del server per il quale hai creato un token di sessione;
    • <session_token> indica un token di sessione creato.

    Puoi inoltre specificare i seguenti parametri opzionali:

    • <success_redirect_url> indica l’URL al quale il browser verrà reindirizzato dopo un accesso riuscito;
    • <failure_redirect_url> indica l’URL al quale il browser verrà reindirizzato dopo che una sessione di Plesk è scaduta o l’utente è stato disconnesso;
    • <locale_id> indica le impostazioni locali che verranno applicate al momento dell’accesso (come de-DE).

    L’URL per l’accesso può presentarsi come segue:

    https://192.0.2.1:8443/enterprise/rsession_init.php?PLESKSESSID=df9d386ee5ef13dbcd583c1f616857a2&success_redirect_url=/admin/customer/list
    

    Nota: Ti consigliamo di utilizzare URL relativi (iniziano con /) nei parametri success_redirect_url e failure_redirect_url, ad esempio: /admin/elenco/clienti. Per reindirizzare i nomi host diversi da Plesk, dovrai utilizzare URL assoluti all’interno dei parametri (ad esempio, esempio.com) e dell’impostazione trustedRedirectHosts nel file panel.ini (consulta il passaggio successivo).

  3. Se configuri l’accesso automatico a Plesk con i parametri success_redirect_url e/o failure_redirect_url che reindirizzano ai nomi host diversi da Plesk e hanno URL assoluti, proteggi il tuo server Plesk contro i reindirizzamenti aperti. Per farlo, aggiungi la seguente voce al file panel.ini:

    [security]
    trustedRedirectHosts = hostname1,hostname2
    

    Laddove nome host1 e nome host2 indichino nomi host affidabili ai quali sia consentito il reindirizzamento URL tramite i parametri success_redirect_url e failure_redirect_url.

    Scopri di più su come proteggere il tuo Plesk dai reindirizzamenti aperti.

Accesso automatico a Plesk tramite credenziali

Puoi anche configurare l’accesso automatico senza dover creare un token di sessione, inserendo nell’URL un nome di accesso e una password come parametri. Per motivi di sicurezza, sconsigliamo questo approccio.

Se desideri comunque adottarlo, l’URL per l’accesso presenterà la seguente struttura:

https://<server-hostname-or-ip>:8443/login_up.php3?login_name=<login>&passwd=<password>&success_redirect_url=<success_redirect_url>&failure_redirect_url=<failure_redirect_url>

dove

  • <server-hostname-or-ip> indica il nome host o l’indirizzo IP del server per il quale hai creato un token di sessione;
  • <login> e <password> indicano rispettivamente il nome di accesso e la password dell’utente.

Puoi inoltre specificare i seguenti parametri opzionali:

  • <success_redirect_url> indica l’URL al quale il browser verrà reindirizzato dopo un accesso riuscito;
  • <failure_redirect_url> indica l’URL al quale il browser verrà reindirizzato dopo che una sessione di Plesk è scaduta o l’utente è stato disconnesso;
  • <locale_id> indica le impostazioni locali che verranno applicate al momento dell’accesso (come de-DE).