2017-09-26 20 views
5

Tôi đang sử dụng bảo mật Mùa xuân trong ứng dụng web của mình và tôi đang sử dụng Javaconfig cho nó. Gần đây chúng tôi cũng đã thêm xác thực Spring SAML trong ứng dụng và cuối cùng đã làm việc sau một số trở ngại. Bên trong số onStartUp() của tôi đang tải cấu hình SpringSecurity hoặc cấu hình SpringSaml dựa trên một số điều kiện trước.Cách tự động chuyển ngữ cảnh ứng dụng trong Spring Security?

Bây giờ, làm cách nào để tôi có thể thực hiện điều này một cách linh hoạt? Trên thực tế, tôi sẽ giới thiệu một nút và khi quản trị viên nhấp vào nút quản trị viên này và tất cả người dùng sẽ bị đăng xuất và bối cảnh phải được tải lại. Tại thời điểm này ok của nó nếu hệ thống là không thể tiếp cận cho đôi khi và nó lại khởi tạo bối cảnh ứng dụng (mà thực sự là mục tiêu của tôi)?

Nói cách khác làm cách nào tôi có thể gọi phương thức onStartUp()WebApplicationInitializer?

+1

Tôi nghĩ rằng nó có thể được thực hiện mà không cần tải lại bối cảnh ứng dụng mùa xuân. Ngay cả khi bối cảnh của bạn được làm mới, bạn có thể phải đối mặt với các tác dụng phụ khác. [Câu hỏi này] (https://stackoverflow.com/questions/27545846/spring-integration-getting-exception-on-refreshing-application-context-2nd-time) cung cấp cách làm mới ngữ cảnh ứng dụng từ bộ điều khiển nhưng kết thúc trong các vấn đề khác nhau. Nếu bạn có thể chia sẻ một số mã cấu hình của mình, điều đó có thể hữu ích để cung cấp câu trả lời tốt hơn. – skadya

Trả lời

6

Bạn sử dụng Cấu hình môi trường mùa xuân để kiểm soát cấu hình bảo mật nào được tải.

Để chuyển cấu hình, sau đó bạn cập nhật tệp cấu hình liệt kê các cấu hình hiện hoạt và tải lại ứng dụng.

Xem Spring Boot Reference Guide - 25. Profiles.

+0

Cảm ơn câu trả lời của Andreas. Bạn có thể chia sẻ cách "tải lại ứng dụng" theo chương trình hay không. ? – aProgrammer

+0

@aProgrammer Nếu bạn sử dụng 'spring-boot-devtools', việc cập nhật tệp cấu hình sẽ tự động kích hoạt một LiveReload: Xem [Hướng dẫn tham khảo khởi động Spring - 83. Trao đổi nóng] (https://docs.spring.io/spring-boot /docs/current/reference/html/howto-hotswapping.html). – Andreas

Các vấn đề liên quan