免責事項: 私は実際には開発者ではありません。時々コードを書くことを楽しんでいます:)
最近、AngularJS とブラウザー側の MVC フレームワーク全般について学び、それを試してみることにしました。Angular のドキュメントのほとんどは、サーバー側のことについて詳しく説明していないため、これはユーザーの自由な選択として残されています。Angular の$resource
サービスを読んだ後、MongoDB や CouchDB などの DB が RESTful インターフェイスを独自に公開していることを知りました。これは明らかな疑問をもたらしました - どうやってそのようなものを保護しますか?
「従来の」Web アプリケーションでは、ユーザーを認証し、データへのアクセスを承認する役割を担うサーバー側のレイヤーがあります。それが完了すると、サーバー側のコードは、固定された一連の資格情報 (webapp ユーザー ID に関係なく同一) を使用して、基礎となるデータ ストア (RDBMS など) と通信します。もちろん、このモデルを複製して、REST インターフェースを公開し、同様に動作する CRUD コードを作成することもできます。を使用したい場合$resource
、webapp ユーザーを一部のdbユーザーに関連付ける必要がありますか? コードに表示されるため、一般的な資格情報のセットを使用できません-中間レイヤーを作成しているか、あるユーザーセットを別のユーザーセットに結び付けているようです。
この問題が通常どのように解決されるのか興味があります - ご覧のとおり、私にはいくつかのアイデアがあります。私の経験不足のため、ここでのベストプラクティスに興味があります:) 一般的な意味で、これは少し広い質問になる可能性があります.フォームの検証やその他の「承認」のようなロジックは?
tl;dr : RESTful db アクセスをどのように保護していますか? アプリケーション ロジックをどのように保護しますか?