无法在只读模式下使用 Crate JDBC 2.6.0
Unable to use Crate JDBC 2.6.0 in read only mode
我想限制 delete/update 个语句
这就是我正在尝试的
ResultSet rs = stmt.executeQuery("delete from test where id=243640033")
理想情况下,JDBC 的 executeQuery
方法不应允许更新、删除等操作。但是 Crate 数据库只是简单地执行删除查询。然后我试了connection.setReadOnly(true)
,没用
有什么方法可以限制 Crate JDBC 从 stmt.executeQuery(somequery)
方法执行 update/delete/drop 操作吗?
您可以仅使用 Data Query Language (DQL) privileges 创建一个 CrateDB 用户,然后使用该用户连接 JDBC。这将阻止所有 INSERT
/ UPDATE
/ DELETE
/ DROP
操作。
CREATE USER read_only WITH (password = '<secure-password>');
GRANT DQL TO read_only;
如果需要,您可以进一步限制对特定架构、表或视图的访问。比较有关如何实现此目的的文档。
我想限制 delete/update 个语句
这就是我正在尝试的
ResultSet rs = stmt.executeQuery("delete from test where id=243640033")
理想情况下,JDBC 的 executeQuery
方法不应允许更新、删除等操作。但是 Crate 数据库只是简单地执行删除查询。然后我试了connection.setReadOnly(true)
,没用
有什么方法可以限制 Crate JDBC 从 stmt.executeQuery(somequery)
方法执行 update/delete/drop 操作吗?
您可以仅使用 Data Query Language (DQL) privileges 创建一个 CrateDB 用户,然后使用该用户连接 JDBC。这将阻止所有 INSERT
/ UPDATE
/ DELETE
/ DROP
操作。
CREATE USER read_only WITH (password = '<secure-password>');
GRANT DQL TO read_only;
如果需要,您可以进一步限制对特定架构、表或视图的访问。比较有关如何实现此目的的文档。