Role-Based Access Control

Download this manual as a PDF file

This section describes the components of role-based access control (RBAC) in Skylar One (formerly SL1) and how to use them to determine which end users have access to which features within the system.

Use the following menu options to navigate the Skylar One user interface:

What is Role-Based Access Control?

Role-based access control (RBAC) is a methodology that enables Skylar One administrators to determine which end users have access to which features within the system. It has three primary components:

The role that each of these components plays in configuring RBAC in Skylar One is described in the following sections.

Utilizing Organizations for Role-Based Access Control

An organization is a group for managing elements and user accounts. All policies, events, tickets, users, and other elements in Skylar One are associated with an organization.

Most managed elements in Skylar One, such as devices, can be assigned to only a single organization.

On the other hand, users can be assigned to multiple organizations. This can be done directly through their user account or indirectly through a user policy that is associated with their account.

In Skylar One, a user has access to only those elements that are assigned to an organization to which the user also belongs. However, being assigned to the same organization as an element does not automatically grant the user access to that element; the user's account must also include the access hooks necessary to view or perform specific actions on that element.

For this reason, think of organizations as the first-level filter for determining RBAC in Skylar One, not the final determining factor.

For example, a system might have three organizations: Org A, Org B, and Org C. If user is a member of Org A and Org B and is assigned the appropriate access keys to view the Devices page or Device Manager page, the user will see only devices in Org A and Org B on those pages. The user will not be able to see or interact with elements associated with Org C.

Utilizing Access Hooks and Access Keys for Role-Based Access Control

An access hook controls access to a specific action that can be performed in the Skylar One user interface. These actions include navigating to a page, viewing information about an element in the system, and editing elements in the system. Each access hooks is designed to be highly granular, providing access to only one action on one specific entity or page. Because of this granularity, there are hundreds of access hooks available in Skylar One.

Access hooks are not granted to users directly; instead, access hooks are grouped together to form an access key, which can be granted to users either directly through their user account or indirectly through a user policy.

In Skylar One, a user must be assigned to the same organization as an element and have been granted the necessary access keys to view or edit that element.

Due to the importance of access hooks in determining role-based access control in Skylar One, users cannot add or alter access hooks.

For more information about access hooks and access keys, see the section on Access Permissions.

Utilizing User Accounts and User Policies for Role-Based Access Control

User accounts allow individual users to access the Skylar One user interface. In Skylar One, there are two broad types of user accounts:

User policies allow you to define a custom set of account properties and privileges that you can quickly apply to one or more user accounts.

When creating or editing a user account or user policy, the following fields help determine the level of role-based access control the user account or policy has in Skylar One:

If a user is able to modify user accounts, user hierarchy is also enforced in the following ways:

For more information, see the sections on Creating and Editing User Accounts and Creating a User Policy.

Role-Based User Accounts

Separate from the manner in which Skylar One utilizes organization membership, access hooks and keys, and user accounts and policies to establish role-based access control throughout the system, it also offers two limited access, role-based user accounts that can be used for performing maintenance tasks or troubleshooting problems. This section describes those role-based user accounts and how to use them.

What are Role-Based User Accounts?

Remote support personnel or contractors sometimes require temporary or limited access to a Skylar One appliance to perform maintenance tasks or to troubleshoot problems. For these situations, you can grant access to the Skylar One appliance using one of the following limited access, role-based accounts:

Role-based accounts are supported on All-In-One Appliances and in the distributed Skylar One architecture. These accounts are not currently supported for the extended Skylar One architecture.

These role-based accounts are installed by default in Skylar One version 11.1.0 and higher. No configuration is required to enable the accounts.

The sections that follow provide more details about these accounts.

Role-Based sl1admin Account

The sl1admin account enables the system owner to grant temporary access to support staff who perform maintenance and troubleshooting tasks.

The ability to use one-time passwords is disabled in AWS deployments of Skylar One.

Using the sl1admin Account

To log into the sl1admin account:

  1. In a console or command window, SSH to the Skylar One appliance, as follows, using the IP address of the Skylar One appliance.

    ssh sl1admin@<ip_address>

  2. The password prompt will display a 3- or 9-digit number. Make note of this number to use in the next step.

    The numeric code is 3 digits unless you have canceled out in the middle of your most recent login or if another user is also logging in to the sl1admin user account at the same time. In either of those cases, you will be given a 9-digit numeric code such as 001/030/009.

  3. Open the Skylar One user interface and go to the Appliances page (System > Settings > Appliances). Find the appliance you are logging in to in the list of appliances and click its lock () icon. The One Time Password modal appears.
  4. Enter the numeric code that was displayed in step 3 into the One Time Password modal. Click Generate Password. The generated password appears.
  5. Type the generated password into the console window at the password prompt. Press Enter. After authentication is complete, the sl1admin user session begins in a tmux shell. You will see a green status bar at the bottom of the screen.

Monitoring an sl1admin Session in Progress

You can monitor an sl1admin session that is in progress using the em7admin account. To monitor the session:

  1. In a console or command window, SSH to the Skylar One appliance where the sl1admin user session is in progress. Log in with an administrator account.
  2. Obtain the unique identifier (UID) of the tmux session in progress by entering the following command.

    file /tmp/tmux*/default

  3. Note the UID returned by the command. In the following example, the UID is "1001"

    /tmp/tmux-1001/default: socket

  4. Use the UID to attach to the tmux session with the following command.

    tmux -S /tmp/tmux-<uid>/default attach

    The command above provides read/write access to the tmux session. If you want to attach as read-only, append "-r" to the command string.

  5. Exit the attachment to the session by pressing Ctrl+b, and then "d".

Role-Based sl1user Account

The sl1user account allows a user to perform maintenance tasks from a set of menu options. This menu allows the sl1user account to administer a Data Collector.

Changing the Password for the sl1user Account

During installation or upgrade to Skylar One version 11.1.0 or later, the password for the em7admin account is copied and set as the sl1user account password.

SciencLogic strongly recommends that you change the initial default em7admin password before granting access to the sl1user account. Because the initial default password for the sl1user account is the same as the password for the em7admin account, you must change the password before the first use of the sl1user account.

To change the password for the sl1user account:

  1. Log in to the console of the Database Server or SSH to the Database Server.
  2. Enter the following command:

    sudo passwd sl1user

  3. When prompted, type and then re-type the new password.

Using the sl1user Account

To use the sl1user account:

  1. In a console or command window, SSH to the Skylar One appliance, as follows, using the IP address of the Skylar One appliance and the sl1user password.

    ssh sl1user@<ip_address>

  2. At the sl1user main menu, make a selection using the number of the selection or the arrow keys. Click OK.

  3. When you are finished, choose Exit from the main menu to close the session.

Menu Options for sl1user

The menu options available for the sl1user account are described below.

To move back to the previous menu, use the Exit option. If you are at the top-level menu, the Exit option ends the sl1user session.