+ + + Support + + · + + Installation + + · + + License + + · + + Related Integrations + +
-Certificate inventory and management for Integrated Dell Remote Access Controller appliances +## Overview -#### Integration status: Production - Ready for use in production environments. +The Integrated Dell Remote Access Controller (iDRAC) Orchestrator Extension supports the following use cases: -## About the Keyfactor Universal Orchestrator Extension +- Inventorying the iDRAC instance's server certificate and importing it into Keyfactor Command for management +- Adding or Replacing an existing or newly enrolled certificate and private key to an existing iDRAC instance. To replace an existing server certificate, the Ovewrite flag in Keyfactor Command must be selected. -This repository contains a Universal Orchestrator Extension which is a plugin to the Keyfactor Universal Orchestrator. Within the Keyfactor Platform, Orchestrators are used to manage “certificate stores” — collections of certificates and roots of trust that are found within and used by various applications. +Use cases NOT supported by the iDRAC Orchestrator Extension: -The Universal Orchestrator is part of the Keyfactor software distribution and is available via the Keyfactor customer portal. For general instructions on installing Extensions, see the “Keyfactor Command Orchestrator Installation and Configuration Guide” section of the Keyfactor documentation. For configuration details of this specific Extension see below in this readme. +- Removing a server certificate from an iDRAC instance. +- Inventorying or Managing any other certificate type on an iDRAC intance. -The Universal Orchestrator is the successor to the Windows Orchestrator. This Orchestrator Extension plugin only works with the Universal Orchestrator and does not work with the Windows Orchestrator. +Special Notes: +* When adding or replacing the server certificate, there will be a few minute delay as the iDRAC instance will restart. As a result, it may take a few minutes before the new certificate is reflected in subsequent Inventory jobs. +* When replacing an existing server certificate, the Overwrite checkbox must be selected/checked. When this checkbox is selected, Keyfactor Command may require you to enter an alias. This alias is not used by the orchestrator extension, so just enter any value. -## Support for Dell iDRAC Orchestrator -Dell iDRAC Orchestrator is supported by Keyfactor for Keyfactor customers. If you have a support issue, please open a support ticket via the Keyfactor Support Portal at https://support.keyfactor.com -###### To report a problem or suggest a new feature, use the **[Issues](../../issues)** tab. If you want to contribute actual bug fixes or proposed enhancements, use the **[Pull requests](../../pulls)** tab. +## Compatibility ---- +This integration is compatible with Keyfactor Universal Orchestrator version 10.4 and later. +## Support +The Dell iDRAC Universal Orchestrator extension is supported by Keyfactor for Keyfactor customers. If you have a support issue, please open a support ticket with your Keyfactor representative. If you have a support issue, please open a support ticket via the Keyfactor Support Portal at https://support.keyfactor.com. + +> To report a problem or suggest a new feature, use the **[Issues](../../issues)** tab. If you want to contribute actual bug fixes or proposed enhancements, use the **[Pull requests](../../pulls)** tab. ---- +## Requirements & Prerequisites +Before installing the Dell iDRAC Universal Orchestrator extension, we recommend that you install [kfutil](https://github.com/Keyfactor/kfutil). Kfutil is a command-line tool that simplifies the process of creating store types, installing extensions, and instantiating certificate stores in Keyfactor Command. -## Keyfactor Version Supported +1. The Orchestrator must run on a Windows Server machine with the [Racadm CLI utility](https://www.dell.com/support/home/en-us/drivers/driversdetails?driverid=8gmf6) installed, configured to reach the target iDRAC instance. The Orchestrator must have read and write access to the folder where racadm.exe is installed. +2. A user id must be set up in iDRAC with minimum privileges of "Configure". This will be used by the Racadm utility to manage the store. -The minimum version of the Keyfactor Universal Orchestrator Framework needed to run this version of the extension is 10.4 -## Platform Specific Notes -The Keyfactor Universal Orchestrator may be installed on either Windows or Linux based platforms. The certificate operations supported by a capability may vary based what platform the capability is installed on. The table below indicates what capabilities are supported based on which platform the encompassing Universal Orchestrator is running. -| Operation | Win | Linux | -|-----|-----|------| -|Supports Management Add|✓ | | -|Supports Management Remove| | | -|Supports Create Store| | | -|Supports Discovery| | | -|Supports Reenrollment| | | -|Supports Inventory|✓ | | +## Create the iDRAC Certificate Store Type +To use the Dell iDRAC Universal Orchestrator extension, you **must** create the iDRAC Certificate Store Type. This only needs to happen _once_ per Keyfactor Command instance. -## PAM Integration -This orchestrator extension has the ability to connect to a variety of supported PAM providers to allow for the retrieval of various client hosted secrets right from the orchestrator server itself. This eliminates the need to set up the PAM integration on Keyfactor Command which may be in an environment that the client does not want to have access to their PAM provider. -The secrets that this orchestrator extension supports for use with a PAM Provider are: +* **Create iDRAC using kfutil**: -|Name|Description| -|----|-----------| -|ServerUsername|The user id that will be used to authenticate into the Dell Remote Access Controller| -|ServerPassword|The password that will be used to authenticate into the Dell Remote Access Controller| - + ```shell + # iDRAC + kfutil store-types create iDRAC + ``` -It is not necessary to use a PAM Provider for all of the secrets available above. If a PAM Provider should not be used, simply enter in the actual value to be used, as normal. +* **Create iDRAC manually in the Command UI**: ++ #### Basic Tab + | Attribute | Value | Description | + | --------- | ----- | ----- | + | Name | iDRAC | Display name for the store type (may be customized) | + | Short Name | iDRAC | Short display name for the store type | + | Capability | iDRAC | Store type name orchestrator will register with. Check the box to allow entry of value | + | Supports Add | ✅ Checked | Check the box. Indicates that the Store Type supports Management Add | + | Supports Remove | 🔲 Unchecked | Indicates that the Store Type supports Management Remove | + | Supports Discovery | 🔲 Unchecked | Indicates that the Store Type supports Discovery | + | Supports Reenrollment | 🔲 Unchecked | Indicates that the Store Type supports Reenrollment | + | Supports Create | 🔲 Unchecked | Indicates that the Store Type supports store creation | + | Needs Server | ✅ Checked | Determines if a target server name is required when creating store | + | Blueprint Allowed | ✅ Checked | Determines if store type may be included in an Orchestrator blueprint | + | Uses PowerShell | 🔲 Unchecked | Determines if underlying implementation is PowerShell | + | Requires Store Password | 🔲 Unchecked | Enables users to optionally specify a store password when defining a Certificate Store. | + | Supports Entry Password | 🔲 Unchecked | Determines if an individual entry within a store can have a password. | + The Basic tab should look like this: +  -### Example PAM Provider Setup + #### Advanced Tab + | Attribute | Value | Description | + | --------- | ----- | ----- | + | Supports Custom Alias | Forbidden | Determines if an individual entry within a store can have a custom Alias. | + | Private Key Handling | Required | This determines if Keyfactor can send the private key associated with a certificate to the store. Required because IIS certificates without private keys would be invalid. | + | PFX Password Style | Default | 'Default' - PFX password is randomly generated, 'Custom' - PFX password may be specified when the enrollment job is created (Requires the Allow Custom Password application setting to be enabled.) | -To use a PAM Provider to resolve a field, in this example the __Server Password__ will be resolved by the `Hashicorp-Vault` provider, first install the PAM Provider extension from the [Keyfactor Integration Catalog](https://keyfactor.github.io/integrations-catalog/content/pam) on the Universal Orchestrator. + The Advanced tab should look like this: -Next, complete configuration of the PAM Provider on the UO by editing the `manifest.json` of the __PAM Provider__ (e.g. located at extensions/Hashicorp-Vault/manifest.json). The "initialization" parameters need to be entered here: +  -~~~ json - "Keyfactor:PAMProviders:Hashicorp-Vault:InitializationInfo": { - "Host": "http://127.0.0.1:8200", - "Path": "v1/secret/data", - "Token": "xxxxxx" - } -~~~ + #### Custom Fields Tab + Custom fields operate at the certificate store level and are used to control how the orchestrator connects to the remote target server containing the certificate store to be managed. The following custom fields should be added to the store type: -After these values are entered, the Orchestrator needs to be restarted to pick up the configuration. Now the PAM Provider can be used on other Orchestrator Extensions. + | Name | Display Name | Description | Type | Default Value/Options | Required | + | ---- | ------------ | ---- | --------------------- | -------- | ----------- | + | ServerUsername | Server Username | The user ID (or, if using a PAM provider, the key pointing to the user ID) to log into the iDRAC instance being managed. | Secret | | 🔲 Unchecked | + | ServerPassword | Server Password | The password (or, if using a PAM provider, the key pointing to the password) for the user ID above. | Secret | | 🔲 Unchecked | -### Use the PAM Provider -With the PAM Provider configured as an extenion on the UO, a `json` object can be passed instead of an actual value to resolve the field with a PAM Provider. Consult the [Keyfactor Integration Catalog](https://keyfactor.github.io/integrations-catalog/content/pam) for the specific format of the `json` object. + The Custom Fields tab should look like this: -To have the __Server Password__ field resolved by the `Hashicorp-Vault` provider, the corresponding `json` object from the `Hashicorp-Vault` extension needs to be copied and filed in with the correct information: +  -~~~ json -{"Secret":"my-kv-secret","Key":"myServerPassword"} -~~~ -This text would be entered in as the value for the __Server Password__, instead of entering in the actual password. The Orchestrator will attempt to use the PAM Provider to retrieve the __Server Password__. If PAM should not be used, just directly enter in the value for the field. -
-