繁体   English   中英

如何将JBOSS数据源设置为Oracle数据库,使用与用于身份验证的模式不同的模式

[英]How can I set a JBOSS data source to an Oracle database use a different schema to the one used for authentication

我有一个要在JBOSS中运行的Java Webapp(WAR)。

该webapp将使用具有只读权限的用户名/密码来创建与Oracle数据库的连接。

webapp查询属于不同架构的表。 我通过限定SQL查询中的每个表名来做到这一点。

但是,我想在我的数据源中对此进行参数化,因为架构名称在不同的环境中可以不同。

有没有一种方法可以定义一个JBOSS数据源,该数据源以每个连接的用户A身份登录,但使用模式B进行所有查询?

一种方法是使用new-connection-sqlcheck-valid-connection-sql 数据源属性执行ALTER SESSION SET CURRENT_SCHEMA=yourschema ,这将更改每个连接的默认架构。

推荐的方法是在Oracle中为用户A创建同义词,以访问用户B拥有的架构中的表。通过这种方式,您甚至可以授予用户A特定的特权,以选择,更新,插入另一个UserB拥有的表。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM