Skip to content

Commit

Permalink
Readme Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
bhillkeyfactor committed Jul 2, 2024
1 parent 2b21ca7 commit 42d8657
Show file tree
Hide file tree
Showing 3 changed files with 247 additions and 78 deletions.
152 changes: 121 additions & 31 deletions integration-manifest.json
Original file line number Diff line number Diff line change
@@ -1,33 +1,123 @@
{
"$schema": "https://keyfactor.github.io/integration-manifest-schema.json",
"integration_type": "orchestrator",
"name": "DataPower Orchestrator",
"status": "production",
"description": "The IBM DataPower Orchestrator allows for the management of certificates in the IBM Datapower platform. Inventory, Add and Remove functions are supported. This integration can add/replace certificates in any domain\\directory combination. ",
"link_github": false,
"update_catalog": false,
"about": {
"orchestrator": {
"UOFramework": "10.1",
"pam_support": true,
"win": {
"supportsCreateStore": false,
"supportsDiscovery": false,
"supportsManagementAdd": true,
"supportsManagementRemove": true,
"supportsReenrollment": false,
"supportsInventory": true,
"platformSupport": "Unused"
},
"linux": {
"supportsCreateStore": false,
"supportsDiscovery": false,
"supportsManagementAdd": true,
"supportsManagementRemove": true,
"supportsReenrollment": false,
"supportsInventory": true,
"platformSupport": "Unused"
}
}
}
"$schema": "https://keyfactor.github.io/integration-manifest-schema.json",
"integration_type": "orchestrator",
"name": "DataPower Orchestrator",
"status": "production",
"update_catalog": true,
"link_github": true,
"support_level": "kf-supported",
"release_dir": "PaloAlto/bin/Release/netcoreapp3.1",
"description": "The IBM DataPower Orchestrator allows for the management of certificates in the IBM Datapower platform. Inventory, Add and Remove functions are supported. This integration can add/replace certificates in any domain\\directory combination.",
"about": {
"orchestrator": {
"UOFramework": "10.1",
"keyfactor_platform_version": "9.10",
"pam_support": true,
"win": {
"supportsCreateStore": false,
"supportsDiscovery": false,
"supportsManagementAdd": true,
"supportsManagementRemove": true,
"supportsReenrollment": false,
"supportsInventory": true,
"platformSupport": "Unused"
},
"linux": {
"supportsCreateStore": false,
"supportsDiscovery": false,
"supportsManagementAdd": false,
"supportsManagementRemove": false,
"supportsReenrollment": false,
"supportsInventory": false,
"platformSupport": "Unused"
},
"store_types": [
{
"Name": "IBM DataPower Universal",
"ShortName": "DataPower",
"Capability": "",
"LocalStore": false,
"SupportedOperations": {
"Add": true,
"Create": false,
"Discovery": false,
"Enrollment": false,
"Remove": true
},
"Properties": [
{
"Name": "ServerUsername",
"DisplayName": "Server Username",
"Type": "Secret",
"DependsOn": null,
"DefaultValue": null,
"Required": false
},
{
"Name": "ServerPassword",
"DisplayName": "Server Password",
"Type": "Secret",
"DependsOn": null,
"DefaultValue": null,
"Required": false
},
{
"Name": "ServerUseSsl",
"DisplayName": "Use SSL",
"Type": "Bool",
"DependsOn": null,
"DefaultValue": "true",
"Required": true
},
{
"Name": "InventoryPageSize",
"DisplayName": "Inventory Page Size",
"Type": "String",
"DependsOn": null,
"DefaultValue": "100",
"Required": true
},
{
"Name": "PublicCertStoreName",
"DisplayName": "Public Cert Store Name",
"Type": "String",
"DependsOn": null,
"DefaultValue": "pubcert",
"Required": true
},
{
"Name": "Protocol",
"DisplayName": "Protocol Name",
"Type": "String",
"DependsOn": null,
"DefaultValue": "https",
"Required": true
},
{
"Name": "InventoryBlackList",
"DisplayName": "Inventory Black List",
"Type": "String",
"DependsOn": null,
"DefaultValue": "",
"Required": false
}
],
"EntryParameters": [
],
"PasswordOptions": {
"EntrySupported": false,
"StoreRequired": false,
"Style": "Default"
},
"PrivateKeyAllowed": "Optional",
"JobProperties": [
],
"ServerRequired": true,
"PowerShell": false,
"BlueprintAllowed": true,
"CustomAliasAllowed": "Required"
}
]
}
}
}
72 changes: 25 additions & 47 deletions readme_source.md
Original file line number Diff line number Diff line change
@@ -1,62 +1,43 @@
**IBM Datapower**

**Overview**

The IBM DataPower Orchestrator allows for the management of certificates in the IBM Datapower platform. Inventory, Add and Remove functions are supported. This integration can add/replace certificates in any domain\directory combination. For example default\pubcert

---

**1) Create the new Certificate store Type for the New DataPower AnyAgent**
## CERT STORE SETUP AND GENERAL PERMISSIONS
<details>
<summary>Cert Store Type Configuration</summary>

In Keyfactor Command create a new Certificate Store Type similar to the one below:

#### STORE TYPE CONFIGURATION
SETTING TAB | CONFIG ELEMENT | DESCRIPTION
------|-----------|------------------
Basic |Name |Descriptive name for the Store Type. IBM Data Power Universal can be used.
Basic |Short Name |The short name that identifies the registered functionality of the orchestrator. Must be DataPower.
Basic |Custom Capability|Unchecked
Basic |Short Name |The short name that identifies the registered functionality of the orchestrator. Must be DataPower
Basic |Custom Capability|You can leave this unchecked and use the default.
Basic |Job Types |Inventory, Add, and Remove are the supported job types.
Basic |Needs Server |Must be checked
Basic |Blueprint Allowed |checked
Basic |Blueprint Allowed |Checked
Basic |Requires Store Password |Determines if a store password is required when configuring an individual store. This must be unchecked.
Basic |Supports Entry Password |Determined if an individual entry within a store can have a password. This must be unchecked.
Advanced |Store Path Type| Determines how the user will enter the store path when setting up the cert store. Freeform
Advanced |Supports Custom Alias |Determines if an individual entry within a store can have a custom Alias. Optional (if left blank, alias will be a GUID)
Advanced |Supports Custom Alias |Determines if an individual entry within a store can have a custom Alias. This must be Required
Advanced |Private Key Handling |Determines how the orchestrator deals with private keys. Optional
Advanced |PFX Password Style |Determines password style for the PFX Password. Default
Custom Fields|Inventory Page Size|Name:InventoryPageSize Display Name:Inventory Page Size Type:String Default Value:100 Required:True. This determines the page size during the inventory calls. (100 should be fine)
Custom Fields|Public Cert Store Name|Name:PublicCertStoreName Display Name:Public Cert Store Name:String Default Value:pubcert Required:True. This probably will remain pubcert unless someone changed the default name in DataPower.
Custom Fields|Protocol|Name:Protocol Display Name:Protocol Name:String Default Value:https Required:True. This should always be https in production, may need to change in test to http.
Custom Fields|Inventory Black List|Name:InventoryBlackList Display Name:Inventory Black List Name:String Default Value:Leave Blank Required:False. Comma seperated list of alias values you do not want to inventory from DataPower.
Custom Fields|Server Username|Api UserName for DataPower
Custom Fields|Server Password|Api Password for UserName Described Above
Custom Fields|Use SSL|Set this to true
Entry Parameters|N/A| There are no Entry Parameters

![image.png](/images/CertStoreType-Basic.gif)
#### CUSTOM FIELDS FOR STORE TYPE
NAME | DISPLAY NAME | TYPE | DEFAULT VALUE | DEPENDS ON | REQUIRED |DESCRIPTION
--------------|-----------------|-------|--------------|-------------|---------|--------------
ServerUsername|Server Username |Secret | |Unchecked |Yes |Palo Alto Api User Name
ServerPassword|Server Password |Secret | |Unchecked |Yes |Palo Alto Api Password
ServerUseSsl |Use SSL |Bool |True |Unchecked |Yes |Requires SSL Connection
InventoryPageSize |Inventory Page Size |String |100|Unchecked|Yes|This will determine the paging level during the inventory process.
PublicCertStoreName |Public Cert Store Name |String |pubcert|Unchecked|Yes|Name of the public cert store location on DataPower.
Protocol |Protocol Name |String |https|Unchecked|Yes|Prototcol should always be https in production. Might need http in test environment.
InventoryBlackList |Inventory Black List |String | |Unchecked|No|Comma seperated list of alias values you do not want to inventory from DataPower

![image.png](/images/CertStoreType-Advanced.gif)
#### ENTRY PARAMETERS FOR STORE TYPE
There are no entry parameters used in this integration.

![image.png](/images/CertStoreType-CustomFields.gif)


#### STORE CONFIGURATION
CONFIG ELEMENT |DESCRIPTION
----------------|---------------
Category |The type of certificate store to be configured. Select category based on the display name configured above "IBM Data Power Universal".
Container |This is a logical grouping of like stores. This configuration is optional and does not impact the functionality of the store.
Client Machine | The server and port the DataPower API runs on. This is typically port 5554 for the API.
Store Path |This will the domain\path combination to enroll and inventory to. If it is the default domain just put the path.
Inventory Page Size|This determines the page size during the inventory calls. (100 should be fine).
Public Cert Store Name| This probably will remain pubcert unless someone changed the default name in DataPower.
Protocol| This should always be https in production, may need to change in test to http.
Inventory Black List| Comma seperated list of alias values you do not want to inventory from DataPower.
Orchestrator |This is the orchestrator server registered with the appropriate capabilities to manage this certificate store type.
Inventory Schedule |The interval that the system will use to report on what certificates are currently in the store.
Use SSL |This should be checked.
User |The Data Power user that has access to the API and enroll and inventory functions in DataPower.
Password |Password for the user mentioned above.

![image.png](/images/CertStore.gif)
## Test Cases
<details>
<summary>Data Power Test Cases</summary>

***

Expand Down Expand Up @@ -95,7 +76,4 @@ Case Number|Case Name|Case Description|Overwrite Flag|Alias Name|Expected Result
4c|Remove Private Key and Cert From *testdomain\cert* path with PAM Credentials|Remove Private Key and Cert From *testdomain\cert* path using credentials stored in a PAM Provider|False|cryptoobjs|Crypto Certificate, Crypto Key and Pem/Crt are removed from Data Power *testdomain\cert* path|True

***

### License
[Apache](https://apache.org/licenses/LICENSE-2.0)

</details>
Loading

0 comments on commit 42d8657

Please sign in to comment.