2017-12-05 16 views
0

私は*のSPAでたくさん働いている間の通信を保護する方法。したがって、私はAPIベースのバックエンドを使用してSPA-ORM *のエンティティデータを取得しています。これは簡単で、うまく動作します。APIバックエンドとSPAのフロントエンド

は今、私は多くの人々によって使用されるプライベートなプロジェクトに取り組んでいます。私はSPAのない私のAPIの誤用を防ぎたい。 スクリプトキディーがAPIを誤用するのを少し難しくする方法はありますか?

戻る私の時間で:D私は非常に低いレベルでデータを暗号化するために、簡単なキーを使用するために使用されます。しかし、現在のdev-toolsのf.e.クロムを使用すると、SPAで何かを簡単にデバッグでき、データがどのように暗号化/醜化されているかを知ることができます。私はここでオプションの外です。

SSLは、私にとっては十分ですので、私は、接続の確保に興味がありません。ユーザーのパスワードセキュリティも安全です(現代のフレームワークはここでうまくいきます)。私は知識が不足しているため、SPAなしでAPIを使用するのをより困難にする方法です。 私は両端を開発しているので、私が好きなAPIを作ることができます。ヒント、ベストプラクティス、アイデアはありますか?


脚注:

  • SPA =単一ページアプリケーション(などVueJS、角度、エンバー、等)
  • ORMは、オブジェクト関係マッピング=(VueXように、燃えさしデータ、等)
+0

あなたがAPIを開発しているので、私は唯一のcookie.TheスクリプトがあなたのSPAで実行されているHTTPとして設定し、ヘッダとして送信するよりも、認証に、あなたはSPA.RatherにJWTまたはトークンのいくつかの並べ替えを送信していることを前提としていクッキーにアクセスできません。その後のリクエストでは、ブラウザはリクエストにこのCookieを追加します。簡単に言えば、スクリプト(自分のもの)はトークンの詳細にアクセスできません。ブラウザの砂場はそれを囲みます。あなたのSPAで(コメントなどで)何らかのスクリプト注入が行われた場合、彼らはクッキー内のJWTにアクセスできないのでセッションをハイジャックすることはできません。 – Ananda

答えて

0

あなただけのコールを認証する必要があります。 APIに接続するアプリケーション(またはその他のもの)は、認証トークンを提示する必要があります。

あなたは、例えば

  • は(OpenIDを代わりに使用する必要がありますが、OAuthの使用が一般的であり、サービスの誤用である)oAuthを経由して他の誰かに認証をオフロードでき、それを行うには、さまざまな方法があります。
  • (コメント以下)はOBFにあることを(順番に認証トークンを提供するだろう)、あなたのAPIへの認証を行うでしょう、あなたのSPAでのログインフォーム

行うには非常に悪い方法を持っています誰もあなたのJSコードとAPIの間で共有する秘密を発見しないように、呼び出しを呼び出します。

関連する問題