bmc-toolbox/bmclib

Configuring admin users on iLO Gen10

abdrabo opened this issue · 3 comments

At the moment we are using json/user_info endpoint to configure the users on HP servers. Gen10 has a super set of Gen8/9 privileges and seems I can't manage the extra privileges via json/user_info.

GET /json/user_info
{
    "min_password": 8,
    "users": [
        {
            "config_priv": 1,
            "id": 1,
            "login_name": "Administrator",
            "login_priv": 1,
            "remote_cons_priv": 1,
            "reset_priv": 1,
            "user_name": "Administrator",
            "user_priv": 1,
            "virtual_media_priv": 1
        },
...

But we can see on the UI the more privileges (iLO5 2.3/ProLiant BL460c Gen10):
Screenshot 2021-02-09 at 19 09 08

I need the Host BIOS privilege to be able to do some firmware upgrades. I think I will have to reimplement the user configuration for iLO using Redfish as explained in the docs.

@abdrabo we've been considering adding Redfish support through - https://github.com/stmcginnis/gofish
so feel free to roll ahead with this, if not, I'll get round to it,

The approach I suggest here is,

  1. Wrap gofish as a another helper within
    https://github.com/bmc-toolbox/bmclib/tree/master/internal/redfish
    the same way as,
    https://github.com/bmc-toolbox/bmclib/tree/master/internal/httpclient

  2. Include it as a property in the HP ILO provider

    type Ilo struct {

Thanks @joelrebel for your comment!

I am busy with few things at the moment. I will comment here when I start working on it. If you have time and willing to do it, please go ahead.

@abdrabo #214 adds in support for a Redfish provider, if you'd like to take a stab at it,
note: its based on the newer bmclib interface and would require some effort porting the provider methods.