ORE Studio 0.0.4
Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
rbac_commands Class Reference

Manages commands related to RBAC (Role-Based Access Control). More...

#include <rbac_commands.hpp>

Collaboration diagram for rbac_commands:
Collaboration graph

Static Public Member Functions

static void register_commands (cli::Menu &root_menu, comms::net::client_session &session)
 Register RBAC-related commands.
 
static void process_list_permissions (std::ostream &out, comms::net::client_session &session)
 Process a list permissions request.
 
static void process_list_roles (std::ostream &out, comms::net::client_session &session)
 Process a list roles request.
 
static void process_get_role (std::ostream &out, comms::net::client_session &session, std::string role_identifier)
 Process a get role request.
 
static void process_assign_role (std::ostream &out, comms::net::client_session &session, std::string account_id, std::string role_id)
 Process an assign role request.
 
static void process_revoke_role (std::ostream &out, comms::net::client_session &session, std::string account_id, std::string role_id)
 Process a revoke role request.
 
static void process_get_account_roles (std::ostream &out, comms::net::client_session &session, std::string account_id)
 Process a get account roles request.
 
static void process_get_account_permissions (std::ostream &out, comms::net::client_session &session, std::string account_id)
 Process a get account permissions request.
 

Detailed Description

Manages commands related to RBAC (Role-Based Access Control).

Provides shell commands for managing roles, permissions, and account-role assignments.

Member Function Documentation

◆ register_commands()

void register_commands ( cli::Menu &  root_menu,
comms::net::client_session session 
)
static

Register RBAC-related commands.

Creates the roles and permissions submenus and adds RBAC operations. Also extends the accounts menu with role assignment commands.

◆ process_list_permissions()

void process_list_permissions ( std::ostream &  out,
comms::net::client_session session 
)
static

Process a list permissions request.

Retrieves all permissions from the server and displays them.

Parameters
outOutput stream for results
sessionClient session for connectivity.
Here is the caller graph for this function:

◆ process_list_roles()

void process_list_roles ( std::ostream &  out,
comms::net::client_session session 
)
static

Process a list roles request.

Retrieves all roles from the server and displays them.

Parameters
outOutput stream for results
sessionClient session for connectivity.
Here is the caller graph for this function:

◆ process_get_role()

void process_get_role ( std::ostream &  out,
comms::net::client_session session,
std::string  role_identifier 
)
static

Process a get role request.

Retrieves a specific role by name or ID and displays its details including all assigned permissions.

Parameters
outOutput stream for results
sessionClient session for connectivity.
role_identifierRole name or UUID
Here is the caller graph for this function:

◆ process_assign_role()

void process_assign_role ( std::ostream &  out,
comms::net::client_session session,
std::string  account_id,
std::string  role_id 
)
static

Process an assign role request.

Assigns a role to an account. Requires roles:assign permission.

Parameters
outOutput stream for results
sessionClient session for connectivity.
account_idAccount ID UUID as a string.
role_idRole ID UUID as a string.
Here is the caller graph for this function:

◆ process_revoke_role()

void process_revoke_role ( std::ostream &  out,
comms::net::client_session session,
std::string  account_id,
std::string  role_id 
)
static

Process a revoke role request.

Revokes a role from an account. Requires roles:revoke permission.

Parameters
outOutput stream for results
sessionClient session for connectivity.
account_idAccount ID UUID as a string.
role_idRole ID UUID as a string.
Here is the caller graph for this function:

◆ process_get_account_roles()

void process_get_account_roles ( std::ostream &  out,
comms::net::client_session session,
std::string  account_id 
)
static

Process a get account roles request.

Retrieves all roles assigned to a specific account.

Parameters
outOutput stream for results
sessionClient session for connectivity.
account_idAccount ID UUID as a string.
Here is the caller graph for this function:

◆ process_get_account_permissions()

void process_get_account_permissions ( std::ostream &  out,
comms::net::client_session session,
std::string  account_id 
)
static

Process a get account permissions request.

Retrieves all effective permissions for a specific account.

Parameters
outOutput stream for results
sessionClient session for connectivity.
account_idAccount ID UUID as a string.
Here is the caller graph for this function: