Configuration of shared IPMI credentials

Registered by Gergely Matefi

Ironic reference driver uses an out of band management channel for power management, node restart and later for low level node monitoring purposes. For channel establishment, Ironic conductor shall pass IPMI authentication procedure using a pre-shared secret. Currently, security credentials used for authentication are configured in Ironic Database via the RESTful API, and activation of the credentials on the BMC side shall be performed via an external manner.

This blueprint suggests a method to generate, share and configure BMC secret without manual intervention in the following scenarios:
1 Generation and sharing a secret on automatic node discovery
2 Generation and sharing a secret on explicit REST API requests
3 Extension of the procedures above when using an external secret store e.g. Barbican is used

For this purpose:
- Ironic Agent is to be extended with a new API and new service to update BMC user credentials via in-band method, not requiring authentication
- Ironic API is extended with a new vendor passthrough method for setting new BMC password
- IPMI/PXE driver is updated to generate and store secret on node discovery and on explicit API, and to send it to the Ironic Agent
- IPMI/PXE driver is updated to optionally use an external secret storage (Barbican)

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Gergely Matefi
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

We're moving from using blueprints to track features to RFE bugs. I've filed one for your change (see related bugs section). Please track further work there using Closes-Bug, Partial-Bug or Related-Bug in commit messages and use this newly created RFE bug.
//vdrok 2015-12-16

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.