2017-04-10 54 views
0

我正在開發使用Hibernate作爲JPA的JAX-RS(Resteasy)應用程序。後端數據庫是Oracle。目前,我已經在WildFly中定義了一個Oracle數據源,並且針對在數據源中配置的Oracle用戶執行了JPA查詢。JPA - 針對特定數據庫用戶執行查詢

現在我必須圍繞web API實現安全性。爲此,我將使用JWT令牌。我的Oracle數據庫中的App_Users表包含用戶(請注意,這些用戶實際上定義爲Oracle數據庫用戶)。

有兩個要求的位置:

  1. 當用戶發送他的登錄憑證,生成JWT 用戶之前,我要驗證針對甲骨文數據庫 的憑據。

  2. 當用戶發送後/放置請求,爲審計目的,我想執行 對誰在發送數據的用戶插入/更新查詢不 一個誰在WildFly數據源配置。

我可以通過Hibernate JPA實現上述兩個要求嗎?

回答

1

如果你想使用Wildfly提供的DataSource我認爲你不能動態更改每個事務的Oracle用戶。這是爲所提供的DataSource提供的JNDI的應用程序服務器配置的一部分。

我建議創建一個Oracle用戶,在運行時爲您的應用程序使用最小權限集。然後,我會在應用程序本身而不是數據庫級別實施審計。

+0

問題是我不能在應用程序中添加審計功能,因爲它已經在使用觸發器的數據庫級別實施。這是一個遺留數據庫。 –