2012-11-13 26 views
13

OAuth2 2 chân được sử dụng cho ứng dụng dựa trên Trình duyệt, nơi không có thông tin đăng nhập của khách hàng nào có thể bị ẩn khỏi công khai. OAuth2 3 chân được sử dụng bởi "Ứng dụng máy chủ web", nơi có cuộc gọi thứ ba giữa các máy chủ. All well described here.Tại sao có OAuth2 3 chân khi 2 chân hoạt động tốt như vậy?

Câu hỏi: Tại sao phải bận tâm với 3 chân, khi 2 chân có vẻ ổn?

Nó hoạt động tốt hơn cho cả nhà cung cấp và khách hàng. Tại sao không một trong những cầu thủ lớn làm cho một di chuyển và gỡ bỏ 3 chân?

+0

http://hueniverse.com/2012/07/on-leaving-oauth/ – PeeHaa

+1

cập nhật liên kết ... http://aaronparecki.com/articles/2012/07/29/1/oauth2-simplified – Adrian

Trả lời

46

Ba chân không hàm ý một loại ứng dụng nhất định như trong "dựa trên trình duyệt". Ba chân có nghĩa là một ứng dụng hoạt động thay mặt trực tiếp cho người dùng. Trong ba kịch bản chân có

  1. một ứng dụng (người tiêu dùng),
  2. một người sử dụng (chủ sở hữu tài nguyên) và
  3. một API (nhà cung cấp dịch vụ).

Trong hai trường hợp chân không có khái niệm về người dùng. Thông thường điều này phải làm với các giải pháp ứng dụng đến ứng dụng. Có ứng dụng (người tiêu dùng) hành động thay mặt cho chính nó. Vì vậy, trong hai OAuth, có:

  1. một ứng dụng (người tiêu dùng),
  2. một API (nhà cung cấp dịch vụ)

Sự khác biệt chỉ đơn giản là không có cần một bước sử dụng uỷ quyền trong cách tiếp cận 2 chân.

+0

Vâng, bạn nói đúng. Tôi hiểu lầm những gì "2 chân" và "3 chân" thực sự có nghĩa là. Tôi sẽ thiết lập một câu hỏi mới. Tôi sẽ làm cho câu trả lời này là chính xác, vì bạn đã thấy lỗi của tôi. –

+0

FYI: http://stackoverflow.com/questions/13387698/why-is-there-an-authorization-code-flow-in-oauth2-when-implicit-flow-works-s –

+0

Đó là lý do tại sao tôi yêu SO! – Faizan

1

Kịch bản 2 chân tồn tại. Ví dụ, kiểm tra tài liệu về Google Apps domain-wide delegation of authority. Tất nhiên chúng chỉ có thể được sử dụng trong môi trường đáng tin cậy bởi một chủ sở hữu siêu tài khoản - Trong ví dụ tôi đã nói ở trên: quản trị viên miền Google Apps là chủ sở hữu siêu của tất cả tài khoản người dùng của miền mà anh ta quản trị.

3 Chân phải được sử dụng trong môi trường web mở. Bạn cần sự chấp thuận của chủ sở hữu tài nguyên để cấp quyền truy cập vào dữ liệu của nó cho ứng dụng của bên thứ ba.

+0

Có , Tôi trộn lẫn mọi thứ lên. (xem http://stackoverflow.com/questions/13369516/why-is-there-3-legged-oauth2-when-2-legged-work-so-well/13384100#comment18284216_13384100) –

+0

FYI: http: // stackoverflow .com/questions/13387698/why-is-there-an-authorization-code-flow-in-oauth2-when-implicit-flow-works-s –

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