Installing and configuring the PingIntelligence bundle
Install and configure the PingIntelligence bundle for the CA API Gateway.
About this task
To install and configure the PingIntelligence bundle:
Steps
-
Download the PingIntelligence policy files from the Ping Identity Download site.
The downloaded package will have the following files and properties:
-
ASE Check Request: The assertion used to analyze API requests.
-
ASE Check Response: The assertion used to analyze API responses.
-
Cluster-wide Properties:
-
ase_host_https: The default is https://ase-server.example.com. -
ase_host2_https: The default is https://ase-server-2.example.com. -
ase_path_requestandase_path2_request: The default path is /ase/request. -
ase_path_responseandase_path2_response: The default path is /ase/response.
-
-
API examples:
-
/shop: Example API that may be called by an external client. The API shows how to support both failing and non-failing policies. -
/shop/backend: An example shop-backend for demo purposes.
-
-
-
Untar the package.
-
Edit the
pingintelligence-properties.bundleto configure the following properties:Property Description ase_host_httpsandase_host2_httpsPrimary and secondary PingIntelligence API Security Enforcer (ASE) Internet Protocol (IP) address and port number. If the primary ASE is not available, the request is sent to the secondary ASE.
ase_request_connection_timeoutThe time in milliseconds for which the API gateway waits to establish a TCP connection for the client request with ASE. After the timeout period, the request is directly sent to the backend server. The default value is 30,000 milliseconds.
ase_request_read_timeoutThe time in milliseconds for which the API gateway waits to get a response from ASE for the request. After the timeout period, the request is directly sent to the backend server. The default value is 60,000 milliseconds.
ase_response_connection_timeoutThe time in milliseconds for which the API gateway waits to establish a TCP connection with ASE for the response from the backend server. After the timeout period, the response is directly sent to the client. The default value is 30,000 milliseconds.
ase_response_read_timeoutThe time in milliseconds for which the API gateway waits to get a response from ASE for the request. After the timeout period, the request is directly sent to the backend server. The default value is 60,000 milliseconds.
ase_path_requestandase_path2_requestUse the default value in the sample file.
ase_path_responseandase_path2_responseUse the default value in the sample file.
Example:
The following is a sample
pingintelligence-properties.bundlefile:<?xml version="1.0" encoding="UTF-8"?><l7:Bundle xmlns:l7="http://ns.l7tech.com/2010/04/gateway-management"> <l7:References> <l7:Item> <l7:Name>ase_host_https</l7:Name> <l7:Id>f33082fa66314439b5d7e8703ac0963a</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="f33082fa66314439b5d7e8703ac0963a" version="1"> <l7:Name>ase_host_https</l7:Name> <l7:Value>https://your-ase-host-and-port</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_path_request</l7:Name> <l7:Id>f33082fa66314439b5d7e8703ac09636</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="f33082fa66314439b5d7e8703ac09636" version="0"> <l7:Name>ase_path_request</l7:Name> <l7:Value>/ase/request</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_path_response</l7:Name> <l7:Id>f33082fa66314439b5d7e8703ac09633</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="f33082fa66314439b5d7e8703ac09633" version="0"> <l7:Name>ase_path_response</l7:Name> <l7:Value>/ase/response</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_request_connection_timeout</l7:Name> <l7:Id>07b5ecd6fc3baca9518885b71dbcee8e</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="07b5ecd6fc3baca9518885b71dbcee8e" version="0"> <l7:Name>ase_request_connection_timeout</l7:Name> <l7:Value>30000</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_request_read_timeout</l7:Name> <l7:Id>07b5ecd6fc3baca9518885b71dbcee90</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="07b5ecd6fc3baca9518885b71dbcee90" version="0"> <l7:Name>ase_request_read_timeout</l7:Name> <l7:Value>60000</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_response_connection_timeout</l7:Name> <l7:Id>07b5ecd6fc3baca9518885b71dbcee92</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="07b5ecd6fc3baca9518885b71dbcee92" version="0"> <l7:Name>ase_response_connection_timeout</l7:Name> <l7:Value>30000</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_response_read_timeout</l7:Name> <l7:Id>07b5ecd6fc3baca9518885b71dbcee94</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-09T20:18:03.316Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="07b5ecd6fc3baca9518885b71dbcee94" version="0"> <l7:Name>ase_response_read_timeout</l7:Name> <l7:Value>60000</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_path2_response</l7:Name> <l7:Id>753f4df53a2f3daf040f9807a4f9a126</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-18T17:04:41.043Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="753f4df53a2f3daf040f9807a4f9a126" version="0"> <l7:Name>ase_path2_response</l7:Name> <l7:Value>/ase/response</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_path2_request</l7:Name> <l7:Id>753f4df53a2f3daf040f9807a4f9a124</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-18T17:04:41.043Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="753f4df53a2f3daf040f9807a4f9a124" version="0"> <l7:Name>ase_path2_request</l7:Name> <l7:Value>/ase/request</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> <l7:Item> <l7:Name>ase_host2_https</l7:Name> <l7:Id>753f4df53a2f3daf040f9807a4f9a122</l7:Id> <l7:Type>CLUSTER_PROPERTY</l7:Type> <l7:TimeStamp>2019-07-18T17:04:41.043Z</l7:TimeStamp> <l7:Resource> <l7:ClusterProperty id="753f4df53a2f3daf040f9807a4f9a122" version="1"> <l7:Name>ase_host2_https</l7:Name> <l7:Value>https://your-second-ase-host-and-port</l7:Value> </l7:ClusterProperty> </l7:Resource> </l7:Item> </l7:References>