The RPC API is deprecated as of One Identity Safeguard for Privileged Sessions (SPS) 5 F7 and will be removed in an upcoming feature release. One Identity recommends using the REST API instead.
Version 3 F3 and later of One Identity Safeguard for Privileged Sessions can be accessed using a Remote-Procedure Call Application Programming Interface (RPC API).
The SPS RPC API allows you to access, query, and manage SPS from remote applications. You can access the API using the Simple Object Access Protocol (SOAP) protocol over HTTPS, meaning that you can use any programming language that has access to a SOAP client to integrate SPS to your environment. You can download simple, proof-of-concept clients for Python and other languages from the SPS web interface.
Accessing SPS with the RPC API offers several advantages:
Integration into custom applications and environments
Flexible, dynamic search queries and management
To access One Identity Safeguard for Privileged Sessions (SPS) using the RPC API, the following requirements must be met:
Accessing the appliance via the RPC API must be enabled on the web interface. For details, see Enabling RPC API access to One Identity Safeguard for Privileged Sessions (SPS).
The appliance can be accessed using the SOAP protocol over authenticated HTTPS connections. The WSDL describing the available services is available at https://<ip-address-of-SPS>/rpc.php/<techversion>?wsdl. For details on the client libraries tested with SPS see RPC client requirements.
The user account used to access SPS via RPC must have read and write/perform rights for the Access RPC API privilege. This is required for every type of RPC access, even for read-only operations. Members of the api group automatically have this privilege. For details on managing user privileges, see Modifying group privileges.
Each SPS release provides a separate API with a new API version number. You are recommended to use the SPS version 6.0 with the corresponding API version. Earlier versions are not supported
The client application used to access One Identity Safeguard for Privileged Sessions (SPS) must meet the following criteria:
Support SOAP version 1.1 or later.
Support WSDL version 1.1.
Properly handle complex object types.
Include a JSON decoder for interpreting the results of search operations.
The following client libraries have been tested with SPS.
|Client name||Programming language||Status||Comments|
|Apache Axis 1||Java||Working|
|Built-in .NET library||.NET||Working||
SPS does not support the Expect HTTP Header feature, and must be disabled, for example, using System.Net.ServicePointManager.Expect100Continue = false;
|Scio||Python||Partially working||Does not handle complex object types, so it cannot perform search queries.|
Accessing One Identity Safeguard for Privileged Sessions (SPS) using the RPC API locks certain components of SPS from other users, just like accessing SPS using the web interface or the console. Locking SPS via RPC can be performed either explicitly by calling the lockAcquire function, or implicitly when an operation requires the lock. In either case, ensure that your application verifies that the lock is received and properly handles if the component is locked by someone else (for example, because a user is accessing the component from the web interface).
For details on how locking works in SPS, see "Multiple users and locking" in the Administration Guide.