Automatische Anmeldung in Plesk

Die automatische Anmeldung in Plesk ist hilfreich, wenn Sie andere Dienste mit Plesk verknüpfen. Kunden, die sich in einem anderen System angemeldet haben, können so auf Plesk zugreifen, ohne sich ein zweites Mal anmelden zu müssen.

Um die automatische Anmeldung zu konfigurieren, benötigen Sie ein Integrationsskript. Darin muss eine XML-API-Anforderung enthalten sein, um ein Sitzungstoken für eine einmalige URL zu erstellen. Über das Skript werden Benutzer in Plesk angemeldet. Dazu wird die URL verwendet, die eine der folgenden Angaben enthält:

  • (Empfohlen) Ein Sitzungstoken
  • (Aus Sicherheitsgründen nicht empfohlen) Benutzername und Passwort

Automatische Anmeldung in Plesk mit Sitzungstoken

So konfigurieren Sie die automatische Anmeldung in Plesk mit einem Sitzungstoken:

  1. Richten Sie das Integrationsskript ein, um ein Sitzungstoken zu erstellen. Senden Sie dazu eine XML-API-Anforderung und geben Sie den Knoten create_session an. Zum Beispiel:

    <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>
    

    Die folgenden Parameter müssen Ihre Werte enthalten:

    • login steht für den Benutzernamen eines Plesk Benutzers, für den Sie die Sitzung erstellen möchten.
    • user_ip ist die IP-Adresse des Benutzers als Nur-Text oder mit Base64-Codierung (z. B. MTkyLjAuMi4x).
    • (Optional) source_server ist der Hostname des Computers, von dem die Anforderung mit Base64-Codierung gesendet wird.

    Bemerkung

    Der Vorgang create_session ist für den Plesk Administrator, Kunden und Reseller verfügbar. Der Plesk Administrator kann Sitzungstokens für sich selbst, Reseller und Kunden erstellen; Reseller nur für sich selbst und ihre Kunden; Kunden nur für sich selbst.

    Anstatt eine XML-API-Anforderung direkt zu senden, können Sie sie in eine XML-Datei einfügen und sie z. B. über curl senden:

    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
    

    Hierbei gilt folgendes:

    • admin und password sind die Anmeldedaten des Plesk Administrators, die für die Anmeldung im Plesk Server verwendet werden.
    • request.xml ist eine XML-Datei. Sie enthält eine XML-API-Anforderung, mit der ein Sitzungstoken erstellt wird (siehe Beispiel oben).
    • server-hostname-or-ip ist der Hostname oder die IP-Adresse des Plesk Servers, für den Sie ein Sitzungstoken erstellen möchten.

    Die XML-API von Plesk erstellt ein Sitzungstoken und sendet es in der Antwort. Beispiel:

    <?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>
    

    id enthält ein Sitzungstoken (in unserem Beispiel df9d386ee5ef13dbcd583c1f616857a2). Das Skript verwendet dieses Token zur Anmeldung über eine einmalige URL.

  2. Das Skript leitet den Browser des Benutzers zu rsession_init.php weiter und der Benutzer wird in Plesk angemeldet. Die einmalige URL für die Anmeldung hat das folgende Format:

    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>
    

    Dabei gilt:

    • <server-hostname-or-ip> ist der Hostname oder die IP-Adresse des Servers, für den Sie ein Sitzungstoken erstellt haben.
    • <session_token> ist das erstellte Sitzungstoken.

    Sie können auch die folgenden optionalen Parameter verwenden:

    • <success_redirect_url> ist die URL, an die der Browser nach einer erfolgreichen Anmeldung weitergeleitet wird.
    • <failure_redirect_url> ist die URL, an die der Browser weitergeleitet wird, wenn eine Sitzung in Plesk abgelaufen ist oder der Benutzer abgemeldet wurde.
    • <locale_id> ist der Name des Gebietsschemas, das nach der Anmeldung verwendet wird, z. B. de-DE.

    Die Anmelde-URL kann so aussehen:

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

    Bemerkung

    Wir empfehlen, relative URLs (beginnen mit /) in den Parametern success_redirect_url und failure_redirect_url zu verwenden, zum Beispiel: /admin/customer/list. Um auf Hostnamen außerhalb von Plesk umzuleiten, müssen Sie absolute URLs in den Parametern verwenden (z. B. beispiel.com). Das gilt auch für die Einstellung trustedRedirectHosts in der Datei panel.ini (siehe nächster Schritt).

  3. Wenn Sie die automatische Anmeldung in Plesk mit den Parametern success_redirect_url und/oder failure_redirect_url eingerichtet haben, auf Hostnamen außerhalb von Plesk weiterleiten und absolute URLs festgelegt haben, schützen Sie Ihren Plesk Server vor nicht validierten Weiterleitungen. Fügen Sie dazu den folgenden Eintrag in die Datei panel.ini ein:

    [security]
    trustedRedirectHosts = hostname1,hostname2
    

    Dabei stehen hostname1 und hostname2 für vertrauenswürdige Hostnamen, auf die URL-Weiterleitungen über die Parameter success_redirect_url and failure_redirect_url zugelassen werden.

    Weitere Informationen zum Schutz von Plesk vor nicht validierten Weiterleitungen

Automatische Anmeldung in Plesk mit Anmeldedaten

Sie können die automatische Anmeldung auch konfigurieren, ohne ein Sitzungstoken zu erstellen, indem Sie den Benutzernamen und das Passwort als Parameter in der URL angeben. Aus Sicherheitsgründen raten wir davon jedoch ab.

Falls Sie diese Methode dennoch verwenden möchten, sehen Sie hier das Format der Anmelde-URL:

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>

Hierbei gilt folgendes:

  • <server-hostname-or-ip> ist der Hostname oder die IP-Adresse des Servers, für den Sie ein Sitzungstoken erstellt haben.
  • <login> und <password> stehen für den Benutzernamen und das Passwort.

Sie können auch die folgenden optionalen Parameter verwenden:

  • <success_redirect_url> ist die URL, an die der Browser nach einer erfolgreichen Anmeldung weitergeleitet wird.
  • <failure_redirect_url> ist die URL, an die der Browser weitergeleitet wird, wenn eine Sitzung in Plesk abgelaufen ist oder der Benutzer abgemeldet wurde.
  • <locale_id> ist der Name des Gebietsschemas, das nach der Anmeldung verwendet wird, z. B. de-DE.