Giả sử tôi có một trang web có một số thông tin có thể truy cập từ bên ngoài. Những thông tin đó chỉ cần thay đổi bởi khách hàng được kính trọng. Ví dụ: Google API phân tích hoặc WordPress API. Làm thế nào tôi có thể tạo một hệ thống hoạt động như thế (bất kể ngôn ngữ lập trình) là gì?Làm cách nào để thiết lập hệ thống khóa API cho trang web của bạn?
Trả lời
Một số người thông minh đang làm việc theo tiêu chuẩn và được gọi là OAuth. Nó đã có một số sample implementations, do đó, nó khá dễ dàng để bắt đầu.
đơn giản:
- Tạo một chìa khóa cho mỗi người dùng
- Từ chối truy cập cho từng yêu cầu mà không cần chìa khóa
Một cách này tốt tạo ra một chìa khóa sẽ được lưu trữ một GUID (Trên toàn cầu Số nhận dạng duy nhất) trên mỗi bản ghi người dùng n cơ sở dữ liệu. GUID sẽ là duy nhất và hầu như không thể đoán được.
Hiện tại, tôi sử dụng kết nối nhiều MD5 với muối. Các MD5 được tạo ra từ các kết nối khác nhau của dữ liệu người dùng.
Here là tài liệu về thiết kế API.
Tôi cung cấp cho bạn 1 điểm nhưng tài liệu là người mới bắt đầu ... Hầu hết mọi thứ là khái niệm mã hóa đơn giản. –
Ngoài ra còn có các dịch vụ cơ sở hạ tầng quản lý tất cả điều này cho bạn như http://www.3scale.net (tiết lộ tôi làm việc ở đó), http://www.mashery.com và http://www.apigee.com/.
- 1. Bạn đề xuất hệ thống phiên bản nào cho trang web của mình?
- 2. Làm thế nào để bạn triển khai một trang web cho máy chủ web của bạn?
- 3. Làm cách nào để thiết lập thử nghiệm tải/căng thẳng cho trang web?
- 4. Làm cách nào để hệ thống chọn đúng Bảng Trang?
- 5. Làm cách nào để tạo các API của trang web
- 6. Hệ thống huy hiệu trang web
- 7. Hệ thống giới thiệu trang web
- 8. Bạn sẽ thiết kế hệ thống tin nhắn như thế nào twitter, cách thiết kế hệ thống nhắn tin?
- 9. Làm cách nào để lập hóa đơn cho các dịch vụ web của bạn?
- 10. Thiết lập theo hệ thống derby.system.home
- 11. Làm thế nào để thiết lập JsonSerializerSettings tùy chỉnh cho Json.NET trong MVC 4 Web API?
- 12. Làm cách nào để tìm giá từ trang web của Amazon theo lập trình?
- 13. Làm cách nào để bạn tạo điều hướng trang web?
- 14. Trang web của Django Framework thiết lập ban đầu
- 15. Làm thế nào để thiết lập biến môi trường cho tất cả mọi người trong hệ thống Linux của tôi?
- 16. Hệ thống hồ sơ người dùng trang web pandora
- 17. Làm cách nào để bạn thiết lập tác vụ cron?
- 18. Trang web lập trình dành cho thiết bị di động
- 19. API độc lập với hệ điều hành để giám sát hệ thống tệp?
- 20. Cấu trúc cơ sở dữ liệu cho hệ thống nhận xét trang web
- 21. Làm thế nào để thiết lập hệ thống scons bao gồm đường dẫn
- 22. Làm cách nào để thiết lập khóa cho thao tác đọc-thao tác ghi?
- 23. AIR - thiết lập kích thước của NativeWindow để bao gồm hệ thống chrome
- 24. Có cách nào tiêu chuẩn để xác thực ứng dụng cho API web của bạn không?
- 25. Làm cho hệ thống .Tây lửa.Timers.Timer cháy ngay lập tức
- 26. Tôi làm cách nào để ngăn các ứng dụng web độc lập của iOS khóa thiết bị?
- 27. Làm cách nào để bạn thiết lập .vimrc
- 28. Làm cách nào để xây dựng quy tắc dựa trên DB cho hệ thống thành tích ứng dụng web?
- 29. Làm cách nào để thiết lập các biến toàn trang web trong php?
- 30. có lập trình Sáng tạo và Config của UITabBarController - Thiết lập một hệ thống hình ảnh cho một tab
Đồng ý. Pownce.com và nhiều người khác đã triển khai thành công/sản xuất OAuth và cách tốt nhất là IMO để có được kết quả sau này. – bryanpearson
Trang web của OAuth giải thích rõ tình hình. Thx cho giải pháp. –