20#ifndef ORES_ACCOUNTS_SERVICE_RBAC_SEEDER_HPP
21#define ORES_ACCOUNTS_SERVICE_RBAC_SEEDER_HPP
23#include "ores.utility/log/make_logger.hpp"
24#include "ores.accounts/service/authorization_service.hpp"
26namespace ores::accounts::service {
54 inline static std::string_view logger_name =
55 "ores.accounts.service.rbac_seeder";
57 [[nodiscard]]
static auto& lg() {
59 static auto instance = make_logger(logger_name);
77 void seed(
const std::string& recorded_by =
"system");
91 void seed_roles(
const std::string& recorded_by);
Implements logging for ORE Studio.
Definition lifecycle_manager.hpp:30
Service for managing role-based access control (RBAC).
Definition authorization_service.hpp:54
Seeds the RBAC system with predefined permissions and roles.
Definition rbac_seeder.hpp:52
void seed_roles(const std::string &recorded_by)
Seeds only the roles (assumes permissions already exist).
Definition rbac_seeder.cpp:107
void seed(const std::string &recorded_by="system")
Seeds all predefined permissions and roles.
Definition rbac_seeder.cpp:34
void seed_permissions()
Seeds only the permissions (no roles).
Definition rbac_seeder.cpp:41