ウェブサイトがAPIを消費する正面に面しており、APIを消費するより強力な役割を持つユーザーのバックエンドもある場合、サイトの両方の部分で同じAPIまたは異なるAPIを使用する必要があります(例:/ api/v1/resourceName vs/api/admin/resourceName)?公開エンドポイントとプライベートエンドポイント用に別々のAPIが必要ですか?
5
A
答えて
5
これは実際の状況によって異なります。プライベートエンドポイントを絶対にプライベートにしなければならない場合、別々のAPIだけが唯一の解決策です。一般的には、それは過度のようです。ほとんどの状況では、最初から単一のAPIを維持し、セキュリティを考慮してプライベートエンドポイントを設計することをお勧めします。
別のAPIのあなたは公共システムにプライベートAPIの2つのコードベース、または少なくともポートの部分を維持する必要が
- 。
- 2つの運用APIシステムを更新する必要があります。
- セキュリティの向上:ユーザーのキー/パスワードなどが破られた場合や、一般公開APIがセキュリティを処理する方法にエラーがあった場合でも、公開クライアントはAPIのプライベート内部リソースにアクセスすることはできません。
同じAPI
- つのコードベースと一つのサーバ。
- セキュリティがより重要になります。パブリッククライアントが内部リソースにアクセスできないようにする必要があります。セキュリティ違反、またはプライベートエンドポイントのセキュリティに関する監視が深刻な問題を引き起こす可能性があります。
+0
@Brian、どのように個人的にアプローチしたのか、あなたの好きなアプローチは何ですか? – user2727195
関連する問題
- 1. APIエンドポイント用のJSONスキーマを公開していますか?
- 2. 公開net.tcpエンドポイント
- 3. 公開ページフィードにアクセストークンが必要なのはなぜですか?
- 4. C++ライブラリのAPIでサードパーティの型を公開する必要があります
- 5. アプリケーションの改善と公開。アドバイスが必要です
- 6. SOAP Webサービス:WSDLの公開ページが必要ですか?
- 7. .snkファイルから公開鍵を公開する必要はありますか?
- 8. 一般公開のWebサイトにはrobots.txtファイルが絶対に必要ですか?
- 9. カメラからストリームを公開するにはFMSが必要ですか?
- 10. appstoreでアプリを公開するにはウェブページが必要ですか?
- 11. アプリストアに公開するには最低限必要なiOS SDKが必要ですか?
- 12. Facebook Open Graphアクションを公開するためにURLが必要
- 13. 公開githubアカウントをクローンするにはSSHキーが必要ですか?
- 14. APIにはステータスメソッドが必要ですか?
- 15. MVC3パーシャルビューにはコントローラが必要ですが、非公開にすることはできますか?
- 16. ドメインとEFに別々のモデルを使用する必要がありますか?
- 17. Junitのテストメソッドを公開する必要があるのはなぜですか?
- 18. APIを公開することなくAjaxを公開
- 19. リクエストごとにREST APIにパスワードとログインが必要ですか?
- 20. 異なる密度のアプリケーションを別々にアップロード/公開することはできますか?
- 21. 「スーパーバイザー」と「ユーザー」モードを別々にする必要はありますか?
- 22. 私はPCエージェントと一緒にAndroid用に開発するために別々のEclipseプロジェクトが必要ですか
- 23. 個々のサウンドにはAVAudioPlayerのインスタンスが必要ですか?
- 24. Caliburn.Microがすべてのメソッドを公開する必要がありますか
- 25. Sinatra AWS SNSエンドポイント - ヘルプが必要
- 26. 印刷用に別のhtmlページが必要ですか?
- 27. Sphinx公開APIドキュメント
- 28. MonoTouchはiPhone/iPod TouchにMacを公開する必要がありますか?
- 29. iOSアプリの公開 - 別の著者名での公開
- 30. comオブジェクトを扱うには、API固有の開発者が必要ですか?
どのようにあなたの経験でしたか、私は今、2つの間で決定するために同じジレンマを持っています、あなたの経験を共有してください。 – user2727195