Automatic Logging in to Plesk
Automatic logging in to Plesk is especially useful for integration purposes, so that customers who have logged in to some other system can access Plesk without having to log in a second time.
The recommended way to implement automatic logging in is to redirect
users to a one-time use URL that contains a session token. To generate a
session token for a user, run an XML API request that uses the
create_session
operation of the server
operator.
An example of the request:
<packet version="1.6.3.3">
<server>
<create_session>
<login>admin</login>
<data>
<user_ip>MTAuNTAuMS43MQ==</user_ip>
<source_server></source_server>
</data>
</create_session>
</server>
</packet>
The login
parameter specifies the Plesk user for whom you need to
create a session. The user-ip
parameter is an IP address of the
user, encoded using the base64 algorithm.
An example of the response:
<packet version="1.6.3.3">
<server>
<create_session>
<result>
<status>ok</status>
<id>ede520d0fc93ae7aa0524076d631fba2</id>
</result>
</create_session>
</server>
</packet>
Plesk creates a session token for the specified user. It is contained in
the id
tag (ede520d0fc93ae7aa0524076d631fba2
in the example).
The generated session token can be used in scripts. A script redirects
the user’s browser to rsession_init.php
, and the user is logged in
to the Customer Panel.
An example of the URL containing a session token for logging in to the Customer Panel:
https://<server-host-or-ip-address>:8443/enterprise/rsession_init.php?PLESKSESSID=1ba78fc5e27a2af9302717dbe1febb24
The full list of parameters that rsession_init.php
takes is as
follows:
-
PLESKSESSID
. A session token. -
success_redirect_url
(optional). The URL to which the browser will be redirected after a successful login.Note: In Plesk 12.0 and earlier, the
success_redirect_url
parameter should contain an absolute path with the hostname that has initiated the session creation (using another hostname will cause failure because of security protection). Starting from Plesk 12.5, you can specify a relative URL like/admin/customer/list
. -
failure_redirect_url
(optional). The URL to which the browser will be redirected after a failed login attempt. This parameter is also used as the logout URL. -
no_frames
(optional, deprecated). Use this parameter to display the Plesk Administrator Panel without frames. -
locale_id
(optional). The locale identifier (such as de-DE).
The easier, but not recommended way to implement automatic logging in functionality is to pass a plain password as a parameter in URL. Such a URL looks like this:
https://<server-host-or-ip>:8443/login_up.php3?login_name=<login>&passwd=<password>&success_redirect_url=<success_redirect_url>&failure_redirect_url=<failure_redirect_url>
The full list of parameters that login_up.php3
takes is as follows:
-
login
. User’s login. -
passwd
. User’s plain password. -
success_redirect_url
(optional). The URL to which the browser redirects a user after a successful login.Note: In Plesk 12.0 and earlier, the
success_redirect_url
parameter should contain an absolute path with the hostname that has initiated the session creation (using another hostname will cause failure because of security protection). Starting from Plesk 12.5, you can specify a relative URL like/admin/customer/list
. -
failure_redirect_url
(optional). The URL to which a user will be redirected after a failed attempt to log in. This parameter is also used as the logout URL. -
no_frames
(optional, deprecated). Use this parameter to display the Plesk Administrator Panel without frames. -
locale_id
(optional). The locale identifier (such as de-DE).