MySQL 9.3.0
Source Code Documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
mrs::interface::AuthorizeManager Class Referenceabstract

#include <authorize_manager.h>

Inheritance diagram for mrs::interface::AuthorizeManager:
[legend]

Public Types

using SessionId = http::SessionManager::SessionId
 
using Session = http::SessionManager::Session
 
using SessionPtr = http::SessionManager::SessionPtr
 
using SqlSessionCached = collector::MysqlCacheManager::CachedObject
 
using AuthorizeHandlerPtr = std::shared_ptr< AuthorizeHandler >
 
using AuthHandlers = std::vector< AuthorizeHandlerPtr >
 
using AuthApp = database::entry::AuthApp
 
using AuthUser = database::entry::AuthUser
 
using Entries = std::vector< AuthApp >
 
using ServiceId = UniversalId
 
using Container = std::vector< AuthorizeHandlerPtr >
 
using HttpHeaders = ::http::base::Headers
 
using ChangedUsersIds = mrs::users::UserManager::ChangedUsersIds
 

Public Member Functions

virtual ~AuthorizeManager ()=default
 
virtual void update (const Entries &entries)=0
 
virtual bool authorize (const std::string &proto, const std::string &host, ServiceId id, rest::RequestContext &ctxt, AuthUser *out_user)=0
 
virtual bool is_authorized (ServiceId id, rest::RequestContext &ctxt, AuthUser *user)=0
 
virtual bool unauthorize (const SessionPtr &session, http::Cookie *cookies)=0
 
virtual void configure (const std::string &options)=0
 
virtual std::string get_jwt_token (ServiceId service_id, const SessionPtr &s)=0
 
virtual users::UserManagerget_user_manager ()=0
 
virtual Container get_supported_authentication_applications (ServiceId id)=0
 
virtual void discard_current_session (ServiceId, http::Cookie *)
 
virtual collector::MysqlCacheManagerget_cache ()=0
 
virtual void clear ()=0
 
virtual void update_users_cache (const ChangedUsersIds &changed_users_ids)=0
 

Member Typedef Documentation

◆ AuthApp

using mrs::interface::AuthorizeManager::AuthApp = database::entry::AuthApp

◆ AuthHandlers

◆ AuthorizeHandlerPtr

◆ AuthUser

using mrs::interface::AuthorizeManager::AuthUser = database::entry::AuthUser

◆ ChangedUsersIds

◆ Container

◆ Entries

◆ HttpHeaders

◆ ServiceId

◆ Session

◆ SessionId

◆ SessionPtr

◆ SqlSessionCached

Constructor & Destructor Documentation

◆ ~AuthorizeManager()

virtual mrs::interface::AuthorizeManager::~AuthorizeManager ( )
virtualdefault

Member Function Documentation

◆ authorize()

virtual bool mrs::interface::AuthorizeManager::authorize ( const std::string &  proto,
const std::string &  host,
ServiceId  id,
rest::RequestContext ctxt,
AuthUser out_user 
)
pure virtual

◆ clear()

virtual void mrs::interface::AuthorizeManager::clear ( )
pure virtual

◆ configure()

virtual void mrs::interface::AuthorizeManager::configure ( const std::string &  options)
pure virtual

◆ discard_current_session()

virtual void mrs::interface::AuthorizeManager::discard_current_session ( ServiceId  ,
http::Cookie  
)
inlinevirtual

◆ get_cache()

virtual collector::MysqlCacheManager * mrs::interface::AuthorizeManager::get_cache ( )
pure virtual

◆ get_jwt_token()

virtual std::string mrs::interface::AuthorizeManager::get_jwt_token ( ServiceId  service_id,
const SessionPtr s 
)
pure virtual

◆ get_supported_authentication_applications()

virtual Container mrs::interface::AuthorizeManager::get_supported_authentication_applications ( ServiceId  id)
pure virtual

◆ get_user_manager()

virtual users::UserManager * mrs::interface::AuthorizeManager::get_user_manager ( )
pure virtual

◆ is_authorized()

virtual bool mrs::interface::AuthorizeManager::is_authorized ( ServiceId  id,
rest::RequestContext ctxt,
AuthUser user 
)
pure virtual

◆ unauthorize()

virtual bool mrs::interface::AuthorizeManager::unauthorize ( const SessionPtr session,
http::Cookie cookies 
)
pure virtual

◆ update()

virtual void mrs::interface::AuthorizeManager::update ( const Entries entries)
pure virtual

◆ update_users_cache()

virtual void mrs::interface::AuthorizeManager::update_users_cache ( const ChangedUsersIds changed_users_ids)
pure virtual

The documentation for this class was generated from the following file: