Chat now with support
Chat with Support

One Identity Safeguard for Privileged Sessions 7.4 - REST API Reference Guide

Introduction Using the SPS REST API Basic settings User management and access control Managing SPS General connection settings HTTP connections Citrix ICA connections MSSQL connections RDP connections SSH connections Telnet connections VNC connections Search, retrieve, download, and index sessions Reporting Health and maintenance Advanced authentication and authorization Completing the Welcome Wizard using REST Enable and configure analytics using REST REST API examples

Network addresses

Contains the network addresses configured for each physical NIC.

URL
GET https://<IP-address-of-SPS>/api/configuration/network/nics
Cookies
Cookie name Description Required Values
session_id Contains the authentication token of the user Required

The value of the session ID cookie received from the REST server in the authentication response, for example, a1f71d030e657634730b9e887cb59a5e56162860. For more information on authentication, see Authenticate to the SPS REST API.

NOTE: This session ID refers to the connection between the REST client and the SPS REST API. It is not related to the sessions that SPS records (and which also have a session ID, but in a different format).

Sample request

The following command lists the endpoints for the physical network interfaces.

curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/network/nics/

The following commands retrieve the properties of a specific physical network interface.

curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/network/nics/nic1
curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/network/nics/nic2
curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/network/nics/nic3
Response

The following is a sample response received when listing physical network interfaces.

For more information on the meta object, see Message format.

{
  "items": [
    {
      "key": "nic1",
      "meta": {
        "href": "/api/configuration/network/nics/nic1"
      }
    },
    {
      "key": "nic2",
      "meta": {
        "href": "/api/configuration/network/nics/nic2"
      }
    },
    {
      "key": "nic3",
      "meta": {
        "href": "/api/configuration/network/nics/nic3"
      }
    }
  ],
  "meta": {
    "first": "/api/configuration/network/dns",
    "href": "/api/configuration/network/nics",
    "last": "/api/configuration/network/routing",
    "next": "/api/configuration/network/routing",
    "parent": "/api/configuration/network",
    "previous": "/api/configuration/network/naming",
    "transaction": "/api/transaction"
  }
}

When retrieving the endpoint of a specific physical network interface, the response is the following.

{
  "body": {
      "interfaces": {
          "@order": ["ff7574025754b3df1647001"],
          "ff7574025754b3df1647001": {
              "addresses": {
                  "1": "198.51.100.123/24",
                  "6001481625b7c21ef97598": "2001:db8:1234::5678/48",
                  "@order": ["1", "6001481625b7c21ef97598"]
              },
              "mtu": 1500,
              "name": "external",
              "source_based_routes": [
                  {
                      "gateway": "198.51.100.1",
                      "target_network": "203.0.113.0/24"
                  },
                  {
                      "gateway": "2001:db8:1234::1",
                      "target_network": "2001:db8:aaaa::/48"
                  }
              ],
              "vlantag": 0
          }
      },
      "name": "eth0",
      "speed": "auto"
  },
  "key": "nic1",
  "meta": {
      "first": "/api/configuration/network/nics/nic1",
      "href": "/api/configuration/network/nics/nic1",
      "last": "/api/configuration/network/nics/nic3",
      "next": "/api/configuration/network/nics/nic2",
      "parent": "/api/configuration/network/nics",
      "previous": null,
      "remaining_seconds": 10800,
      "transaction": "/api/transaction"
  }
}
Element Type Description
key string Top level element, contains the ID of the physical network interface (nic1, nic2 or nic3).
body Top level element (string) Contains the properties of the physical network interface.
interfaces Top level item Contains the configuration of all virtual interfaces on the physical NIC.
name string The system name of the physical network interface (eth0, eth1 or eth2). Do not change this value.
speed string

The speed of the physical network interface. The default value is auto. Change this setting only for troubleshooting purposes. Possible values are:

  • auto

    Negotiate the network speed automatically. This is the default value.

  • 10-half

    10BaseT/Half.

  • 100-half

    100BaseT/Half.

  • 10-full

    10BaseT/Full.

  • 100-full

    100BaseT/Full.

  • 1000-full

    1000BaseT/Full.

Elements of interfaces Type Description
@order list

Lists the keys of the interfaces in the order they are be displayed on the SPS web UI.

<key-of-an-interface> string

Contains the addresses, name, and vlantag of the network interface.

Each physical NIC has an automatically created interface key, where the value of the vlanid element is set to 0.

To add a valid virtual network interface to the physical NIC, create an additional interface, and assign a value between 1 and 4094 to its vlanid element.

addresses string Contains the addresses of the interface, and their display order.
<key-of-address> string Contains the IP address range.
@order list Lists the keys of the addresses in the order they are displayed on the SPS web UI.

 

mtu

 

integer

Maximum Transmission Unit (MTU) to set per network interface (VLAN or network interface card). Default value: 1500

name string The name of the interface, as displayed on the SPS web UI.

 

source_based_routes

 

list

Contains details of the network routing rule specific to packets coming out of this particular interface.

vlantag string

The ID of the interface.

For the physical interface, the value is 0. For virtual interfaces, the value is between 1 and 4094.

Caution:

Do not set the VLAN ID unless your network environment is already configured to use this VLAN. Otherwise, your SPS appliance will be unavailable using this interface.

Elements of source_based_routes Type Description
gateway string The IPv4 or IPv6 address of the gateway used to access the network set in this routing rule.
target_network string The IPv4 or IPv6 address of the host or network accessible via this routing rule.
Status and error codes

The following table lists the typical status and error codes for this request. For a complete list of error codes, see Application level error codes.

Code Description Notes
401 Unauthenticated The requested resource cannot be retrieved because the client is not authenticated and the resource requires authorization to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
403 Unauthorized The requested resource cannot be retrieved because the client is not authorized to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
404 NotFound The requested object does not exist.

Routing table

Contains the address of the gateway server for each configured subnet.

URL
GET https://<IP-address-of-SPS>/api/configuration/network/routing
Cookies
Cookie name Description Required Values
session_id Contains the authentication token of the user Required

The value of the session ID cookie received from the REST server in the authentication response, for example, a1f71d030e657634730b9e887cb59a5e56162860. For more information on authentication, see Authenticate to the SPS REST API.

NOTE: This session ID refers to the connection between the REST client and the SPS REST API. It is not related to the sessions that SPS records (and which also have a session ID, but in a different format).

Sample request

The following command lists the configured subnets and the corresponding gateway servers.

curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/network/routing
Response

The following is a sample response received when viewing the routing table.

For more information on the meta object, see Message format.

{
  "body": [
    {
      "gateway": "192.168.56.1",
      "target_network": "0.0.0.0/0"
    }
  ],
  "key": "routing",
  "meta": {
    "first": "/api/configuration/network/dns",
    "href": "/api/configuration/network/routing",
    "last": "/api/configuration/network/routing",
    "next": null,
    "parent": "/api/configuration/network",
    "previous": "/api/configuration/network/nics",
    "transaction": "/api/transaction"
  }
}
Element Type Description
key string Top level element, contains the ID of the endpoint.
body Top level element (list) Contains the routing table.
gateway string The IP address of the gateway server.
target_network string The network id (IP address and subnet mask) of the subnet.
Add a subnet

To add a subnet, you have to:

  1. Open a transaction

    For more information, see Open a transaction.

  2. Create the JSON object for the new routing table.

    POST the JSON object to the https://<IP-address-of-SPS>/api/configuration/network/routing endpoint. You can find a detailed description of the available parameters listed in Element .

  3. Commit your changes

    For more information, see Commit a transaction.

Modify the routing table

To modify the routing table, you have to:

  1. Open a transaction

    For more information, see Open a transaction.

  2. Modify the JSON object of the routing table.

    PUT the modified JSON object to the https://<IP-address-of-SPS>/api/configuration/netowrk/routing endpoint. You can find a detailed description of the available parameters listed in Element .

  3. Commit your changes

    For more information, see Commit a transaction.

Status and error codes

The following table lists the typical status and error codes for this request. For a complete list of error codes, see Application level error codes.

Code Description Notes
201 Created The new resource was successfully created.
401 Unauthenticated The requested resource cannot be retrieved because the client is not authenticated and the resource requires authorization to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
403 Unauthorized The requested resource cannot be retrieved because the client is not authorized to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
404 NotFound The requested object does not exist.

Local services of SPS

Contains the endpoints for configuring the local services of SPS.

URL
GET https://<IP-address-of-SPS>/api/configuration/local_services
Cookies
Cookie name Description Required Values
session_id Contains the authentication token of the user Required

The value of the session ID cookie received from the REST server in the authentication response, for example, a1f71d030e657634730b9e887cb59a5e56162860. For more information on authentication, see Authenticate to the SPS REST API.

NOTE: This session ID refers to the connection between the REST client and the SPS REST API. It is not related to the sessions that SPS records (and which also have a session ID, but in a different format).

Sample request

The following command lists the local services.

curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/local_services
Response

The following is a sample response received when listing local services.

For more information on the meta object, see Message format.

{
    "items": [
        {
            "key": "admin_web",
            "meta": {
                "href": "/api/configuration/local_services/admin_web"
            }
        },
        {
            "key": "analytics",
            "meta": {
                "href": "/api/configuration/local_services/analytics"
            }
        },
        {
            "key": "cluster",
            "meta": {
                "href": "/api/configuration/local_services/cluster"
            }
        },
        {
            "key": "indexer",
            "meta": {
                "href": "/api/configuration/local_services/indexer"
            }
        },
        {
            "key": "postgresql",
            "meta": {
                "href": "/api/configuration/local_services/postgresql"
            }
        },
        {
            "key": "snmp_agent",
            "meta": {
                "href": "/api/configuration/local_services/snmp_agent"
            }
        },
        {
            "key": "ssh",
            "meta": {
                "href": "/api/configuration/local_services/ssh"
            }
        },
        {
            "key": "user_web",
            "meta": {
                "href": "/api/configuration/local_services/user_web"
            }
        }
    ],
    "meta": {
        "first": "/api/configuration/aaa",
        "href": "/api/configuration/local_services",
        "last": "/api/configuration/x509",
        "next": "/api/configuration/management",
        "parent": "/api/configuration",
        "previous": "/api/configuration/ica",
        "transaction": "/api/transaction"
    }
}
Element Description
admin_web Web login for administrators and users: On this address, users can, depending on their access privileges, modify the configuration of SPS, and perform authentication-related activities (gateway authentication, 4-eyes authorization).
analytics

Enables One Identity Safeguard for Privileged Analytics.

To enable One Identity Safeguard for Privileged Analytics and analyze the behavior of your users, One Identity Safeguard for Privileged Sessions (SPS) requires a special license. Also, depending on the number of your users and sessions, the performance and sizing of SPS must be considered. If you are interested in One Identity Safeguard for Privileged Analytics, contact our Sales Team, or your One Identity representative. For details on One Identity Safeguard for Privileged Analytics, see the One Identity One Identity Safeguard for Privileged Analytics website. For details on enabling One Identity Safeguard for Privileged Analytics, see Safeguard for Privileged Analytics Configuration Guide.

cluster Configure the cluster service of SPS.
indexer Configure the indexer services of SPS, including remote indexing.
postgresql Configure direct remote access to the connection database of SPS.
snmp_agent Configure the SNMP server of SPS.
ssh Configure remote SSH access to SPS.
user_web

Web login for users only: The configuration of SPS cannot be viewed or altered from this address. Users (even ones with administrator privileges) can only perform gateway authentication and 4-eyes authorization.

Status and error codes

The following table lists the typical status and error codes for this request. For a complete list of error codes, see Application level error codes.

Code Description Notes
401 Unauthenticated The requested resource cannot be retrieved because the client is not authenticated and the resource requires authorization to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
403 Unauthorized The requested resource cannot be retrieved because the client is not authorized to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
404 NotFound The requested object does not exist.

Local services: Web login for administrators

The SPS administrators and users can, depending on their access privileges, modify the configuration of SPS, and perform authentication-related activities (gateway authentication, 4-eyes authorization). On this endpoint you can configure on which interfaces can the administrators access SPS, and optionally restrict the access to these interfaces.

URL
GET https://<IP-address-of-SPS>/api/configuration/local_services/admin_web
Cookies
Cookie name Description Required Values
session_id Contains the authentication token of the user Required

The value of the session ID cookie received from the REST server in the authentication response, for example, a1f71d030e657634730b9e887cb59a5e56162860. For more information on authentication, see Authenticate to the SPS REST API.

NOTE: This session ID refers to the connection between the REST client and the SPS REST API. It is not related to the sessions that SPS records (and which also have a session ID, but in a different format).

Sample request

The following command lists the configuration options.

curl --cookie cookies https://<IP-address-of-SPS>/api/configuration/local_services/admin_web
Response

The following is a sample response received when listing the configuration options.

For more information on the meta object, see Message format.

{
    "body": {
        "access_restriction": {
            "allowed_from": [
                "10.40.0.0/16"
            ],
            "enabled": true
        },
        "listen": [
            {
                "address": {
                    "key": "nic1.interfaces.ff7574025754b3df1647001.addresses.1",
                    "meta": {
                        "href": "/api/configuration/network/nics/nic1#interfaces/ff7574025754b3df1647001/addresses/1"
                    }
                },
                "http_port": 80,
                "https_port": 443
            }
        ]
    },
    "key": "admin_web",
    "meta": {
        "first": "/api/configuration/local_services/admin_web",
        "href": "/api/configuration/local_services/admin_web",
        "last": "/api/configuration/local_services/user_web",
        "next": "/api/configuration/local_services/indexer",
        "parent": "/api/configuration/local_services",
        "previous": null,
        "transaction": "/api/transaction"
    }
}
Element Type Description
key string Top level element, contains the ID of the endpoint.
body Top level element (string) Contains the configuration options of the SPS web interface.

access_restriction

JSON object

Enables and configures limitations on the clients that can access the web interface, based on the IP address of the clients.

allowed_from

list

The list of IP networks from where the administrators are permitted to access this management interface. To specify the IP addresses or networks, use the IPv4-Address/prefix format, for example, 10.40.0.0/16.

enabled

boolean

Set it to true to restrict access to the specified client addresses.

bruteforce_protection boolean Enables protection against brute-force attacks by denying access after failed login attempts for increasingly longer period. Enabled by default.
listen list Selects the network interface, IP address, and port where the clients can access the web interface.
address JSON object

A reference to a configured network interface and IP address where this local service accepts connections. For example, if querying the interface /api/configuration/network/nics/nic1#interfaces/ff7574025754b3df1647001/addresses/ returns the following response:

{
    "body": {
        "interfaces": {
            "@order": [
                "ff7574025754b3df1647001"
            ],
            "ff7574025754b3df1647001": {
                "addresses": {
                    "1": "10.40.255.171/24",
                    "@order": [
                        "1"
                    ]
                },
                "name": "default",
                "vlantag": 0
            }
        },
        "name": "eth0",
        "speed": "auto"
    },
    "key": "nic1",
    "meta": {
        "first": "/api/configuration/network/nics/nic1",
        "href": "/api/configuration/network/nics/nic1",
        "last": "/api/configuration/network/nics/nic3",
        "next": "/api/configuration/network/nics/nic2",
        "parent": "/api/configuration/network/nics",
        "previous": null,
        "transaction": "/api/transaction"
    }
    }

Then the listening address of the local service is the following.

nic1.interfaces.ff7574025754b3df1647001.addresses.1

This is the format you have to use when configuring the address of the local service using REST:

"address": "nic1.interfaces.ff7574025754b3df1647001.addresses.1"

When querying a local services endpoint, the response will contain a reference to the IP address of the interface in the following format:

"address": {
    "key": "nic1.interfaces.ff7574025754b3df1647001.addresses.1",
    "meta": {
        "href": "/api/configuration/network/nics/nic1#interfaces/ff7574025754b3df1647001/addresses/1"
    }
    },
http_port integer The port number where SPS accepts HTTP connections. Note that SPS automatically redirects connections from this port to the HTTPS port set in https_port.
https_port integer The port number where SPS accepts HTTPS connections.
Status and error codes

The following table lists the typical status and error codes for this request. For a complete list of error codes, see Application level error codes.

Code Description Notes
401 Unauthenticated The requested resource cannot be retrieved because the client is not authenticated and the resource requires authorization to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
403 Unauthorized The requested resource cannot be retrieved because the client is not authorized to access it. The details section contains the path that was attempted to be accessed, but could not be retrieved.
404 NotFound The requested object does not exist.
Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating