Hiểu OAuth Web Server Flow: phép so sánh vườn bia
Chào mừng bạn trở lại với loạt bài Bảo vệ danh tính! Trong kỳ này, chúng ta đi sâu hơn vào OAuth Web Server Flow, mở rộng phép so sánh vườn bia trước đây đồng thời mang đến những góc nhìn chi tiết về sự phức tạp của luồng này.
Quay lại phép so sánh vườn bia
Trong một phép so sánh trước, chúng ta đã ví quá trình nhận access token (hay chiếc vòng đeo tay trong phép so sánh) với việc gọi bia ở một vườn bia. Máy khách (một robot) dẫn bạn đến máy chủ xác thực sau khi máy chủ tài nguyên từ chối truy cập vì thiếu access token. Sau khi xác thực thông tin đăng nhập của bạn, máy chủ xác thực cấp một access token, cho phép bạn truy cập dữ liệu được yêu cầu từ máy chủ tài nguyên.

Giới thiệu một bên thứ ba: Nhà Burger
Trong phép so sánh mở rộng này, chúng ta giới thiệu một bên thứ ba, Nhà Burger, cần lấy bia từ vườn bia bằng thông tin đăng nhập của bạn. Quá trình này gồm cả một kênh front-end (kém an toàn hơn, thể hiện bằng màu đỏ) và một kênh back-end (an toàn hơn, thể hiện bằng màu đen).
Quy trình từng bước:

Yêu cầu tại Nhà Burger: Bạn gọi bia tại Nhà Burger, nơi không có bia.
Chuyển hướng: Bạn được chuyển hướng đến website công khai của máy chủ xác thực qua một kênh front-end kém an toàn hơn.
Xác thực: Bạn đăng nhập vào Salesforce, và Salesforce cấp một authorization code (thể hiện bằng một đồng xu xanh).
Đổi authorization code: Nhà Burger nhận authorization code và trình nó cho máy chủ xác thực qua một kênh back-end an toàn.
Nhận token: Nhà Burger nhận một access token và có thể cả một refresh token khi xác thực thành công.
Yêu cầu dữ liệu: Dùng access token, Nhà Burger yêu cầu dữ liệu từ máy chủ tài nguyên, kết hợp nó với dữ liệu của mình, và trình bày cho bạn.
Các yếu tố then chốt của OAuth Web Server Flow:
Hai kênh: Luồng gồm một kênh front-end kém an toàn hơn và một kênh back-end an toàn.
Authorization code: Một authorization code tạm thời được dùng cho các lần trao đổi an toàn, rồi bị hủy bỏ.
Giấy phép kinh doanh: Nhà Burger phải có một giấy phép đặc biệt (consumer key và secret) để hoạt động thay mặt chủ sở hữu tài nguyên, đảm bảo các lần trao đổi an toàn và được phép.
Kết luận
OAuth Web Server Flow phức tạp nhưng then chốt cho việc truy cập dữ liệu an toàn, đặc biệt khi có bên thứ ba tham gia. Luồng này bảo vệ trước các cuộc tấn công tiềm ẩn, đảm bảo giao dịch an toàn và toàn vẹn dữ liệu.
Hãy đón xem
Hãy tự tin bắt đầu hành trình Salesforce Identity của bạn! Để có thêm góc nhìn và mẹo hay, hãy theo dõi tại www.SteveTechArc.com và kênh YouTube @SteveTechArc (opens in a new tab). Hãy đăng ký và nâng cao hiểu biết của bạn về Salesforce Identity.
Góp phần thay đổi thế giới bằng cách chia sẻ kiến thức tích hợp với các kiến trúc sư đồng nghiệp và những ai đang trên hành trình trở thành kiến trúc sư!
Bản ghi lời thoại được AI hỗ trợ
STA 3.12