2012-03-16 18 views
5

Tôi muốn mã máy chủ web của tôi (được gọi từ bộ điều khiển trang ASP.NET MVC3) để có thể lưu tệp vào tài khoản Dropbox.Không giám sát DropBox .net back end access

Tôi đã kiểm tra hai trong số ba thư viện .Net/Dropbox và tất cả chúng yêu cầu người dùng "xác thực" qua chuyển hướng web tới Dropbox để nhận mã thông báo.

lib được kiểm tra là Spring.Social.Dropbox và DropNet.

Xác thực và tải lên này có thể được thực hiện thông qua mã thuần túy mà không gây rối với trình duyệt của người dùng không? Mã thông báo có được có được lưu lại để sử dụng sau này không? Đây là câu hỏi lý thuyết, không phải về việc thực hiện cụ thể.

Trả lời

4

Đây là một chủ đề phức tạp. Theo như tôi biết Dropbox sử dụng OAuth, đây là giao thức xác thực và ủy quyền.

quá trình chung là thế này:

  1. Bạn tạo yêu cầu cấp phép thẻ
  2. tài khoản được chuyển hướng, xác thực và trợ cấp quyền truy cập vào ứng dụng của bạn.
  3. Bạn giao dịch token yêu cầu cho một access token
  4. Bạn phải lưu các thẻ truy cập bởi vì nó được sử dụng để thực hiện hành động trên danh nghĩa người dùng

truy cập thẻ thường không hết hạn và chỉ ngừng làm việc nếu người dùng thu hồi quyền ứng dụng của bạn.

Điều này có nghĩa là người dùng sẽ phải xác thực và ủy quyền cho ứng dụng của bạn ít nhất một lần để bạn có thể nhận mã thông báo truy cập và mã thông báo truy cập.

Sau đó, bạn hoàn toàn tự do thực hiện các hành động thay mặt người dùng dựa trên các quyền được cấp. Bạn phải chỉ định mã thông báo truy cập đã đạt được theo quy trình nêu trên để thực hiện hành động.

Tóm lại, nhận mã thông báo truy cập, lưu mã thông báo, sử dụng mã đó cho các yêu cầu.

Điều này có làm rõ điều này một chút cho bạn không?

+0

Cảm ơn. Bởi bây giờ tôi đã thực hiện serialization mã thông báo và đã sử dụng thành công nó trong một ứng dụng thử nghiệm. Trước khi thử nghiệm, tôi không chắc chắn rằng mã thông báo oauth cuối cùng là "cho cuộc sống" hoặc "mỗi phiên". –

+0

Bạn có thể đưa ra ví dụ về cách bạn sắp xếp mã thông báo không? –

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