Bất cứ ai có thể giải thích cho tôi sự khác biệt chính giữa SSO do SP khởi tạo và SSO do IDP khởi xướng là gì, bao gồm giải pháp nào sẽ là giải pháp tốt hơn để triển khai đăng nhập một lần cùng với ADFS + OpenAM Federation?
Bất cứ ai có thể giải thích cho tôi sự khác biệt chính giữa SSO do SP khởi tạo và SSO do IDP khởi xướng là gì, bao gồm giải pháp nào sẽ là giải pháp tốt hơn để triển khai đăng nhập một lần cùng với ADFS + OpenAM Federation?
Câu trả lời:
Trong IDP Init SSO (SSO Web không mong muốn), quá trình Liên kết được bắt đầu bởi IDP gửi một phản hồi SAML không mong muốn tới SP. Trong SP-Init, SP tạo AuthnRequest được gửi tới IDP như là bước đầu tiên trong quy trình Liên kết và IDP sau đó sẽ phản hồi bằng một Phản hồi SAML. Hỗ trợ IMHO ADFSv2 cho SAML2.0 Web SSO SP-Init mạnh hơn hỗ trợ IDP-Init tái: tích hợp với các sản phẩm của Fed bên thứ 3 (chủ yếu xoay quanh hỗ trợ cho RelayState) vì vậy nếu có lựa chọn, bạn sẽ muốn sử dụng SP- Init vì nó có thể sẽ làm cho cuộc sống dễ dàng hơn với ADFSv2.
Dưới đây là một số mô tả SSO đơn giản từ Hướng dẫn bắt đầu PingFederate 8.0 mà bạn có thể xem qua cũng có thể hữu ích - https://documentation.pingidentity.com/pingfederate/pf80/index.shtml#gettingStartedGuide/task/idpInitiatedSsoPOST.html
IDP đã khởi tạo SSO
Từ tài liệu PingFederate: - https://docs.pingidentity.com/bundle/pf_sm_supportedStandards_pf82/page/task/idpInitiatedSsoPOST.html
Trong trường hợp này, người dùng đã đăng nhập vào IdP và cố gắng truy cập tài nguyên trên máy chủ SP từ xa. Xác nhận SAML được chuyển đến SP qua HTTP POST.
Các bước xử lý:
SP Khởi tạo SSO
Từ tài liệu PingFederate: - http://documentation.pingidentity.com/display/PF610/SP-Initiated+SSO--POST-POST
Trong trường hợp này, người dùng cố gắng truy cập tài nguyên được bảo vệ trực tiếp trên một trang Web SP mà không cần đăng nhập. Người dùng không có tài khoản trên trang SP, nhưng có tài khoản liên kết do IdP bên thứ ba quản lý. SP gửi một yêu cầu xác thực đến IdP. Cả yêu cầu và xác nhận SAML trả về đều được gửi qua trình duyệt của người dùng thông qua HTTP POST.
Các bước xử lý:
Thông tin bổ sung về người dùng có thể được truy xuất từ kho dữ liệu người dùng để đưa vào phản hồi SAML. (Các thuộc tính này được xác định trước như một phần của thỏa thuận liên kết giữa IdP và SP)
Dịch vụ SSO của IdP trả về một biểu mẫu HTML cho trình duyệt với phản hồi SAML chứa xác nhận xác thực và bất kỳ thuộc tính bổ sung nào. Trình duyệt tự động đăng biểu mẫu HTML trở lại SP. LƯU Ý: Các thông số kỹ thuật của SAML yêu cầu các phản hồi POST phải được ký điện tử.
(Không hiển thị) Nếu chữ ký và xác nhận hợp lệ, SP thiết lập một phiên cho người dùng và chuyển hướng trình duyệt đến tài nguyên đích.
Lập hóa đơn cho người dùng: "Này Jimmy, hãy cho tôi xem báo cáo đó"
Jimmy the SP: "Này, tôi chưa chắc bạn là ai. Chúng tôi có một quy trình ở đây để bạn tự xác minh IdP với Bob trước. Tôi tin tưởng anh ấy."
Bob the IdP: "Tôi thấy Jimmy đã cử bạn đến đây. Vui lòng cung cấp cho tôi thông tin đăng nhập của bạn."
Lập hóa đơn cho người dùng: "Xin chào, tôi là Bill. Đây là thông tin đăng nhập của tôi."
Bob the IdP: "Xin chào Bill. Có vẻ như bạn đã thanh toán."
Bob the IdP: "Này Jimmy. Anh chàng Bill này đã kiểm tra và đây là một số thông tin bổ sung về anh ta. Bạn có thể làm bất cứ điều gì bạn muốn từ đây."
Jimmy the SP: "Được rồi. Có vẻ như Bill cũng nằm trong danh sách những vị khách đã biết của chúng tôi. Tôi sẽ cho Bill vào."
Gửi hóa đơn cho người dùng: "Này Bob. Tôi muốn đến chỗ của Jimmy. Ở đó an ninh được thắt chặt."
Bob the IdP: "Này Jimmy. Tôi tin tưởng Bill. Anh ấy đã kiểm tra và đây là một số thông tin bổ sung về anh ấy. Bạn có thể làm bất cứ điều gì bạn muốn từ đây."
Jimmy the SP: "Được rồi. Có vẻ như Bill cũng nằm trong danh sách những vị khách đã biết của chúng tôi. Tôi sẽ cho Bill vào."
Tôi đi vào chi tiết hơn ở đây, nhưng vẫn giữ mọi thứ đơn giản: https://jorgecolonconsults.com/saml-sso-in-simple-terms/ .