24#ifndef SQL_AUTHORIZATION_INCLUDED
25#define SQL_AUTHORIZATION_INCLUDED
48 std::string
str,
const std::function<
bool(
const std::string)> &f);
52 std::function<
void(
const Role_id &,
bool)> f);
std::vector< std::pair< Role_id, bool > > List_of_granted_roles
Definition: auth_internal.h:267
Storage container for default auth ids.
Definition: auth_common.h:1070
Using this class is fraught with peril, and you need to be very careful when doing so.
Definition: sql_string.h:167
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
ABI for instrumented mutexes.
char * user
Definition: mysqladmin.cc:66
const char * host
Definition: mysqladmin.cc:65
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1105
boost::graph_traits< Granted_roles_graph >::vertex_descriptor Role_vertex_descriptor
The data type of a vertex in the Granted_roles_graph.
Definition: sql_auth_cache.h:618
bool check_valid_definer(THD *thd, LEX_USER *definer)
Check if the definer is a valid one.
Definition: sql_authorization.cc:7604
void iterate_comma_separated_quoted_string(std::string str, const std::function< bool(const std::string)> &f)
Iterate a string by comma separation and apply a function on each chunk separated by the commas.
Definition: sql_authorization.cc:4566
void roles_graphml(THD *thd, String *)
Definition: sql_authorization.cc:4912
bool check_if_granted_role(LEX_CSTRING user, LEX_CSTRING host, LEX_CSTRING role, LEX_CSTRING role_host)
Examines if a user@host authid is connected to a role@role_host authid by comparing all out-edges if ...
Definition: sql_authorization.cc:6096
bool find_if_granted_role(Role_vertex_descriptor v, LEX_CSTRING role, LEX_CSTRING role_host, Role_vertex_descriptor *found_vertex=nullptr)
Given a vertex in the roles graph, this function finds a directly connected vertex given a (role,...
Definition: sql_authorization.cc:6131
void get_granted_roles(Role_vertex_descriptor &v, List_of_granted_roles *granted_roles)
Populates a list of authorization IDs that are connected to a specified graph vertex in the global ro...
Definition: sql_authorization.cc:6194
mysql_mutex_t LOCK_mandatory_roles
Definition: mysqld.cc:1294
std::pair< std::string, std::string > get_authid_from_quoted_string(std::string str)
Return the unquoted authorization id as a user,host-tuple.
Definition: sql_authorization.cc:4612
Definition: mysql_lex_string.h:40
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:50