【问题标题】:Oracle - Granting privileges to user for sessionOracle - 授予用户会话权限
【发布时间】:2014-04-19 01:35:18
【问题描述】:

我有一个使用 Oracle 9i 作为数据库的应用程序,我想仅授予此应用程序使用的会话/连接的更新/删除/插入等权限。

我希望通过 excel、access 等进行的所有其他连接都处于只读状态,以防止用户“意外”通过这些应用程序更改数据。

如果我让所有用户从只读权限开始,那么当他们连接到此应用程序时,我想调用一个特定的存储过程,该过程将只授予用户对该会话的适当权限。一旦他们断开连接,用户将恢复为只读权限。

我在其他帖子中看到您可以向登录添加触发器,以便检查连接是否来自 application1.exe 然后您可以执行操作,或者如果它们从“excel.exe”连接,您可以阻止它们。

这与我需要做的很接近,但并不完全。

我的冗长问题是“我能否仅授予会话/连接权限,然后允许该用户根据正在运行的特定应用程序更新数据?”

感谢您耐心阅读此问题。

卡尔

【问题讨论】:

  • 这听起来真是个坏主意。而是将角色分配给用户。
  • 只有在会话连接时才授予某些东西是没有用的。如果用户没有连接到数据库,那么他在任何情况下根本无法做任何事情

标签: excel oracle session


【解决方案1】:
  1. 创建用户 A 并授予他执行 DML 操作的权限
  2. 创建用户 B 并授予只读权限
  3. 在应用程序中使用用户 A
  4. 在 Excel、访问等中使用用户 B

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-17
    • 1970-01-01
    相关资源
    最近更新 更多