@itentialopensource/adapter-hashicorp_vault
Version:
This adapter integrates with system described as: hashicorp_vault.
922 lines (909 loc) • 249 kB
Markdown
## Using this Adapter
The `adapter.js` file contains the calls the adapter makes available to the rest of the Itential Platform. The API detailed for these calls should be available through JSDOC. The following is a brief summary of the calls.
### Generic Adapter Calls
These are adapter methods that IAP or you might use. There are some other methods not shown here that might be used for internal adapter functionality.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">connect()</td>
<td style="padding:15px">This call is run when the Adapter is first loaded by he Itential Platform. It validates the properties have been provided correctly.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">healthCheck(callback)</td>
<td style="padding:15px">This call ensures that the adapter can communicate with Adapter for HashiCorp Vault. The actual call that is used is defined in the adapter properties and .system entities action.json file.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">refreshProperties(properties)</td>
<td style="padding:15px">This call provides the adapter the ability to accept property changes without having to restart the adapter.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">encryptProperty(property, technique, callback)</td>
<td style="padding:15px">This call will take the provided property and technique, and return the property encrypted with the technique. This allows the property to be used in the adapterProps section for the credential password so that the password does not have to be in clear text. The adapter will decrypt the property as needed for communications with Adapter for HashiCorp Vault.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, callback)</td>
<td style="padding:15px">This call provides the ability to update the adapter configuration from IAP - includes actions, schema, mockdata and other configurations.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapSuspendAdapter(mode, callback)</td>
<td style="padding:15px">This call provides the ability to suspend the adapter and either have requests rejected or put into a queue to be processed after the adapter is resumed.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapUnsuspendAdapter(callback)</td>
<td style="padding:15px">This call provides the ability to resume a suspended adapter. Any requests in queue will be processed before new requests.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapGetAdapterQueue(callback)</td>
<td style="padding:15px">This call will return the requests that are waiting in the queue if throttling is enabled.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapFindAdapterPath(apiPath, callback)</td>
<td style="padding:15px">This call provides the ability to see if a particular API path is supported by the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapTroubleshootAdapter(props, persistFlag, adapter, callback)</td>
<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>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterHealthcheck(adapter, callback)</td>
<td style="padding:15px">This call will return the results of a healthcheck.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterConnectivity(callback)</td>
<td style="padding:15px">This call will return the results of a connectivity check.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterBasicGet(callback)</td>
<td style="padding:15px">This call will return the results of running basic get API calls.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapMoveAdapterEntitiesToDB(callback)</td>
<td style="padding:15px">This call will push the adapter configuration from the entities directory into the Adapter or IAP Database.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapDeactivateTasks(tasks, callback)</td>
<td style="padding:15px">This call provides the ability to remove tasks from the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapActivateTasks(tasks, callback)</td>
<td style="padding:15px">This call provides the ability to add deactivated tasks back into the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapExpandedGenericAdapterRequest(metadata, uriPath, restMethod, pathVars, queryData, requestBody, addlHeaders, callback)</td>
<td style="padding:15px">This is an expanded Generic Call. The metadata object allows us to provide many new capabilities within the generic request.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">genericAdapterRequest(uriPath, restMethod, queryData, requestBody, addlHeaders, callback)</td>
<td style="padding:15px">This call allows you to provide the path to have the adapter call. It is an easy way to incorporate paths that have not been built into the adapter yet.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">genericAdapterRequestNoBasePath(uriPath, restMethod, queryData, requestBody, addlHeaders, callback)</td>
<td style="padding:15px">This call is the same as the genericAdapterRequest only it does not add a base_path or version to the call.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterLint(callback)</td>
<td style="padding:15px">Runs lint on the addapter and provides the information back.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRunAdapterTests(callback)</td>
<td style="padding:15px">Runs baseunit and unit tests on the adapter and provides the information back.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapGetAdapterInventory(callback)</td>
<td style="padding:15px">This call provides some inventory related information about the adapter.</td>
<td style="padding:15px">Yes</td>
</tr>
</table>
<br>
### Adapter Cache Calls
These are adapter methods that are used for adapter caching. If configured, the adapter will cache based on the interval provided. However, you can force a population of the cache manually as well.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">iapPopulateEntityCache(entityTypes, callback)</td>
<td style="padding:15px">This call populates the adapter cache.</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">iapRetrieveEntitiesCache(entityType, options, callback)</td>
<td style="padding:15px">This call retrieves the specific items from the adapter cache.</td>
<td style="padding:15px">Yes</td>
</tr>
</table>
<br>
### Adapter Broker Calls
These are adapter methods that are used to integrate to IAP Brokers. This adapter currently supports the following broker calls.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">hasEntities(entityType, entityList, callback)</td>
<td style="padding:15px">This call is utilized by the IAP Device Broker to determine if the adapter has a specific entity and item of the entity.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">getDevice(deviceName, callback)</td>
<td style="padding:15px">This call returns the details of the requested device.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">getDevicesFiltered(options, callback)</td>
<td style="padding:15px">This call returns the list of devices that match the criteria provided in the options filter.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">isAlive(deviceName, callback)</td>
<td style="padding:15px">This call returns whether the device status is active</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">getConfig(deviceName, format, callback)</td>
<td style="padding:15px">This call returns the configuration for the selected device.</td>
<td style="padding:15px">No</td>
</tr>
<tr>
<td style="padding:15px">iapGetDeviceCount(callback)</td>
<td style="padding:15px">This call returns the count of devices.</td>
<td style="padding:15px">No</td>
</tr>
</table>
<br>
### Specific Adapter Calls
Specific adapter calls are built based on the API of the HashiCorpVault. The Adapter Builder creates the proper method comments for generating JS-DOC for the adapter. This is the best way to get information on the calls.
<table border="1" class="bordered-table">
<tr>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Path</span></th>
<th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th>
</tr>
<tr>
<td style="padding:15px">getKvSecretConfig(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the current configuration for the secrets backend at the given path</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postKvSecretConfig(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Configure backend level settings that are applied to every key in the key-value store.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getKvSecretDataPath(namespace, secretMount, pathParam, callback)</td>
<td style="padding:15px">Retrieves the secret at the specified location.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/data/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postKvSecretDataPath(namespace, secretMount, pathParam, body, callback)</td>
<td style="padding:15px">Creates a new version of a secret at the specified location</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/data/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteKvSecretDataPath(namespace, secretMount, pathParam, callback)</td>
<td style="padding:15px">Issues a soft delete of the secret's latest version at the specified location.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/data/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postKvSecretDeletePath(namespace, secretMount, pathParam, body, callback)</td>
<td style="padding:15px">Issues a soft delete of the specified versions of the secret</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/delete/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postKvSecretDestroyPath(namespace, secretMount, pathParam, body, callback)</td>
<td style="padding:15px">Permanently removes the specified version data for the provided key and version numbers from the secret store.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/destroy/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getKvSecretMetadataPath(namespace, secretMount, pathParam, list, callback)</td>
<td style="padding:15px">Retrieves the metadata and versions for the secret at the specified path.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/metadata/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postKvSecretMetadataPath(namespace, secretMount, pathParam, body, callback)</td>
<td style="padding:15px">Creates or updates the metadata of a secret at the specified location.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/metadata/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteKvSecretMetadataPath(namespace, secretMount, pathParam, callback)</td>
<td style="padding:15px">Permanently deletes the key metadata and all version data for the specified key.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/metadata/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postKvSecretUndeletePath(namespace, secretMount, pathParam, body, callback)</td>
<td style="padding:15px">Undeletes the data for the provided version and path in the secret store.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/undelete/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getCubbyholeSecretPath(namespace, secretMount, pathParam, list, callback)</td>
<td style="padding:15px">Retrieves the secret at the specified location.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postCubbyholeSecretPath(namespace, secretMount, pathParam, callback)</td>
<td style="padding:15px">Store a secret at the specified location.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteCubbyholeSecretPath(namespace, secretMount, pathParam, callback)</td>
<td style="padding:15px">Deletes the secret at the specified location.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCa(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the CA certificate in raw DER-encoded form</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/ca?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCaPem(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the CA certificate in raw PEM form</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/ca/pem?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCaChain(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the CA certificate chain, including the CA in PEM format.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/ca_chain?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCertCaChain(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the CA certificate chain, including the CA in PEM format.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/cert/ca_chain?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCertCrl(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves one of a selection of certificates.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/cert/crl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCertSerial(namespace, secretMount, serial, callback)</td>
<td style="padding:15px">Retrieves one of a selection of certificates.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/cert/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCerts(namespace, secretMount, list, callback)</td>
<td style="padding:15px">Returns the current certificates</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/certs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretConfigCa(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Set the CA information for the backend via a PEM file containing the CA certificate and its private key, concatenated.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config/ca?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretConfigCrl(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the duration for which the generated CRL should be marked valid.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config/crl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretConfigCrl(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Sets the duration for which the generated CRL should be marked valid.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config/crl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretConfigUrls(namespace, secretMount, callback)</td>
<td style="padding:15px">Fetches the URLs to be encoded in generated certificates.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config/urls?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretConfigUrls(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Sets the issuing certificate endpoints, CRL distribution points, and OCSP server endpoints that will be encoded into issued certificates.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/config/urls?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCrl(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the current CRL in raw DER-encoded form.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/crl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCrlPem(namespace, secretMount, callback)</td>
<td style="padding:15px">Retrieves the current CRL in raw PEM form.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/crl/pem?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretCrlRotate(namespace, secretMount, callback)</td>
<td style="padding:15px">Forces a rotation of the CRL.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/crl/rotate?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretGenerateIntermediate(namespace, secretMount, exported, body, callback)</td>
<td style="padding:15px">Generates a new private key and a CSR for signing.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/intermediate/generate/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretSetSignedIntermediate(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Allows submitting the signed CA certificate corresponding to a private key generated via /pki/intermediate/generate.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/intermediate/set-signed?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretIssueCert(namespace, secretMount, role, body, callback)</td>
<td style="padding:15px">Generates a new set of credentials (private key and certificate) based on the role named in the endpoint.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/issue/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretRevokeCert(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Revoke a certificate by serial number.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/revoke?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">listPkiSecretRoles(namespace, secretMount, list, callback)</td>
<td style="padding:15px">List the existing roles in this backend</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/roles?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getPkiSecretRolesName(namespace, secretMount, name, callback)</td>
<td style="padding:15px">Queries the role definition.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/roles/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretRolesName(namespace, secretMount, name, body, callback)</td>
<td style="padding:15px">Creates or updates the role definition.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/roles/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deletePkiSecretRolesName(namespace, secretMount, name, callback)</td>
<td style="padding:15px">Deletes the role definition.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/roles/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deletePkiSecretRoot(namespace, secretMount, callback)</td>
<td style="padding:15px">Deletes the root CA key to allow a new one to be generated.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/root?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretGenerateRoot(namespace, secretMount, exported, body, callback)</td>
<td style="padding:15px">Generates a new self-signed CA certificate and private key.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/root/generate/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretSignIntermediateRoot(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Issue an intermediate CA certificate based on the provided CSR.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/root/sign-intermediate?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretRootSignSelfIssued(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Signs another CA's self-issued certificate.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/root/sign-self-issued?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretSignVerbatim(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Signs a new certificate based upon the provided CSR.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/sign-verbatim?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretSignVerbatimName(namespace, secretMount, role, body, callback)</td>
<td style="padding:15px">Signs a new certificate based upon the provided CSR. Values are taken verbatim from the CSR.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/sign-verbatim/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretSignRole(namespace, secretMount, role, body, callback)</td>
<td style="padding:15px">Sign certificates using a certain role with the provided details.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/sign/{pathv3}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postPkiSecretTidy(namespace, secretMount, body, callback)</td>
<td style="padding:15px">Tidy up the backend by removing expired certificates, revocation information,
or both.</td>
<td style="padding:15px">{base_path}/{version}/{pathv1}/{pathv2}/tidy?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleLogin(body, callback)</td>
<td style="padding:15px">Issue a token based on the credentials supplied</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/login?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRole(list, callback)</td>
<td style="padding:15px">Lists all the roles registered with the backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleName(roleName, callback)</td>
<td style="padding:15px">Register an role with the backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleName(roleName, body, callback)</td>
<td style="padding:15px">Register an role with the backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleName(roleName, callback)</td>
<td style="padding:15px">Register an role with the backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameBindSecretId(roleName, callback)</td>
<td style="padding:15px">Impose secret_id to be presented during login using this role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/bind-secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameBindSecretId(roleName, body, callback)</td>
<td style="padding:15px">Impose secret_id to be presented during login using this role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/bind-secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameBindSecretId(roleName, callback)</td>
<td style="padding:15px">Impose secret_id to be presented during login using this role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/bind-secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameBoundCidrList(roleName, callback)</td>
<td style="padding:15px">Deprecated: Comma separated list of CIDR blocks, if set, specifies blocks of IP
addresses which can</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/bound-cidr-list?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameBoundCidrList(roleName, body, callback)</td>
<td style="padding:15px">Deprecated: Comma separated list of CIDR blocks, if set, specifies blocks of IP
addresses which can</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/bound-cidr-list?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameBoundCidrList(roleName, callback)</td>
<td style="padding:15px">Deprecated: Comma separated list of CIDR blocks, if set, specifies blocks of IP
addresses which can</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/bound-cidr-list?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameCustomSecretId(roleName, body, callback)</td>
<td style="padding:15px">Assign a SecretID of choice against the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/custom-secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameLocalSecretIds(roleName, callback)</td>
<td style="padding:15px">Enables cluster local secret IDs</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/local-secret-ids?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNamePeriod(roleName, callback)</td>
<td style="padding:15px">Updates the value of 'period' on the role</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/period?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNamePeriod(roleName, body, callback)</td>
<td style="padding:15px">Updates the value of 'period' on the role</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/period?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNamePeriod(roleName, callback)</td>
<td style="padding:15px">Updates the value of 'period' on the role</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/period?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNamePolicies(roleName, callback)</td>
<td style="padding:15px">Policies of the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/policies?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNamePolicies(roleName, body, callback)</td>
<td style="padding:15px">Policies of the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/policies?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNamePolicies(roleName, callback)</td>
<td style="padding:15px">Policies of the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/policies?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameRoleId(roleName, callback)</td>
<td style="padding:15px">Returns the 'role_id' of the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/role-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameRoleId(roleName, body, callback)</td>
<td style="padding:15px">Returns the 'role_id' of the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/role-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameSecretId(roleName, list, callback)</td>
<td style="padding:15px">Generate a SecretID against this role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretId(roleName, body, callback)</td>
<td style="padding:15px">Generate a SecretID against this role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdAccessorDestroy(roleName, body, callback)</td>
<td style="padding:15px">postAuthApproleRoleRole_nameSecretIdAccessorDestroy</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-accessor/destroy?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameSecretIdAccessorDestroy(roleName, callback)</td>
<td style="padding:15px">deleteAuthApproleRoleRole_nameSecretIdAccessorDestroy</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-accessor/destroy?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdAccessorLookup(roleName, body, callback)</td>
<td style="padding:15px">postAuthApproleRoleRole_nameSecretIdAccessorLookup</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-accessor/lookup?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameSecretIdBoundCidrs(roleName, callback)</td>
<td style="padding:15px">Comma separated list of CIDR blocks, if set, specifies blocks of IP
addresses which can perform the</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-bound-cidrs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdBoundCidrs(roleName, body, callback)</td>
<td style="padding:15px">Comma separated list of CIDR blocks, if set, specifies blocks of IP
addresses which can perform the</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-bound-cidrs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameSecretIdBoundCidrs(roleName, callback)</td>
<td style="padding:15px">Comma separated list of CIDR blocks, if set, specifies blocks of IP
addresses which can perform the</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-bound-cidrs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameSecretIdNumUses(roleName, callback)</td>
<td style="padding:15px">Use limit of the SecretID generated against the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-num-uses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdNumUses(roleName, body, callback)</td>
<td style="padding:15px">Use limit of the SecretID generated against the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-num-uses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameSecretIdNumUses(roleName, callback)</td>
<td style="padding:15px">Use limit of the SecretID generated against the role.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-num-uses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameSecretIdTtl(roleName, callback)</td>
<td style="padding:15px">Duration in seconds, representing the lifetime of the SecretIDs
that are generated against the role</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdTtl(roleName, body, callback)</td>
<td style="padding:15px">Duration in seconds, representing the lifetime of the SecretIDs
that are generated against the role</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameSecretIdTtl(roleName, callback)</td>
<td style="padding:15px">Duration in seconds, representing the lifetime of the SecretIDs
that are generated against the role</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdDestroy(roleName, body, callback)</td>
<td style="padding:15px">Invalidate an issued secret_id</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id/destroy?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameSecretIdDestroy(roleName, callback)</td>
<td style="padding:15px">Invalidate an issued secret_id</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id/destroy?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameSecretIdLookup(roleName, body, callback)</td>
<td style="padding:15px">Read the properties of an issued secret_id</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/secret-id/lookup?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameTokenBoundCidrs(roleName, callback)</td>
<td style="padding:15px">Comma separated string or list of CIDR blocks. If set, specifies the blocks of
IP addresses which c</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-bound-cidrs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameTokenBoundCidrs(roleName, body, callback)</td>
<td style="padding:15px">Comma separated string or list of CIDR blocks. If set, specifies the blocks of
IP addresses which c</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-bound-cidrs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameTokenBoundCidrs(roleName, callback)</td>
<td style="padding:15px">Comma separated string or list of CIDR blocks. If set, specifies the blocks of
IP addresses which c</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-bound-cidrs?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameTokenMaxTtl(roleName, callback)</td>
<td style="padding:15px">Duration in seconds, the maximum lifetime of the tokens issued by using
the SecretIDs that were gen</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-max-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameTokenMaxTtl(roleName, body, callback)</td>
<td style="padding:15px">Duration in seconds, the maximum lifetime of the tokens issued by using
the SecretIDs that were gen</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-max-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameTokenMaxTtl(roleName, callback)</td>
<td style="padding:15px">Duration in seconds, the maximum lifetime of the tokens issued by using
the SecretIDs that were gen</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-max-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameTokenNumUses(roleName, callback)</td>
<td style="padding:15px">Number of times issued tokens can be used</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-num-uses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameTokenNumUses(roleName, body, callback)</td>
<td style="padding:15px">Number of times issued tokens can be used</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-num-uses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameTokenNumUses(roleName, callback)</td>
<td style="padding:15px">Number of times issued tokens can be used</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-num-uses?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthApproleRoleRoleNameTokenTtl(roleName, callback)</td>
<td style="padding:15px">Duration in seconds, the lifetime of the token issued by using the SecretID that
is generated again</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleRoleRoleNameTokenTtl(roleName, body, callback)</td>
<td style="padding:15px">Duration in seconds, the lifetime of the token issued by using the SecretID that
is generated again</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthApproleRoleRoleNameTokenTtl(roleName, callback)</td>
<td style="padding:15px">Duration in seconds, the lifetime of the token issued by using the SecretID that
is generated again</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/role/{pathv1}/token-ttl?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthApproleTidySecretId(callback)</td>
<td style="padding:15px">Trigger the clean-up of expired SecretID entries.</td>
<td style="padding:15px">{base_path}/{version}/auth/approle/tidy/secret-id?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapConfig(callback)</td>
<td style="padding:15px">Configure the LDAP server to connect to, along with its options.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapConfig(body, callback)</td>
<td style="padding:15px">Configure the LDAP server to connect to, along with its options.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapDuoAccess(body, callback)</td>
<td style="padding:15px">Configure the access keys and host for Duo API connections.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/duo/access?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapDuoConfig(callback)</td>
<td style="padding:15px">Configure Duo second factor behavior.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/duo/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapDuoConfig(body, callback)</td>
<td style="padding:15px">Configure Duo second factor behavior.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/duo/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapGroups(list, callback)</td>
<td style="padding:15px">Manage additional groups for users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/groups?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapGroupsName(name, callback)</td>
<td style="padding:15px">Manage additional groups for users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/groups/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapGroupsName(name, body, callback)</td>
<td style="padding:15px">Manage additional groups for users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/groups/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthLdapGroupsName(name, callback)</td>
<td style="padding:15px">Manage additional groups for users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/groups/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapLoginUsername(username, body, callback)</td>
<td style="padding:15px">Log in with a username and password.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/login/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapMfaConfig(callback)</td>
<td style="padding:15px">Configure multi factor backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/mfa_config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapMfaConfig(body, callback)</td>
<td style="padding:15px">Configure multi factor backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/mfa_config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapUsers(list, callback)</td>
<td style="padding:15px">Manage users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/users?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthLdapUsersName(name, callback)</td>
<td style="padding:15px">Manage users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/users/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthLdapUsersName(name, body, callback)</td>
<td style="padding:15px">Manage users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/users/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">deleteAuthLdapUsersName(name, callback)</td>
<td style="padding:15px">Manage users allowed to authenticate.</td>
<td style="padding:15px">{base_path}/{version}/auth/ldap/users/{pathv1}?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthRancherConfig(callback)</td>
<td style="padding:15px">Configures the JWT Public Key and Kubernetes API information.</td>
<td style="padding:15px">{base_path}/{version}/auth/rancher/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthRancherConfig(body, callback)</td>
<td style="padding:15px">Configures the JWT Public Key and Kubernetes API information.</td>
<td style="padding:15px">{base_path}/{version}/auth/rancher/config?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">postAuthRancherLogin(body, callback)</td>
<td style="padding:15px">Authenticates Kubernetes service accounts with Vault.</td>
<td style="padding:15px">{base_path}/{version}/auth/rancher/login?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthRancherRole(list, callback)</td>
<td style="padding:15px">Lists all the roles registered with the backend.</td>
<td style="padding:15px">{base_path}/{version}/auth/rancher/role?{query}</td>
<td style="padding:15px">Yes</td>
</tr>
<tr>
<td style="padding:15px">getAuthRancherRoleName(name, callback)</td>
<td style="padding:15px">Register an role with t