問題タブ [jwe]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
webapi - JWEでWeb APIを保護し、匿名で実行し、その他のオプションを使用する
私は以下を含むアプリケーションを持っています:
- .net コア 3.1
- Microsoft .net コアのスキャフォールディング ID
- ef コア 3.x
- vue.js
- ネットコア Web API
(重要な情報: すべてが 1 つのサーバー上の 1 つのソリューションにあります)
そして今、Web Api を保護することを検討しています。このアプリケーションは銀行として安全である必要はありませんが、最低限のセキュリティよりも少し多く実装したいと考えています。
問題
API を保護したい
私が何をした
だから私はすでにアイデンティティの承認を持っています。そして、ユーザーがデータを入力できるようにするすべてのリクエストには、[Authorize] (Idenitiy を使用) を使用しています。
私の質問
- Rest API がある場合は JWE 暗号化を使用する必要があるという複数の場所を読みました。許可されたユーザーのみがデータを送信できることがわかっている場合、JWE も必要ですか? 機密情報はありません。(しかし、私がこれを見たすべての場所で、アプリケーションはユーザー名/パスワードを追跡します)
- 承認を必要としない複数の GET リクエストがあります。そこでJWEを使用する必要がありますか?また、ユーザーに関する情報 (ユーザー名/電子メールなど) がない場合、暗号化するためにどのユーザー情報を使用する必要がありますか?
- 「全員」が情報を取得/呼び出しできないように、Getcalls を保護する他の方法はありますか? 有効にしました (cors)
3 つの質問は互いに関連しているため、それらを分離することで、サポートが必要な詳細に対応しやすくなります。
jwt - JWE nimbus-JOSE の真正性と JavaScript 対応物
JSON Web 暗号化を使用するために、 Java nimbus-JOSEのこの素晴らしいライブラリを見つけました。このライブラリはシンプルで、以下に示す JWE 暗号化のように、JWE 暗号化と復号化に数行しか必要ありません。
ただし、javadocs とドキュメントを読んだ後でも、このライブラリについていくつか質問がありました。特にJWEとこのライブラリに関しては、
- JWE を復号化した後、JWE の真正性をどのように検証しますか? JWE には「署名」がありません。では、JWE の 5 つの部分はどのように有効性を確認するのに役立ちますか? ライブラリでこれに対するサポートはありますか?
- ヘッダーとクレーム以外の JWT の他のフィールドは、ライブラリによってランダムに生成されますか? (これについて明確な証拠を見つけることができませんでした。)
- alg: "RSA-OAEP", enc: "A128GCM" を使用すると、暗号化するたびに異なる JWE を取得するはずですが、同じ JWE を取得しています。RSA-OEAP-256 はこれを防ぐべきではありませんか? 暗号化と復号化フローの詳細なシーケンスは何ですか?
- Javascript で同様のライブラリを見つけようとしましたが、Java 用の nimbus-jose のようなライブラリを見つけることができませんでした。誰かが推奨事項を持っている場合は、以下で助けてください! 私の質問を手伝ってくれる人に感謝します。すべての入力を歓迎します。:)