Tôi có ứng dụng web và hai lĩnh vực cho nó - example.com và example.ruLàm cách nào để đăng nhập một lần với bảo mật mùa xuân trên hai tên miền?
example.com - cho quốc tế
example.ru - cho nước sở tại
My ứng dụng web sử dụng bảo mật mùa xuân đối với người dùng ủy quyền nhưng nếu người dùng đăng nhập thông qua example.com trên example.ru anh ấy không đăng nhập.
Làm cách nào để có thể thực hiện điều đó nếu người dùng đăng nhập qua example.com hoặc example.ru, anh ấy sẽ được ghi lại trên cả hai tên miền?
PS: BTW ứng dụng web của tôi sử dụng ủy quyền thông qua OpenID và OAuth
Cơ chế bạn đang tìm kiếm được gọi là đăng nhập một lần. –
Một vấn đề bạn cần phải giải quyết (tôi nghĩ bạn đang thực hiện nó một mình) là id phiên được lưu trữ nhiều nhất trong một cookie. Nhưng trình duyệt chỉ định cookie cho một miền - vì vậy bạn sẽ cần phải xử lý hai sessionIds khác nhau – Ralph
Cách thích hợp để làm điều này là với SSO như Kurt nói. Vì bạn đang sử dụng OpenID và OAuth, bạn cũng có thể giả mạo đăng nhập một lần bằng cách sử dụng HTTPClient để mở trang web khác và sau đó chuyển cookie trở lại cho người dùng. Tôi đã phải làm điều này trong các môi trường mà chúng ta trộn lẫn Acegi cũ và các ứng dụng Spring Security mới hơn. Nó không đẹp, cũng không phải là điều đúng đắn để làm, nhưng nó nhanh chóng và hoàn thành công việc. – Joe