【发布时间】:2020-10-24 18:38:23
【问题描述】:
我正在尝试进行测试以证明用户的权限。我有一个用户只有一个权限(执行程序)但是当我尝试这个时,这个用户可以改变表:
SHOW USER;
CONNECT USER1/USER1;
CREATE TABLE TEST_TABLE (colum int); //Insufficient privileges
SHOW USER;
ALTER TABLE TABLE_TESTING ADD TESTING varchar(255);
所以,我在 create table 上获得的权限不足,但是当我执行 ALTER TABLE 时,用户可以这样做,我不知道为什么,因为我只选择了执行程序的权限
【问题讨论】:
-
要么有表 TABLE_TESTING 的同义词,要么 USER1 是该表的所有者,并且作为所有者,他可以更改...
-
通常您会在生产数据库中通过不提供密码或从
USER1撤销create session权限来解决此问题。
标签: sql oracle oracle-sqldeveloper