2013-07-27 24 views
5

Nếu trang web có mặt trước công khai tiêu thụ API và cũng có phụ trợ cho người dùng có vai trò mạnh mẽ hơn cũng tiêu thụ API, cả hai phần của trang web đều sử dụng cùng API hoặc các API khác nhau (ví dụ:/api/v1/resourceName vs/api/admin/resourceName)?Có nên có các API riêng biệt cho các điểm cuối công cộng và riêng tư không?

+0

trải nghiệm của bạn như thế nào, tôi đã cùng một tình huống khó xử để quyết định giữa hai giờ, hãy chia sẻ kinh nghiệm của bạn. – user2727195

Trả lời

5

Điều này thực sự tùy thuộc vào hoàn cảnh của bạn. Nếu các điểm cuối riêng tư của bạn hoàn toàn phải duy trì riêng tư, thì các API riêng biệt là giải pháp tuyệt đối duy nhất. Nói chung, điều đó có vẻ như quá mức cần thiết. Đối với hầu hết các trường hợp, tôi khuyên bạn nên duy trì một API duy nhất và thiết kế các điểm cuối riêng tư của bạn với sự bảo mật trong đầu từ đầu.

API riêng của

  • Bạn phải duy trì hai căn cứ mã, hoặc ít nhất là phần cảng API tin của bạn vào một hệ thống công cộng.
  • Bạn phải duy trì hai hệ thống API sản xuất.
  • Bảo mật tốt hơn: khách hàng công cộng sẽ không thể truy cập tài nguyên nội bộ riêng tư trên API của bạn, ngay cả khi khóa/mật khẩu người dùng/v.v. bị vi phạm hoặc có lỗi trong cách API công khai xử lý bảo mật.

The Same API

  • Một codebase và một máy chủ.
  • Bảo mật sẽ quan trọng hơn. Bạn phải đảm bảo khách hàng công khai không thể truy cập tài nguyên nội bộ. Vi phạm an ninh, hoặc giám sát về an ninh trên các thiết bị đầu cuối riêng tư của bạn có thể gây ra các vấn đề nghiêm trọng.
+0

@Brian, cách bạn tiếp cận cá nhân hoặc cách tiếp cận ưa thích của bạn hoặc trải nghiệm của bạn với cả hai cách tiếp cận – user2727195

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