0
@RunAs註釋允許通過僅指定角色的名稱來訪問bean。這意味着任何能夠輕鬆訪問我的bean的外部客戶端只是指向角色名稱,不是嗎?EJB3 @RunAs註釋和安全
我想調用者和bean位於不同的服務器上。
那麼@RunAs需要什麼,如果它很容易僞造客戶端? 或者如何正確使用它,如果我錯了?
@RunAs註釋允許通過僅指定角色的名稱來訪問bean。這意味着任何能夠輕鬆訪問我的bean的外部客戶端只是指向角色名稱,不是嗎?EJB3 @RunAs註釋和安全
我想調用者和bean位於不同的服務器上。
那麼@RunAs需要什麼,如果它很容易僞造客戶端? 或者如何正確使用它,如果我錯了?
它有點不同。有關更多詳細信息和示例,請參見WebSphere Application Server V7.0 Security Guide中的第9.6章。
當一個bean調用另一個bean中的方法時,默認情況下調用者 的標識傳播到下一個。通過這種方式,調用鏈中的所有EJB方法 在調用getCallerPrincipal()方法時都會看到相同的主體。
然而,有時候,一個EJB需要以先前定義的標識調用另一個EJB ,例如,某個特定角色的成員是 。
的@RunAs
註解定義將用於委託的作用。您仍然可以使用@RolesAllowed
保護第一個bean。在應用程序部署期間,必須將此runAsRole
映射到來自用戶註冊表的實際用戶。