Người dùng nhấp “Đăng nhập”, đến trang của nhà cung cấp rồi quay lại Rails. Bước tiếp theo vẫn có thể thất bại vì nó mở một kết nối mới từ máy chủ Rails.

browser → provider authorization page → browser callback to Rails
Rails   → provider token endpoint → Rails

Trình duyệt thực hiện chuyển hướng ủy quyền bằng cấu hình mạng của chính nó. Rails thực hiện trao đổi token qua kênh phía sau bằng ứng dụng khách HTTP do chiến lược OmniAuth đã cài đặt chọn. Một tiến trình chạy sau proxy doanh nghiệp cần tuyến đó trong các yêu cầu gửi đến nhà cung cấp.

OAuth 1.0 cũng có bước token yêu cầu ở phía máy chủ trước khi người dùng ủy quyền truy cập. Luồng mã ủy quyền của OAuth 2.0 có bước trao đổi token riêng sau lệnh gọi lại. Trình tự chính xác phụ thuộc vào chiến lược, nhưng trình duyệt và máy chủ ứng dụng vẫn là những điểm khởi đầu khác nhau.

Tìm cấu hình của ứng dụng khách

Theo chiến lược đến ứng dụng khách HTTP gửi token và các yêu cầu API của nhà cung cấp. Dùng tùy chọn proxy đã được ghi tài liệu của ứng dụng khách đó. Một số chiến lược chuyển tùy chọn của ứng dụng khách cho thư viện OAuth; số khác cấu hình kết nối HTTP bên dưới. Một tùy chọn được một chiến lược chấp nhận không tự động trở thành tùy chọn OmniAuth dùng chung.

Hãy để URL ủy quyền, token và gọi lại của nhà cung cấp mô tả đúng các dịch vụ thực tế của họ. Proxy đầu ra là thiết lập truyền tải để đến được nhà cung cấp, không phải địa chỉ gọi lại thay thế và cũng không phải trường cần thêm vào tham số yêu cầu OAuth.

Khi truy vết đăng nhập, hãy đánh dấu bước hoàn tất cuối cùng. Trang đăng nhập của nhà cung cấp hiển thị chứng minh tuyến của trình duyệt đã hoạt động. Lệnh gọi lại mà Rails nhận được chứng minh trình duyệt đã quay lại. Yêu cầu token tiếp theo chính là nơi cần kiểm tra kết nối proxy, thử thách hoặc phản hồi từ nhà cung cấp do tiến trình Rails tạo ra.

Bài viết liên quan