Allow actions to run on H2 and sample database (#28212)
* Decouple checking ddl from classifying h2 stmts
- should enable followup for easily blocking more kinds of queries
- check all statements to make sure they aren't "ddl".
* fix classify-query
* linter fixes + get-field refactor
* return the CommandInterface values as ints
Reach into the CommandList when needed
* docstring wording
* catch invalid queries -- they can't be classified
* Remove action subtypes from inlined-models
* Add ddl check for `execute-write-query!`
* Remove ACCESS_MODE_DATA
* Check queries are single select statements
* Add test for sample database privileges
* Fix single-select check
* Add single-select test
* Rename and add more tests for checking read only commands
* commands -> statements
* Fix check-disallow-ddl-commands
* new line
* Add more read-only statements to the tests
* Update error text
* Use are
* Add integration test for executing actions with disallowed commands
* Add test before inserting row
* Run GRANT ALL ON SCHEMA "PUBLIC" TO GUEST
* Restore classify-query
* whitespace
---------
Co-authored-by:
Bryan Maass <bryan.maass@gmail.com>
Showing
- resources/sample-database.db.mv.db 0 additions, 0 deletionsresources/sample-database.db.mv.db
- src/metabase/driver/h2.clj 24 additions, 5 deletionssrc/metabase/driver/h2.clj
- test/metabase/cmd/compare_h2_dbs.clj 0 additions, 1 deletiontest/metabase/cmd/compare_h2_dbs.clj
- test/metabase/driver/h2_test.clj 62 additions, 4 deletionstest/metabase/driver/h2_test.clj
- test/metabase/sample_data_test.clj 44 additions, 0 deletionstest/metabase/sample_data_test.clj
Loading
Please register or sign in to comment