我添加了cronjobs春季應用程序使用石英。春季石英工作 - 訪問彈簧安全安全豆的方法
這些工作裏面,我想從另一個應用程序訪問spring-security secured bean方法。
這是我的應用程序結構。
| - 核心
| - webapp
| - jobs-app
webapp和jobsapp都使用核心服務。 jobsapp不是一個Web應用程序。它只是石英工作。
裏面一個工作,如果我試圖訪問使用SpringSecurity全球方法的安全性我得到一個異常{org.springframework.security.AuthenticationCredentialsNotFoundException}"org.springframework.security.AuthenticationCredentialsNotFoundException: An Authentication object was not found in the SecurityContext"
如果我設置使用SecurityContextHolder.getContext上下文()。setAuthentication到電力用戶獲得了豆, 有用。
但是,我必須爲所有的工作做到這一點。
有沒有一種方法可以讓所有的工作runas特定用戶?可能是某處的某種配置?
是啊我的作業直接訪問服務bean。但是,我不能將它們移動到web層,因爲如果它們在不同的包中,我使用osgi和註釋不工作。 http://stackoverflow.com/questions/12158403將嘗試第二種方法。感謝您的迴應。 –