JBoss数据库身份传播?

时间:2010-12-08 19:33:42

标签: database security postgresql jboss kerberos

我已经了解了IBM的WebSphere如何将用户的身份传播回后端数据库(http://www.ibm.com/developerworks/websphere/techjournal/0506_barghouthi/0506_barghouthi.html)。 JBoss有类似的功能吗?理想情况下,我希望能够使用SPNEGO登录我的JBoss应用程序,并使用Kerberos或其他一些机制将该身份传播回PostgreSQL数据库。这可能吗?

1 个答案:

答案 0 :(得分:0)

您链接到的文章可以用于此,但有一些警告。

让应用服务器重新进行身份验证,因为使用Kerberos的不同用户可能不太现实。根据我对Kerberos的知识(公认有限),它的设计使得最终用户交互需要进行实际的身份验证握手。用户通过HTTP与app服务器进行握手 - 实际上并没有一种机制要求他们用DB本身重新进行身份验证。

如果您的应用服务器以超级用户身份执行与数据库的连接,您可以使用他们的钩子向PostgreSQL发出“SET SESSION AUTHORIZATION TO ...”命令。这实际上不会重新进行身份验证,只是暂时更改会话授权角色。

您还可以使用无数“在DB中存储一些会话信息”解决方案之一(自定义变量,PL / Perl等全局变量)并使用它们的钩子来处理它。这实际上是他们的Oracle解决方案似乎要做的事情,它设置客户端标识符,其中iirc只是dbms_util中的一个全局变量,包含在显示当前会话的视图中(而postgresql 9.0具有执行相同角色的“应用程序名称”)

相关问题