在Spring 4.3.x中,我有一個自定義類,將其稱爲MyWebAuthenticationDetails,用於擴展WebAuthenticationDetails。我需要使用在application.properties中定義的那個類中的屬性。我通過一個名爲AuthenticationProperties的自定義類來獲取這些屬性,該類使用@ConfigurationProperties。通常我會在類構造函數的AuthenticationProperties中自動裝入,但MyWebAuthenticationDetails不可能。我如何從WebAuthenticationDetails的擴展中訪問屬性?如何在自定義WebAuthenticationDetails中使用我的自定義ConfigurationProperties?
-1
A
回答
0
由於您MyWebAuthenticationDetails
定製的細節對象將通過AuthenticationDetailsSource
豆(你應該已經申報)來構建,您可以訪問AuthenticationProperties
作爲注入豆因此,你將有你所有的屬性訪問。
一個簡單的Java配置模板將如下所示(請注意,這不是一個完整的功能配置,僅旨在突出重要的配置項):
@Configuration
@EnableWebMvcSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authenticationDetailsSource(myAuthenticationDetailsSource())/* and all the missiong HTTP configuration*/;
}
@Bean
private AuthenticationDetailsSource<HttpServletRequest, MyWebAuthenticationDetails> myAuthenticationDetailsSource() {
return new MyAuthenticationDetailsSource<HttpServletRequest, MyWebAuthenticationDetails>();
}
private final class MyAuthenticationDetailsSource extends AuthenticationDetailsSourceImpl<HttpServletRequest, MyWebAuthenticationDetails> {
@Autowired
private AuthenticationProperties authenticationProperties;
@Override
public MyWebAuthenticationDetails buildDetails(HttpServletRequest request) {
return new MyWebAuthenticationDetails(request, this.authenticationProperties);
}
}
}
+0
我完全忘記了這是通過AuthenticationDetailsSource impl創建的。謝謝! – SpringGuy
相關問題
- 1. 如何使用我的自定義.png自定義UISwitch?
- 2. 如何在自定義BaseAdapter中使用自定義字體
- 3. 如何在自定義模板中使用自定義屬性?
- 4. 如何使用自定義名稱在sequelize-cli中定義自定義主鍵
- 5. 使用我的自定義函數敲除自定義綁定
- 6. 如何在定義中引用自我?
- 7. 我在dotcloud自定義域,如何在自定義域
- 8. 如何自定義自定義滾動?
- 9. 在android自定義視圖中我如何編程我的自定義視圖?
- 10. 在codeigniter中使用自定義庫內的自定義庫?
- 11. 在F#中使用自定義的OnPaint自定義Windows.Forms控件?
- 12. 我如何自定義UIControlSwich
- 13. 如何使用自定義對象創建自定義對象?
- 14. 如何自定義SharePoint工作流使用自定義WrkTaskIp.aspx頁?
- 15. 如何在運行時自定義XML中定義的自定義drawable?
- 16. 如何在用戶自定義函數中使用自定義類型?
- 17. 在自定義對象中使用自定義方法
- 18. 在自定義jQuery類中使用自定義函數功能
- 19. 在自定義助手中使用自定義助手
- 20. 無法在自定義UITableView類中使用自定義UITableViewDataSource
- 21. 如何定義和使用Scala中的自定義註釋
- 22. 如何在自定義模板中插入自定義ID - CDT
- 23. 如何在自定義類中創建自定義IBActions?
- 24. 在自定義小部件中自定義onClickListner - 如何?
- 25. SharePoint - 如何在自定義功能中自定義NewForm.aspx?
- 26. 如何在自定義主題中添加自定義字段
- 27. 如何在composer中定義自定義自動加載器?
- 28. 如何在自定義中插入和添加自定義行?
- 29. 如何在其他自定義項目中的自定義項目中引用自定義屏幕
- 30. 我如何將自定義窗體添加到自定義模塊中的自定義塊中
添加您的相關代碼質疑 – user7294900