首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ORA-01031:权限不足-包过程

ORA-01031:权限不足-包过程
EN

Stack Overflow用户
提问于 2019-01-02 13:16:10
回答 1查看 4.9K关注 0票数 0

在甲骨文中,当我执行我的包时,我会得到错误:

ORA-01031:特权不足

我的用户有dba管理角色。

myPackage in mySchema.但是表在模式上是不同的。

我尝试了下面的脚本,但没有解决我的问题。

代码语言:javascript
复制
grant execute on mySchema.myPackage to otherSchema;

谢谢你的兴趣。

代码语言:javascript
复制
execute
mySchema.myPackage.disabledTableConstraint(otherSchema.table_Cons);
EN

回答 1

Stack Overflow用户

发布于 2019-01-03 00:41:32

在PL/SQL中,通过角色授予的特权并不重要。默认情况下,包使用定义器的权限执行,这意味着它们使用拥有模式的权限执行。

看起来,mySchema试图在otherSchema中禁用一个约束,因此这基本上就好像您以mySchema身份登录并尝试这样做:

代码语言:javascript
复制
alter table otherSchema.someTable disable constraint myconstraint;

听起来,mySchemaotherSchema没有特权。您可以:

  1. ALTER TABLE特权从otherSchema授予mySchema。你得一桌一桌地做这个。
  2. ALTER ANY TABLE系统特权授予mySchema。这可能很危险。
  3. 使用AUTHID CURRENT_USER条款使程序调用者的权利。这将使过程以调用它的模式的特权运行,在本例中是otherSchema

请参阅:论权利人权利与被叫人权利的安全管理

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54007068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档