@itentialopensource/adapter-cisco_ise 0.1.1 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +1 -0
- package/AUTH.md +4 -4
- package/BROKER.md +4 -4
- package/CALLS.md +9 -9
- package/ENHANCE.md +3 -3
- package/PROPERTIES.md +24 -9
- package/README.md +6 -11
- package/SUMMARY.md +2 -2
- package/SYSTEMINFO.md +1 -1
- package/TAB1.md +2 -2
- package/TAB2.md +8 -4
- package/TROUBLESHOOT.md +1 -1
- package/UTILITIES.md +473 -0
- package/adapter.js +14 -15
- package/adapterBase.js +52 -16
- package/package.json +25 -29
- package/pronghorn.json +479 -477
- package/propertiesSchema.json +189 -44
- package/report/updateReport1748551175850.json +120 -0
- package/sampleProperties.json +4 -0
- package/test/integration/adapterTestBasicGet.js +88 -54
- package/test/integration/adapterTestConnectivity.js +15 -16
- package/test/integration/adapterTestIntegration.js +1 -38
- package/test/unit/adapterBaseTestUnit.js +641 -39
- package/test/unit/adapterTestUnit.js +23 -54
- package/utils/adapterInfo.js +114 -164
- package/utils/argParser.js +44 -0
- package/utils/checkMigrate.js +77 -38
- package/utils/entitiesToDB.js +53 -42
- package/utils/logger.js +26 -0
- package/utils/modify.js +56 -55
- package/utils/mongoDbConnection.js +79 -0
- package/utils/mongoUtils.js +162 -0
- package/utils/taskMover.js +31 -32
- package/utils/tbScript.js +36 -172
- package/utils/tbUtils.js +84 -226
- package/utils/troubleshootingAdapter.js +68 -84
- package/utils/updateAdapterConfig.js +158 -0
- package/utils/addAuth.js +0 -94
- package/utils/artifactize.js +0 -146
- package/utils/basicGet.js +0 -50
- package/utils/packModificationScript.js +0 -35
- package/utils/patches2bundledDeps.js +0 -90
package/.eslintrc.js
CHANGED
package/AUTH.md
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
## Authenticating Cisco Identity Services Engine (ISE) Adapter
|
|
2
2
|
|
|
3
|
-
This document will go through the steps for authenticating the Cisco ISE adapter with Basic Authentication. Properly configuring the properties for an adapter in
|
|
3
|
+
This document will go through the steps for authenticating the Cisco ISE adapter with Basic Authentication. Properly configuring the properties for an adapter in Itential Platform is critical for getting the adapter online. You can read more about adapter authentication <a href="https://docs.itential.com/opensource/docs/authentication" target="_blank">HERE</a>.
|
|
4
4
|
|
|
5
5
|
### Basic Authentication
|
|
6
6
|
The Cisco ISE adapter requires Basic Authentication. If you change authentication methods, you should change this section accordingly and merge it back into the adapter repository.
|
|
7
7
|
|
|
8
8
|
STEPS
|
|
9
9
|
1. Ensure you have access to a Cisco ISE server and that it is running
|
|
10
|
-
2. Follow the steps in the README.md to import the adapter into
|
|
10
|
+
2. Follow the steps in the README.md to import the adapter into Itential Platform if you have not already done so
|
|
11
11
|
3. Use the properties below for the ```properties.authentication``` field
|
|
12
12
|
```json
|
|
13
13
|
"authentication": {
|
|
@@ -24,8 +24,8 @@ you can leave all of the other properties in the authentication section, they wi
|
|
|
24
24
|
|
|
25
25
|
### Troubleshooting
|
|
26
26
|
- Make sure you copied over the correct username and password.
|
|
27
|
-
- Turn on debug level logs for the adapter in
|
|
28
|
-
- Turn on auth_logging for the adapter in
|
|
27
|
+
- Turn on debug level logs for the adapter in Itential Platform Admin Essentials.
|
|
28
|
+
- Turn on auth_logging for the adapter in Itential Platform Admin Essentials (adapter properties).
|
|
29
29
|
- Investigate the logs - in particular:
|
|
30
30
|
- The FULL REQUEST log to make sure the proper headers are being sent with the request.
|
|
31
31
|
- The FULL BODY log to make sure the payload is accurate.
|
package/BROKER.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
## Integrating Cisco_ise Adapter with
|
|
1
|
+
## Integrating Cisco_ise Adapter with Itential Platform Device Broker
|
|
2
2
|
|
|
3
|
-
This document will go through the steps for integrating the Cisco_ise adapter with
|
|
3
|
+
This document will go through the steps for integrating the Cisco_ise adapter with Itential Platform's Device Broker. Itential Platform Device Broker integration allows for easier interation into several of Itential Platform's applications (e.g. Configuration Manager). Properly configuring the properties for the adapter in Itential Platform is critical for getting the device broker integration to work. Their is additional information in the configuration section of the adapter readme. This document will go through each of the calls that are utilized by the Device Broker.
|
|
4
4
|
|
|
5
5
|
### getDevicesFiltered
|
|
6
6
|
getDevicesFiltered(options, callback) → This call returns all of the devices within Cisco_ise that match the provided filter.
|
|
@@ -13,7 +13,7 @@ options {object}: defines the options for the search. At current filter is the m
|
|
|
13
13
|
|
|
14
14
|
An Object containing the total number of matching devices and a list containing an array of the details for each device. For example, { total: 2, list: [ { name: ‘abc’, ostype: ‘type’, port: 80, ipaddress: ‘10.10.10.10’ }, { name: ‘def’, ostype: ‘type2’, port: 443, ipaddress: ‘10.10.10.15’ }] }
|
|
15
15
|
|
|
16
|
-
The fields name and ostype are required by the broker and should be mapped through properties to data from the other system. In addition, ipaddress and port should also be mapped as it is utilized by some north bound
|
|
16
|
+
The fields name and ostype are required by the broker and should be mapped through properties to data from the other system. In addition, ipaddress and port should also be mapped as it is utilized by some north bound Itential Platform applications (e.g. Config Manager). There are other fields that can be set as well but consider these the minimal fields.
|
|
17
17
|
|
|
18
18
|
Below is an example of how you may set up the properties for this call.
|
|
19
19
|
|
|
@@ -69,7 +69,7 @@ Below is an example of how you may set up the properties for this call.
|
|
|
69
69
|
|
|
70
70
|
Notice with the path, there is a variable in it ({org}). This variable must be provided in the data available to the call. For getDevicesFiltered this means the requestFields as a static value. In other calls, it may also come from the result of the getDevicesFiltered call.
|
|
71
71
|
|
|
72
|
-
Notice with the responseFields, it wants the
|
|
72
|
+
Notice with the responseFields, it wants the Itential Platform data key as the key and where it is supposed to find the data in the response as the value. You can use nested fields in the response object using standard object notation. You can also add static data as shown in the port field. Finally, you can append data to the response from the requestInformation using its key (e.g. org). The ostypePrefix is a special field that allows you to add static data to the ostype to help define the system you are getting the device from.
|
|
73
73
|
|
|
74
74
|
Notice here that you can also have multiple calls that make up the results provided to the Device Broker. In this example we are making calls to two different organizations and returning the results from both.
|
|
75
75
|
|
package/CALLS.md
CHANGED
|
@@ -4,7 +4,7 @@ The `adapter.js` file contains the calls the adapter makes available to the rest
|
|
|
4
4
|
|
|
5
5
|
### Generic Adapter Calls
|
|
6
6
|
|
|
7
|
-
These are adapter methods that
|
|
7
|
+
These are adapter methods that Itential Platform or you might use. There are some other methods not shown here that might be used for internal adapter functionality.
|
|
8
8
|
|
|
9
9
|
<table border="1" class="bordered-table">
|
|
10
10
|
<tr>
|
|
@@ -14,7 +14,7 @@ These are adapter methods that IAP or you might use. There are some other method
|
|
|
14
14
|
</tr>
|
|
15
15
|
<tr>
|
|
16
16
|
<td style="padding:15px">connect()</td>
|
|
17
|
-
<td style="padding:15px">This call is run when the Adapter is first loaded by
|
|
17
|
+
<td style="padding:15px">This call is run when the Adapter is first loaded by the Itential Platform. It validates the properties have been provided correctly.</td>
|
|
18
18
|
<td style="padding:15px">No</td>
|
|
19
19
|
</tr>
|
|
20
20
|
<tr>
|
|
@@ -34,7 +34,7 @@ These are adapter methods that IAP or you might use. There are some other method
|
|
|
34
34
|
</tr>
|
|
35
35
|
<tr>
|
|
36
36
|
<td style="padding:15px">iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, callback)</td>
|
|
37
|
-
<td style="padding:15px">This call provides the ability to update the adapter configuration from
|
|
37
|
+
<td style="padding:15px">This call provides the ability to update the adapter configuration from Itential Platform - includes actions, schema, mockdata and other configurations.</td>
|
|
38
38
|
<td style="padding:15px">Yes</td>
|
|
39
39
|
</tr>
|
|
40
40
|
<tr>
|
|
@@ -58,7 +58,7 @@ These are adapter methods that IAP or you might use. There are some other method
|
|
|
58
58
|
<td style="padding:15px">Yes</td>
|
|
59
59
|
</tr>
|
|
60
60
|
<tr>
|
|
61
|
-
<td style="padding:15px">iapTroubleshootAdapter(props,
|
|
61
|
+
<td style="padding:15px">iapTroubleshootAdapter(props, adapter, callback)</td>
|
|
62
62
|
<td style="padding:15px">This call can be used to check on the performance of the adapter - it checks connectivity, healthcheck and basic get calls.</td>
|
|
63
63
|
<td style="padding:15px">Yes</td>
|
|
64
64
|
</tr>
|
|
@@ -73,13 +73,13 @@ These are adapter methods that IAP or you might use. There are some other method
|
|
|
73
73
|
<td style="padding:15px">Yes</td>
|
|
74
74
|
</tr>
|
|
75
75
|
<tr>
|
|
76
|
-
<td style="padding:15px">iapRunAdapterBasicGet(callback)</td>
|
|
77
|
-
<td style="padding:15px">This call will return the results of running basic get API calls.</td>
|
|
76
|
+
<td style="padding:15px">iapRunAdapterBasicGet(maxCalls, callback)</td>
|
|
77
|
+
<td style="padding:15px">This call will return the results of running basic get API calls. By default 5 get calls without parameters will be run. You can ask for more or less by setting maxCalls.</td>
|
|
78
78
|
<td style="padding:15px">Yes</td>
|
|
79
79
|
</tr>
|
|
80
80
|
<tr>
|
|
81
81
|
<td style="padding:15px">iapMoveAdapterEntitiesToDB(callback)</td>
|
|
82
|
-
<td style="padding:15px">This call will push the adapter configuration from the entities directory into the Adapter or
|
|
82
|
+
<td style="padding:15px">This call will push the adapter configuration from the entities directory into the Adapter or Itential Platform Database.</td>
|
|
83
83
|
<td style="padding:15px">Yes</td>
|
|
84
84
|
</tr>
|
|
85
85
|
<tr>
|
|
@@ -150,7 +150,7 @@ These are adapter methods that are used for adapter caching. If configured, the
|
|
|
150
150
|
|
|
151
151
|
### Adapter Broker Calls
|
|
152
152
|
|
|
153
|
-
These are adapter methods that are used to integrate to
|
|
153
|
+
These are adapter methods that are used to integrate to Itential Platform Brokers. This adapter currently supports the following broker calls.
|
|
154
154
|
|
|
155
155
|
<table border="1" class="bordered-table">
|
|
156
156
|
<tr>
|
|
@@ -160,7 +160,7 @@ These are adapter methods that are used to integrate to IAP Brokers. This adapte
|
|
|
160
160
|
</tr>
|
|
161
161
|
<tr>
|
|
162
162
|
<td style="padding:15px">hasEntities(entityType, entityList, callback)</td>
|
|
163
|
-
<td style="padding:15px">This call is utilized by the
|
|
163
|
+
<td style="padding:15px">This call is utilized by the Itential Platform Device Broker to determine if the adapter has a specific entity and item of the entity.</td>
|
|
164
164
|
<td style="padding:15px">No</td>
|
|
165
165
|
</tr>
|
|
166
166
|
<tr>
|
package/ENHANCE.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
### Adding a Second Instance of an Adapter
|
|
4
4
|
|
|
5
|
-
You can add a second instance of this adapter without adding new code on the file system. To do this go into the
|
|
5
|
+
You can add a second instance of this adapter without adding new code on the file system. To do this go into the Itential Platform Admin Essentials and add a new service config for this adapter. The two instances of the adapter should have unique ids. In addition, they should point to different instances (unique host and port) of the other system.
|
|
6
6
|
|
|
7
7
|
### Adding Adapter Calls
|
|
8
8
|
|
|
@@ -18,7 +18,7 @@ npm run adapter:update
|
|
|
18
18
|
|
|
19
19
|
If you do not have a Swagger or OpenAPI document, you can use a Postman Collection and convert that to an OpenAPI document using APIMatic and then follow the first process.
|
|
20
20
|
|
|
21
|
-
If you want to manually update the adapter that can also be done the key thing is to make sure you update all of the right files. Within the entities directory you will find 1 or more entities. You can create a new entity or add to an existing entity. Each entity has an action.json file, any new call will need to be put in the action.json file. It will also need to be added to the enum for the ph_request_type in the appropriate schema files. Once this configuration is complete you will need to add the call to the adapter.js file and, in order to make it available as a workflow task in
|
|
21
|
+
If you want to manually update the adapter that can also be done the key thing is to make sure you update all of the right files. Within the entities directory you will find 1 or more entities. You can create a new entity or add to an existing entity. Each entity has an action.json file, any new call will need to be put in the action.json file. It will also need to be added to the enum for the ph_request_type in the appropriate schema files. Once this configuration is complete you will need to add the call to the adapter.js file and, in order to make it available as a workflow task in Itential Platform, it should also be added to the pronghorn.json file. You can optionally add it to the unit and integration test files. There is more information on how to work on each of these files in the <a href="https://docs.itential.com/opensource/docs/adapters" target="_blank">Adapter Technical Resources</a> on our Documentation Site.
|
|
22
22
|
|
|
23
23
|
```text
|
|
24
24
|
Files to update
|
|
@@ -32,7 +32,7 @@ Files to update
|
|
|
32
32
|
|
|
33
33
|
### Adding Adapter Properties
|
|
34
34
|
|
|
35
|
-
While changing adapter properties is done in the service instance configuration section of
|
|
35
|
+
While changing adapter properties is done in the service instance configuration section of Itential Platform, adding properties has to be done in the adapter. To add a property you should edit the propertiesSchema.json with the proper information for the property. In addition, you should modify the sampleProperties to have the new property in it.
|
|
36
36
|
|
|
37
37
|
```text
|
|
38
38
|
Files to update
|
package/PROPERTIES.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
## Configuration
|
|
2
2
|
|
|
3
|
-
This section defines **all** the properties that are available for the adapter, including detailed information on what each property is for. If you are not using certain capabilities with this adapter, you do not need to define all of the properties. An example of how the properties for this adapter can be used with tests or
|
|
3
|
+
This section defines **all** the properties that are available for the adapter, including detailed information on what each property is for. If you are not using certain capabilities with this adapter, you do not need to define all of the properties. An example of how the properties for this adapter can be used with tests or Itential Platform are provided in the sampleProperties.
|
|
4
4
|
|
|
5
5
|
```json
|
|
6
6
|
{
|
|
@@ -82,12 +82,15 @@ This section defines **all** the properties that are available for the adapter,
|
|
|
82
82
|
"password": "",
|
|
83
83
|
},
|
|
84
84
|
"mongo": {
|
|
85
|
+
"url": "",
|
|
85
86
|
"host": "",
|
|
86
87
|
"port": 0,
|
|
87
88
|
"database": "",
|
|
89
|
+
"dbAuth": false,
|
|
88
90
|
"username": "",
|
|
89
91
|
"password": "",
|
|
90
92
|
"replSet": "",
|
|
93
|
+
"addSrv": false,
|
|
91
94
|
"db_ssl": {
|
|
92
95
|
"enabled": false,
|
|
93
96
|
"accept_invalid_cert": false,
|
|
@@ -215,7 +218,7 @@ These base properties are used to connect to Cisco_ise upon the adapter initiall
|
|
|
215
218
|
</table>
|
|
216
219
|
<br>
|
|
217
220
|
|
|
218
|
-
A connectivity check tells
|
|
221
|
+
A connectivity check tells Itential Platform the adapter has loaded successfully.
|
|
219
222
|
|
|
220
223
|
### Authentication Properties
|
|
221
224
|
|
|
@@ -343,7 +346,7 @@ The request section defines properties to help handle requests.
|
|
|
343
346
|
</tr>
|
|
344
347
|
<tr>
|
|
345
348
|
<td style="padding:15px">failover_codes</td>
|
|
346
|
-
<td style="padding:15px">An array of error codes for which the adapter will send back a failover flag to
|
|
349
|
+
<td style="padding:15px">An array of error codes for which the adapter will send back a failover flag to Itential Platform so that the Platform can attempt the action in another adapter.</td>
|
|
347
350
|
</tr>
|
|
348
351
|
<tr>
|
|
349
352
|
<td style="padding:15px">attempt_timeout</td>
|
|
@@ -375,7 +378,7 @@ The request section defines properties to help handle requests.
|
|
|
375
378
|
</tr>
|
|
376
379
|
<tr>
|
|
377
380
|
<td style="padding:15px">return_raw</td>
|
|
378
|
-
<td style="padding:15px">Optional. Tells the adapter whether the raw response should be returned as well as the
|
|
381
|
+
<td style="padding:15px">Optional. Tells the adapter whether the raw response should be returned as well as the Itential Platform response. This is helpful when running integration tests to save mock data. It does add overhead to the response object so it is not ideal from production.</td>
|
|
379
382
|
</tr>
|
|
380
383
|
<tr>
|
|
381
384
|
<td style="padding:15px">archiving</td>
|
|
@@ -521,29 +524,41 @@ The mongo section defines the properties used to connect to a Mongo database. Mo
|
|
|
521
524
|
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Property</span></th>
|
|
522
525
|
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
|
|
523
526
|
</tr>
|
|
527
|
+
<tr>
|
|
528
|
+
<td style="padding:15px">url</td>
|
|
529
|
+
<td style="padding:15px">Optional. Mongo's complete connection URL. This property overrides host, port, database, username, password and replSet settings.</td>
|
|
530
|
+
</tr>
|
|
524
531
|
<tr>
|
|
525
532
|
<td style="padding:15px">host</td>
|
|
526
|
-
<td style="padding:15px">Optional. Host information for the
|
|
533
|
+
<td style="padding:15px">Optional. Host information for the Mongo server.</td>
|
|
527
534
|
</tr>
|
|
528
535
|
<tr>
|
|
529
536
|
<td style="padding:15px">port</td>
|
|
530
|
-
<td style="padding:15px">Optional. Port information for the
|
|
537
|
+
<td style="padding:15px">Optional. Port information for the Mongo server.</td>
|
|
531
538
|
</tr>
|
|
532
539
|
<tr>
|
|
533
540
|
<td style="padding:15px">database</td>
|
|
534
541
|
<td style="padding:15px">Optional. The database for the adapter to use for its data.</td>
|
|
535
542
|
</tr>
|
|
543
|
+
<tr>
|
|
544
|
+
<td style="padding:15px">dbAuth</td>
|
|
545
|
+
<td style="padding:15px">Optional. Whether to use authentication for MongoDB connection. Default is false.</td>
|
|
546
|
+
</tr>
|
|
536
547
|
<tr>
|
|
537
548
|
<td style="padding:15px">username</td>
|
|
538
|
-
<td style="padding:15px">Optional. If credentials are required to access
|
|
549
|
+
<td style="padding:15px">Optional. If credentials are required to access Mongo, this is the user to login as.</td>
|
|
539
550
|
</tr>
|
|
540
551
|
<tr>
|
|
541
552
|
<td style="padding:15px">password</td>
|
|
542
|
-
<td style="padding:15px">Optional. If credentials are required to access
|
|
553
|
+
<td style="padding:15px">Optional. If credentials are required to access Mongo, this is the password to login with.</td>
|
|
543
554
|
</tr>
|
|
544
555
|
<tr>
|
|
545
556
|
<td style="padding:15px">replSet</td>
|
|
546
|
-
<td style="padding:15px">Optional. If the database is set up to use replica sets, define it here so it can be added to the database connection
|
|
557
|
+
<td style="padding:15px">Optional. If the database is set up to use replica sets, define it here so it can be added to the database connection. Not used when using mongodb+srv:// protocol</td>
|
|
558
|
+
</tr>
|
|
559
|
+
<tr>
|
|
560
|
+
<td style="padding:15px">addSrv</td>
|
|
561
|
+
<td style="padding:15px">Optional. Whether the connection requires the mongodb+srv:// protocol. If true, uses mongodb+srv:// protocol. Note: mongodb+srv:// can also be used for non-Atlas deployments that support DNS SRV records</td>
|
|
547
562
|
</tr>
|
|
548
563
|
<tr>
|
|
549
564
|
<td style="padding:15px">db_ssl</td>
|
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Adapter for
|
|
1
|
+
# Adapter for Cisco_ise
|
|
2
2
|
|
|
3
3
|
## Table of Contents
|
|
4
4
|
|
|
@@ -19,6 +19,7 @@ Some of the page links in this document and links to other GitLab files do not w
|
|
|
19
19
|
- [How to Install](#how-to-install)
|
|
20
20
|
- [Testing](#testing)
|
|
21
21
|
- [Configuration](./PROPERTIES.md)
|
|
22
|
+
- [Utilities](./UTILITIES.md)
|
|
22
23
|
- [Additional Information](#additional-information)
|
|
23
24
|
- [Enhancements](./ENHANCE.md)
|
|
24
25
|
- [Contributing](./CONTRIBUTING.md)
|
|
@@ -120,10 +121,6 @@ The following list of packages are required for Itential opensource adapters or
|
|
|
120
121
|
<td style="padding:15px">commander</td>
|
|
121
122
|
<td style="padding:15px">Utilized by the node scripts that are included with the adapter; helps to build and extend the functionality.</td>
|
|
122
123
|
</tr>
|
|
123
|
-
<tr>
|
|
124
|
-
<td style="padding:15px">dns-lookup-promise</td>
|
|
125
|
-
<td style="padding:15px">Utilized by the node scripts that are included with the adapter; helps to build and extend the functionality.</td>
|
|
126
|
-
</tr>
|
|
127
124
|
<tr>
|
|
128
125
|
<td style="padding:15px">fs-extra</td>
|
|
129
126
|
<td style="padding:15px">Utilized by the node scripts that are included with the adapter; helps to build and extend the functionality.</td>
|
|
@@ -176,7 +173,7 @@ testdouble
|
|
|
176
173
|
|
|
177
174
|
#### How to Install
|
|
178
175
|
|
|
179
|
-
1a. If you are working on
|
|
176
|
+
1a. If you are working on Itential Platform 2023.2 or earlier versions, set up the name space location in your Itential Platform node_modules.
|
|
180
177
|
|
|
181
178
|
```bash
|
|
182
179
|
cd /opt/pronghorn/current/node_modules (* could be in a different place)
|
|
@@ -201,7 +198,7 @@ or
|
|
|
201
198
|
tar -xvf adapter-cisco_ise.tar
|
|
202
199
|
```
|
|
203
200
|
|
|
204
|
-
3.
|
|
201
|
+
3. install the adapter dependencies.
|
|
205
202
|
|
|
206
203
|
```bash
|
|
207
204
|
cd adapter-cisco_ise
|
|
@@ -272,6 +269,8 @@ Test should also be written to clean up after themselves. However, it is importa
|
|
|
272
269
|
|
|
273
270
|
### [Configuration](./PROPERTIES.md)
|
|
274
271
|
|
|
272
|
+
### [Utilities](./UTILITIES.md)
|
|
273
|
+
|
|
275
274
|
### Additional Information
|
|
276
275
|
|
|
277
276
|
#### [Enhancements](./ENHANCE.md)
|
|
@@ -291,10 +290,6 @@ There are several node scripts that now accompany the adapter. These scripts are
|
|
|
291
290
|
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Run</span></th>
|
|
292
291
|
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
|
|
293
292
|
</tr>
|
|
294
|
-
<tr>
|
|
295
|
-
<td style="padding:15px">npm run adapter:install</td>
|
|
296
|
-
<td style="padding:15px">Provides an easier way to install the adapter.</td>
|
|
297
|
-
</tr>
|
|
298
293
|
<tr>
|
|
299
294
|
<td style="padding:15px">npm run adapter:checkMigrate</td>
|
|
300
295
|
<td style="padding:15px">Checks whether your adapter can and should be migrated to the latest foundation.</td>
|
package/SUMMARY.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
## Overview
|
|
2
2
|
|
|
3
|
-
This adapter is used to integrate the Itential
|
|
3
|
+
This adapter is used to integrate the Itential Platform with the Cisco_ise System. The API that was used to build the adapter for Cisco_ise is usually available in the report directory of this adapter. The adapter utilizes the Cisco_ise API to provide the integrations that are deemed pertinent to Itential Platform. The ReadMe file is intended to provide information on this adapter it is generated from various other Markdown files.
|
|
4
4
|
|
|
5
5
|
>**Note**: It is possible that some integrations will be supported through the Cisco_ise adapter while other integrations will not. If you need additional API calls, you can use the Update capabilities provided by the Adapter Builder or request Itential to add them if the Adapter is an Itential opensourced adapter.
|
|
6
6
|
|
|
7
7
|
Itential provides information on all of its product adapters in the Customer Knowledge Base. Information in the <a href="https://itential.atlassian.net/servicedesk/customer/portals" target="_blank">Customer Knowledge Base</a> is consistently maintained and goes through documentation reviews. As a result, it should be the first place to go for information.
|
|
8
8
|
|
|
9
|
-
For opensourced and custom built adapters, the ReadMe is a starting point to understand what you have built, provide the information for you to be able to update the adapter, and assist you with deploying the adapter into
|
|
9
|
+
For opensourced and custom built adapters, the ReadMe is a starting point to understand what you have built, provide the information for you to be able to update the adapter, and assist you with deploying the adapter into Itential Platform.
|
package/SYSTEMINFO.md
CHANGED
|
@@ -12,7 +12,7 @@ We classify Cisco ISE into the Security/SASE domain as Cisco ISE provides the so
|
|
|
12
12
|
"Cisco ISE gives you visibility and control over who and what is on the network."
|
|
13
13
|
|
|
14
14
|
## Why Integrate
|
|
15
|
-
The Cisco ISE adapter from Itential is used to integrate the Itential
|
|
15
|
+
The Cisco ISE adapter from Itential is used to integrate the Itential Platform with Cisco ISE. With this adapter you have the ability to perform operations such as:
|
|
16
16
|
|
|
17
17
|
- Automates the building and management of Cisco identity services engine resources.
|
|
18
18
|
- Create Network Devices
|
package/TAB1.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# Overview
|
|
2
2
|
|
|
3
|
-
This adapter is used to integrate the Itential
|
|
3
|
+
This adapter is used to integrate the Itential Platform with the Cisco_ise System. The API that was used to build the adapter for Cisco_ise is usually available in the report directory of this adapter. The adapter utilizes the Cisco_ise API to provide the integrations that are deemed pertinent to Itential Platform. The ReadMe file is intended to provide information on this adapter it is generated from various other Markdown files.
|
|
4
4
|
|
|
5
5
|
## Details
|
|
6
|
-
The Cisco ISE adapter from Itential is used to integrate the Itential
|
|
6
|
+
The Cisco ISE adapter from Itential is used to integrate the Itential Platform with Cisco ISE. With this adapter you have the ability to perform operations such as:
|
|
7
7
|
|
|
8
8
|
- Automates the building and management of Cisco identity services engine resources.
|
|
9
9
|
- Create Network Devices
|
package/TAB2.md
CHANGED
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
## Specific Adapter Information
|
|
12
12
|
### Authentication
|
|
13
13
|
|
|
14
|
-
This document will go through the steps for authenticating the Cisco ISE adapter with Basic Authentication. Properly configuring the properties for an adapter in
|
|
14
|
+
This document will go through the steps for authenticating the Cisco ISE adapter with Basic Authentication. Properly configuring the properties for an adapter in Itential Platform is critical for getting the adapter online. You can read more about adapter authentication <a href="https://docs.itential.com/opensource/docs/authentication" target="_blank">HERE</a>.
|
|
15
15
|
|
|
16
16
|
#### Basic Authentication
|
|
17
17
|
The Cisco ISE adapter requires Basic Authentication. If you change authentication methods, you should change this section accordingly and merge it back into the adapter repository.
|
|
18
18
|
|
|
19
19
|
STEPS
|
|
20
20
|
1. Ensure you have access to a Cisco ISE server and that it is running
|
|
21
|
-
2. Follow the steps in the README.md to import the adapter into
|
|
21
|
+
2. Follow the steps in the README.md to import the adapter into Itential Platform if you have not already done so
|
|
22
22
|
3. Use the properties below for the ```properties.authentication``` field
|
|
23
23
|
```json
|
|
24
24
|
"authentication": {
|
|
@@ -35,8 +35,8 @@ you can leave all of the other properties in the authentication section, they wi
|
|
|
35
35
|
|
|
36
36
|
#### Troubleshooting
|
|
37
37
|
- Make sure you copied over the correct username and password.
|
|
38
|
-
- Turn on debug level logs for the adapter in
|
|
39
|
-
- Turn on auth_logging for the adapter in
|
|
38
|
+
- Turn on debug level logs for the adapter in Itential Platform Admin Essentials.
|
|
39
|
+
- Turn on auth_logging for the adapter in Itential Platform Admin Essentials (adapter properties).
|
|
40
40
|
- Investigate the logs - in particular:
|
|
41
41
|
- The FULL REQUEST log to make sure the proper headers are being sent with the request.
|
|
42
42
|
- The FULL BODY log to make sure the payload is accurate.
|
|
@@ -143,18 +143,22 @@ Sample Properties can be used to help you configure the adapter in the Itential
|
|
|
143
143
|
"enabled": false,
|
|
144
144
|
"accept_invalid_cert": false,
|
|
145
145
|
"ca_file": "",
|
|
146
|
+
"ca_file_content": "",
|
|
146
147
|
"key_file": "",
|
|
147
148
|
"cert_file": "",
|
|
148
149
|
"secure_protocol": "",
|
|
149
150
|
"ciphers": ""
|
|
150
151
|
},
|
|
151
152
|
"mongo": {
|
|
153
|
+
"url": "",
|
|
152
154
|
"host": "",
|
|
153
155
|
"port": 0,
|
|
154
156
|
"database": "",
|
|
157
|
+
"dbAuth": false,
|
|
155
158
|
"username": "",
|
|
156
159
|
"password": "",
|
|
157
160
|
"replSet": "",
|
|
161
|
+
"addSrv": false,
|
|
158
162
|
"db_ssl": {
|
|
159
163
|
"enabled": false,
|
|
160
164
|
"accept_invalid_cert": false,
|
package/TROUBLESHOOT.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
## Troubleshoot
|
|
2
2
|
|
|
3
|
-
Run `npm run troubleshoot` to start the interactive troubleshooting process. The command allows you to verify and update connection, authentication as well as healthcheck configuration. After that it will test these properties by sending HTTP request to the endpoint. If the tests pass, it will persist these changes into
|
|
3
|
+
Run `npm run troubleshoot` to start the interactive troubleshooting process. The command allows you to verify and update connection, authentication as well as healthcheck configuration. After that it will test these properties by sending HTTP request to the endpoint. If the tests pass, it will persist these changes into Itential Platform.
|
|
4
4
|
|
|
5
5
|
You also have the option to run individual commands to perform specific test:
|
|
6
6
|
|