> Should we log startup events in mysql_audit_initialize() and shutdown events in mysql_audit_finalize(), so that the API can
> stay the same?
It makes sence to me.
Alexey Botchkov
added a comment - > Should we log startup events in mysql_audit_initialize() and shutdown events in mysql_audit_finalize(), so that the API can
> stay the same?
It makes sence to me.
Hi holyfoot, GeoffMontee. Audits are typically about user activities on database objects and on accessing the server as such. A server startup or shutdown is more about monitoring a server instance. I would not mix these use cases. Also, are mysql_audit_initialize() and mysql_audit_finalize() really only called on Server startup and shutdown?
Ralf Gebhardt
added a comment - Hi holyfoot , GeoffMontee . Audits are typically about user activities on database objects and on accessing the server as such. A server startup or shutdown is more about monitoring a server instance. I would not mix these use cases. Also, are mysql_audit_initialize() and mysql_audit_finalize() really only called on Server startup and shutdown?
Audits are typically about user activities on database objects and on accessing the server as such. A server startup or shutdown is more about monitoring a server instance. I would not mix these use cases.
I would personally consider issuing a shutdown/startup request to be a form of "accessing the server" as well as performing an activity that can potentially affect all "database objects".
Shutdowns and startups could definitely be relevant in an audit. Especially if the auditors suspect a rogue DBA of adding options to my.cnf or other configuration files as a way to bypass security mechanisms.
Also, are mysql_audit_initialize() and mysql_audit_finalize() really only called on Server startup and shutdown?
Geoff Montee (Inactive)
added a comment - Hi ralf.gebhardt@mariadb.com ,
Audits are typically about user activities on database objects and on accessing the server as such. A server startup or shutdown is more about monitoring a server instance. I would not mix these use cases.
I would personally consider issuing a shutdown/startup request to be a form of "accessing the server" as well as performing an activity that can potentially affect all "database objects".
Shutdowns and startups could definitely be relevant in an audit. Especially if the auditors suspect a rogue DBA of adding options to my.cnf or other configuration files as a way to bypass security mechanisms.
Also, are mysql_audit_initialize() and mysql_audit_finalize() really only called on Server startup and shutdown?
Yeah, it does appear so.
https://github.com/MariaDB/server/blob/mariadb-10.4.5/sql/mysqld.cc#L5630
https://github.com/MariaDB/server/blob/mariadb-10.4.5/sql/mysqld.cc#L1932
Hi, GeoffMontee, ralf.gebhardt@mariadb.com!
To me logging the server shutdowns/startups seems like a different level. User with such capabilities can do a lot more than just modify the .my.cnf file. Server can be started without the plugins for instance.
So it's difficult to rely on what's in the audit plugin log in this case.
Alexey Botchkov
added a comment - Hi, GeoffMontee , ralf.gebhardt@mariadb.com !
To me logging the server shutdowns/startups seems like a different level. User with such capabilities can do a lot more than just modify the .my.cnf file. Server can be started without the plugins for instance.
So it's difficult to rely on what's in the audit plugin log in this case.
People
Unassigned
Geoff Montee (Inactive)
Votes:
0Vote for this issue
Watchers:
4Start watching this issue
Dates
Created:
Updated:
Git Integration
Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.
{"report":{"fcp":881.5,"ttfb":238.09999990463257,"pageVisibility":"visible","entityId":76001,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":1,"journeyId":"a2f4ca51-2249-495f-b9c7-800044e6c9bd","navigationType":0,"readyForUser":951.1999998092651,"redirectCount":0,"resourceLoadedEnd":574.6999998092651,"resourceLoadedStart":246.2999997138977,"resourceTiming":[{"duration":7.800000190734863,"initiatorType":"link","name":"https://jira.mariadb.org/s/2c21342762a6a02add1c328bed317ffd-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/css/_super/batch.css","startTime":246.2999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":246.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":254.09999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":8.099999904632568,"initiatorType":"link","name":"https://jira.mariadb.org/s/7ebd35e77e471bc30ff0eba799ebc151-CDN/lu2cib/820016/12ta74/494e4c556ecbb29f90a3d3b4f09cb99c/_/download/contextbatch/css/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.css?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&slack-enabled=true&whisper-enabled=true","startTime":246.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":246.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":254.69999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":196.90000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/0917945aaa57108d00c5076fea35e069-CDN/lu2cib/820016/12ta74/0a8bac35585be7fc6c9cc5a0464cd4cf/_/download/contextbatch/js/_super/batch.js?locale=en","startTime":246.7999997138977,"connectEnd":246.7999997138977,"connectStart":246.7999997138977,"domainLookupEnd":246.7999997138977,"domainLookupStart":246.7999997138977,"fetchStart":246.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":258.40000009536743,"responseEnd":443.69999980926514,"responseStart":273.5,"secureConnectionStart":246.7999997138977},{"duration":327.19999980926514,"initiatorType":"script","name":"https://jira.mariadb.org/s/2d8175ec2fa4c816e8023260bd8c1786-CDN/lu2cib/820016/12ta74/494e4c556ecbb29f90a3d3b4f09cb99c/_/download/contextbatch/js/jira.browse.project,project.issue.navigator,jira.view.issue,jira.general,jira.global,atl.general,-_super/batch.js?agile_global_admin_condition=true&jag=true&jira.create.linked.issue=true&locale=en&slack-enabled=true&whisper-enabled=true","startTime":247.5,"connectEnd":247.5,"connectStart":247.5,"domainLookupEnd":247.5,"domainLookupStart":247.5,"fetchStart":247.5,"redirectEnd":0,"redirectStart":0,"requestStart":258.59999990463257,"responseEnd":574.6999998092651,"responseStart":279.69999980926514,"secureConnectionStart":247.5},{"duration":42.5,"initiatorType":"script","name":"https://jira.mariadb.org/s/a9324d6758d385eb45c462685ad88f1d-CDN/lu2cib/820016/12ta74/c92c0caa9a024ae85b0ebdbed7fb4bd7/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en","startTime":247.69999980926514,"connectEnd":247.69999980926514,"connectStart":247.69999980926514,"domainLookupEnd":247.69999980926514,"domainLookupStart":247.69999980926514,"fetchStart":247.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":260.59999990463257,"responseEnd":290.19999980926514,"responseStart":286.09999990463257,"secureConnectionStart":247.69999980926514},{"duration":33.40000009536743,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":247.7999997138977,"connectEnd":247.7999997138977,"connectStart":247.7999997138977,"domainLookupEnd":247.7999997138977,"domainLookupStart":247.7999997138977,"fetchStart":247.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":259.59999990463257,"responseEnd":281.19999980926514,"responseStart":278.90000009536743,"secureConnectionStart":247.7999997138977},{"duration":42.09999990463257,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":248.09999990463257,"connectEnd":248.09999990463257,"connectStart":248.09999990463257,"domainLookupEnd":248.09999990463257,"domainLookupStart":248.09999990463257,"fetchStart":248.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":262.90000009536743,"responseEnd":290.19999980926514,"responseStart":287.69999980926514,"secureConnectionStart":248.09999990463257},{"duration":13.599999904632568,"initiatorType":"link","name":"https://jira.mariadb.org/s/b04b06a02d1959df322d9cded3aeecc1-CDN/lu2cib/820016/12ta74/a2ff6aa845ffc9a1d22fe23d9ee791fc/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":248.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":248.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":261.7999997138977,"responseStart":0,"secureConnectionStart":0},{"duration":42.10000038146973,"initiatorType":"script","name":"https://jira.mariadb.org/rest/api/1.0/shortcuts/820016/47140b6e0a9bc2e4913da06536125810/shortcuts.js?context=issuenavigation&context=issueaction","startTime":248.2999997138977,"connectEnd":248.2999997138977,"connectStart":248.2999997138977,"domainLookupEnd":248.2999997138977,"domainLookupStart":248.2999997138977,"fetchStart":248.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":263.19999980926514,"responseEnd":290.40000009536743,"responseStart":288.19999980926514,"secureConnectionStart":248.2999997138977},{"duration":13.599999904632568,"initiatorType":"link","name":"https://jira.mariadb.org/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/lu2cib/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.css?jira.create.linked.issue=true","startTime":248.5,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":248.5,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":262.09999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":61.200000286102295,"initiatorType":"script","name":"https://jira.mariadb.org/s/5d5e8fe91fbc506585e83ea3b62ccc4b-CDN/lu2cib/820016/12ta74/d176f0986478cc64f24226b3d20c140d/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-project.issue.navigator,-jira.view.issue/batch.js?jira.create.linked.issue=true&locale=en","startTime":248.69999980926514,"connectEnd":248.69999980926514,"connectStart":248.69999980926514,"domainLookupEnd":248.69999980926514,"domainLookupStart":248.69999980926514,"fetchStart":248.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":264.09999990463257,"responseEnd":309.90000009536743,"responseStart":288.59999990463257,"secureConnectionStart":248.69999980926514},{"duration":323.69999980926514,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":250.5,"connectEnd":250.5,"connectStart":250.5,"domainLookupEnd":250.5,"domainLookupStart":250.5,"fetchStart":250.5,"redirectEnd":0,"redirectStart":0,"requestStart":292.09999990463257,"responseEnd":574.1999998092651,"responseStart":570.5999999046326,"secureConnectionStart":250.5},{"duration":323.6000003814697,"initiatorType":"script","name":"https://jira.mariadb.org/s/d41d8cd98f00b204e9800998ecf8427e-CDN/lu2cib/820016/12ta74/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":250.7999997138977,"connectEnd":250.7999997138977,"connectStart":250.7999997138977,"domainLookupEnd":250.7999997138977,"domainLookupStart":250.7999997138977,"fetchStart":250.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":292.69999980926514,"responseEnd":574.4000000953674,"responseStart":571.4000000953674,"secureConnectionStart":250.7999997138977},{"duration":55.90000009536743,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":592.6999998092651,"connectEnd":592.6999998092651,"connectStart":592.6999998092651,"domainLookupEnd":592.6999998092651,"domainLookupStart":592.6999998092651,"fetchStart":592.6999998092651,"redirectEnd":0,"redirectStart":0,"requestStart":614.6999998092651,"responseEnd":648.5999999046326,"responseStart":647.7999997138977,"secureConnectionStart":592.6999998092651},{"duration":220.19999980926514,"initiatorType":"xmlhttprequest","name":"https://jira.mariadb.org/rest/webResources/1.0/resources","startTime":797.5999999046326,"connectEnd":797.5999999046326,"connectStart":797.5999999046326,"domainLookupEnd":797.5999999046326,"domainLookupStart":797.5999999046326,"fetchStart":797.5999999046326,"redirectEnd":0,"redirectStart":0,"requestStart":983.7999997138977,"responseEnd":1017.7999997138977,"responseStart":1016.9000000953674,"secureConnectionStart":797.5999999046326}],"fetchStart":0,"domainLookupStart":0,"domainLookupEnd":0,"connectStart":0,"connectEnd":0,"requestStart":77,"responseStart":238,"responseEnd":250,"domLoading":241,"domInteractive":1006,"domContentLoadedEventStart":1006,"domContentLoadedEventEnd":1052,"domComplete":1324,"loadEventStart":1324,"loadEventEnd":1324,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":982.4000000953674},{"name":"bigPipe.sidebar-id.end","time":983.2999997138977},{"name":"bigPipe.activity-panel-pipe-id.start","time":983.5},{"name":"bigPipe.activity-panel-pipe-id.end","time":985},{"name":"activityTabFullyLoaded","time":1071.1999998092651}],"measures":[],"correlationId":"5670a2b8b579db","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":88,"dbReadsTimeInMs":11,"dbConnsTimeInMs":19,"applicationHash":"9d11dbea5f4be3d4cc21f03a88dd11d8c8687422","experiments":[]}}
> Should we log startup events in mysql_audit_initialize() and shutdown events in mysql_audit_finalize(), so that the API can
> stay the same?
It makes sence to me.