2017-12-08 8 views
0

私は最近、他のイントラネットWebアプリケーション用のエンドポイントをいくつか開いて、Oracleデータベースの表スペース内の一部のデータを選択するWebAPIプロジェクトを作成しています。私の最大の関心事の1つは、現在、私のAPIへの無効な呼び出しに対するWebAPIの保護です。WebAPI/WebアプリケーションでのHMAC認証アプローチ

私は、私のAPIを呼び出すことができる別の許可されたWebアプリケーションで固有のキーを共有するHMACのアプローチを検討しています。

私の質問は、WebAppのAの開発者が自分のAPIにアクセスし、「許可」にするために彼の他のWebAppのCとキーAを使用することができ、私はWebAppのAとWebAppのBとキーBとキーAを共有すると仮定すると、
です電話?それらに共有される鍵は、他のアプリケーションで悪用される可能性があります。

答えて

0

もちろん、あなたのキーはどこでも使用できます。一般に、HMACアプローチはメッセージを認証するように設計されています。言い換えると、HMACを使用しているときは、鍵所有者(キーが侵害されたシナリオを除く)が要求を送信したことを100%確信しています。鍵所有者がこの鍵を共有することを止めることはできません。しかし、主なことは、 "ホスト" -APIの観点から見ると、特定の鍵で署名されたすべての要求は、同じクライアントと物理的に同じアプリケーションであるかどうかとは無関係に考慮する必要があります。

関連する問題