113 Commits

Author SHA1 Message Date
Markus Makela
c5214bea1b Cleaned up code and changed function structure. 2015-08-28 12:54:38 +03:00
Markus Makela
296bdc5df6 Fixed errors and added comments. 2015-08-28 12:54:38 +03:00
Markus Makela
525daf827a Service are not started if user permissions are inadequate.
Also cleaned up code and error messages.
2015-08-28 12:54:38 +03:00
Markus Makela
cb2b465510 Changed queries to more closely match actual queries. 2015-08-28 12:54:38 +03:00
Markus Makela
4da9045da4 Removed redundant function. 2015-08-28 12:54:38 +03:00
Markus Makela
94eb1b4eb1 Added service and monitor permission checks. 2015-08-28 12:51:37 +03:00
Markus Makela
584ad321ff Fixed possible crash. 2015-07-13 13:22:19 +03:00
Markus Makela
4706b756c2 Changed the service resource hashing function into a proper string hashing function. 2015-06-30 19:16:49 +03:00
Markus Makela
88940c0097 Fixed wildcard grants not being added to the users table. 2015-06-27 09:47:06 +03:00
Markus Makela
4759df9f87 Added proper wildcard database grant detection. 2015-06-27 09:08:20 +03:00
Markus Makela
06bece82a8 Fixed multi-character wildcard database grants not working with schemarouter. 2015-05-26 23:08:29 +03:00
Markus Makela
1edf7a32cc Added missing strip_db_esc to dbusers.c 2015-05-14 13:43:23 +03:00
Markus Makela
39bbc93bbc Changed user addition failure message to mention duplicate users if the user in question was already in the users hash. 2015-04-16 11:02:59 +03:00
Markus Makela
d16e4fe134 Added an option for optimization of wildcard grants to individual grants. The default behavior now checks first for specific grants to a database the wildcard grants. 2015-04-15 06:51:52 +03:00
Markus Makela
3fb59e020b Added more logging to trace log. 2015-04-09 22:07:53 +03:00
Markus Makela
a6ca4a8e0a Merge branch 'wildcard_dbnames' into develop
Conflicts:
	server/core/dbusers.c
2015-04-09 17:12:49 +03:00
Markus Makela
71c6ab1d66 Backend databases are queried from all backends before querying users in getAllUsers. 2015-04-07 13:15:48 +03:00
Markus Makela
7904b3dcb3 Added doxygen comments to new functions and more logging output when resolving wildcard database names. 2015-04-06 16:14:59 +03:00
Markus Makela
0e2d11e487 Fixed missing wildcard character from regex string. 2015-04-06 06:10:17 +03:00
Markus Makela
bd68121cc0 Revert "Added resolving of wildcard database grants to multiple single database grants to mysql_client."
This reverts commit 2a416a8cbab5140595f4d2de73d76cefdf3667de.
2015-04-06 05:54:16 +03:00
Markus Makela
2a416a8cba Added resolving of wildcard database grants to multiple single database grants to mysql_client. 2015-04-06 05:46:42 +03:00
Markus Makela
31a43a846e Fixed log messages not mentioning SHOW DATABASES privilege. 2015-04-01 10:05:54 +03:00
Markus Makela
72d48452d5 Fixed a bug with authentication data being loaded too many times. 2015-03-16 13:44:50 +02:00
Markus Makela
06318cf0ea Fixed possible error in user authentication from multiple sources. 2015-03-16 11:15:40 +02:00
Markus Makela
58b16e1468 Fix to user authentication. 2015-03-13 20:25:04 +02:00
Markus Makela
fbedad84af Fixes to Coverity defects. 2015-03-10 17:08:04 +02:00
Markus Makela
fc969acc73 Added optional stripping of escape characters from database names when laoding users. 2015-02-20 21:07:12 +02:00
Markus Makela
83b7948cdf Added more debug output to user authentication. 2015-02-20 14:50:26 +02:00
Markus Makela
a2bff1dcea Merge branch 'develop' into MAX-324 2015-02-16 14:58:35 +02:00
Mark Riddoch
6d1a11637a Fixed typo 2015-02-13 10:18:55 +00:00
Markus Makela
d1c2895057 Small fix to how user is retrieved from all servers.
When the authentication was done using the user data from all servers and the set of servers contained a server in the Master state it was possible that some servers weren't queried for their users. This was fixed by adding a check for the parameter that enables this before looking for a master server.
2015-02-13 07:34:46 +02:00
Markus Makela
36363b09a1 Added more debug logging and fixed the service resources being overwritted even though they were already allocated. 2015-02-10 14:28:49 +02:00
Markus Makela
46ec9abe29 Added optional parameters for services that allow all servers to be used when building the list of users. 2015-02-09 07:19:13 +02:00
Mark Riddoch
d4f5ca6bcb Merge branch 'blr' into develop
Addition of hashtable load and save. Caching of auth information
2015-02-06 11:52:51 +00:00
Mark Riddoch
bc0d303b27 Add saving of hashtables to a file
Cache the user information to file in order to allow authentication without backend databases
2015-02-06 11:44:29 +00:00
Markus Makela
566831c9c5 Fix to bug 705: http://bugs.mariadb.com/show_bug.cgi?id=705
changed " to ' in queries so that ANSI_QUOTES works with sql_modes that use it.
2015-01-26 20:17:20 +02:00
Markus Makela
95cd0b93cb Fix to bug 679: http://bugs.mariadb.com/show_bug.cgi?id=679
Added server references to services instead of using a raw pointers to server instances.
Changed all references to service->database to service->dbref.
2015-01-02 20:55:38 +02:00
VilhoRaatikka
beacd524da Fix to bug #662, http://bugs.mariadb.com/show_bug.cgi?id=662
dbusers.c: Added function for setting read, write and connection timeout values. Set default timeouts for getUsers. Defaults are listed in service.c
gateway.c:shutdown_server is called whenever MaxScale is to be shut down. Added call for service_shutdown to shutdown_server.
service.c:service_alloc: replaced malloc with calloc and removed unnecessary zero/NULL initialization statements as a consequence.
	serviceStart: Exit serviceStartPort loop if shutdown flag is set for the service.
	serviceStartAll: Exit serviceStart loop if shutdown flag is set for the service.
service.c: Added service_shutdown which sets shutdown flag for each service found in allServices list.
service.h: Added prototype for service_shutdown
2014-12-29 13:45:24 +02:00
VilhoRaatikka
552d3186eb Disabled fix to #642 for now. 2014-12-18 19:20:21 +02:00
VilhoRaatikka
494ac968e2 Fix candidate to bug #642, http://bugs.skysql.com/show_bug.cgi?id=652
If user only has a privileges to certain table, login with db still succeeds.

Removed invalid debug assertion from readwritesplit.c
2014-12-17 23:51:04 +02:00
Mark Riddoch
5ef7ddfe1f Bug 653 - Memory overwrite 2014-12-16 15:34:06 +00:00
MassimilianoPinto
2d4073267c Added support for a.%, a.%.% and a.b.%
Added support for a.%, a.%.% and a.b.% in dbusers.c
2014-12-04 19:01:17 +01:00
Mark Riddoch
d063df0f4a Update message 2014-11-26 11:10:59 +00:00
Mark Riddoch
31f5017d6d Merge branch 'release-1.0GA' of https://github.com/mariadb-corporation/MaxScale into release-1.0GA 2014-11-26 11:04:48 +00:00
Mark Riddoch
6ee9a84cef Updated error messages 2014-11-26 11:04:33 +00:00
MassimilianoPinto
398eee8ece Added a log message for mysql_old_password
Added a log message for mysql_old_password detection: user is not loaded
2014-11-26 11:44:38 +01:00
MassimilianoPinto
69a1c5aaf5 Changed log messages for dousers
Changed log messages for dousers
2014-11-20 11:31:54 +01:00
VilhoRaatikka
fd11e6a7f5 Session-specific logging. Added functions
void session_enable_log(SESSION* ses, logfile_id_t id)
and
void session_disable_log(SESSION* ses, logfile_id_t id)

Which switch specific log type on/off if the log type in question is not generally enabled.

Each thread carries a thread-specific struct log_info_t which includes members for current session id and bitfield for enabled log types for the current session. That information is checked before actual log write functions are called.

Each file where session-specific logging is used, must include the following exports:

/** Defined in log_manager.cc */
extern int            lm_enabled_logfiles_bitmask;
extern size_t         log_ses_count[];
extern __thread log_info_t tls_log_info;
2014-11-19 00:08:59 +02:00
MassimilianoPinto
238c476d3a getUsers try selecting a Master server
getUsers try selecting a Master server if available.

Next users reload will connect to master server
2014-11-13 17:41:50 +01:00
VilhoRaatikka
665315ea5c Fix to bug #612, http://bugs.mariadb.com/show_bug.cgi?id=612
Also added error logging in cases where memory allocation failed etc.
2014-11-05 22:04:36 +02:00