h2 数据库创建一个新用户, 并授权对所有表只读
h2 数据库创建一个新用户, 并授权对所有表只读
我们的产品单机版的数据库一直是用h2, 由于要对接BI服务器, 所以需要配置一个只读的用户账号, 所以我花了一点时间去找了下如何创建用户, 并授权对所有表只读.感觉文档不太好找(对英文不好的同学来说), 还是记下来比较好.
创建用户
CREATE USER IF NOT EXISTS GUEST PASSWORD 'abc'
参考文档: https://www. h2database.com/html/com mands.html#create_user
给用户授权, 对所有表只读
GRANT SELECT ON SCHEMA PUBLIC TO GUEST;
参考文档: https://www. h2database.com/html/com mands.html#grant_right
授权后新增的表可以是只读吗?
带着这个疑问,我创建了一个test_1的表
create table test_1 (
ID int not null,
NAME varchar(100) not null
);
然后插入一条数据
insert into test_1 (id, name) values(1, 'test1');
再去BI服务器中刷新, 事实证明是可以看到并读取出数据的
结语
本文主要是针对h2数据库做的一次 创建用户并授权 的实践记录, 通过寻找文档并操作, 达到了预期的目的,笔芯❤.