問題タブ [subresource-integrity]
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.
html - サブリソースの整合性: 警告のみを表示し、リソースをブロックしない方法は?
サブリソース整合性属性のソフト統合を行いたいので、アプリケーションを壊していないことを確認してください。ただし、いくつかの場所を修正する必要があるという警告を表示するだけです。
そうするオプションはありますか?
security - package-lock.json は、サブリソースの整合性チェックによって構築されたアプリケーションのセキュリティを向上させることも意図していますか?
package-lock.jsonファイルについて次のことを読みました。
このファイルは、ソース リポジトリにコミットすることを目的としており、さまざまな目的に使用されます。
- チームメイト、デプロイ、および継続的インテグレーションがまったく同じ依存関係をインストールすることが保証されるように、依存関係ツリーの単一の表現を記述します。
- ディレクトリ自体をコミットすることなく、ユーザーが node_modules の以前の状態に「タイムトラベル」できる機能を提供します。
- 読み取り可能なソース管理の差分により、ツリーの変更をよりわかりやすくするため。
- また、npm が以前にインストールされたパッケージの繰り返しのメタデータ解決をスキップできるようにすることで、インストール プロセスを最適化します。
NPMJS docs package-lock.json descriptionを参照してください。
しかし、同じリンクによる別のフラグメントでは、次のように表示されます。
威厳§
これは、このリソースの標準サブリソース整合性です。
- バンドルされた依存関係の場合、ソースに関係なく、これは含まれません。
- レジストリ ソースの場合、これはレジストリが提供する整合性です。提供されていない場合は、shasum で SHA1 が提供されます。
- git ソースの場合、これはクローン元の特定のコミット ハッシュです。
- リモート tarball ソースの場合、これはファイルの SHA512 に基づく整合性です。
- ローカル tarball ソースの場合: これは、ファイルの SHA512 に基づく整合性フィールドです。
NPMJS ドキュメント package-lock.json の依存関係の整合性を参照してください。
Standard Subresource Integrity (SRI) へのリンクをたどると、次のことがわかりました。
1.1。目標
- サードパーティ サービスの侵害は、スクリプトを含むすべてのサイトの侵害を自動的に意味するものではありません。コンテンツ作成者は、ロードするコンテンツに対する期待を指定できるメカニズムを持ちます。たとえば、特定の URL を持つスクリプトではなく、特定のスクリプトをロードできます。
W3C サブリソースの整合性を参照してください
だから、NPMJSドキュメントのpackage-lock.jsonの説明で、セキュリティの目的が言及/リストされていないのはなぜだろうと思っています。個人的には、package-lock.json を使用してアプリケーションのセキュリティを向上させるというアイデアも気に入っています (ロックされている実際の依存関係を慎重に確認し、VCS リポジトリにチェックインされているロック ファイルを変更すると同時に、package.jsonにいくつかの変更を加えて、アプリに侵入することによる改ざんされた依存関係)。
しかし、おそらく私は何かを見逃しており、何らかの理由でロックファイルを上記で説明したセキュリティ目的に使用することはできません.
symfony - サブリソースを介したsymfonyボーターが呼び出されていません
コンテキストは次のとおりです。
Symfony 3.4 と api-platform を使用しています。
私は2つのクラスを持っています:
- サプライヤー
- 製品
仕入先の全商品を一覧表示したい
Supplier エンティティでは、通常の CRUD メソッドに access_control を実装しました。
また、正常に機能しないサブリソースを通るルートもあります。
問題は、サブリソースのアクセス制御が機能しないことです。そこでは、このリソースに対する許可について投票者をチェックすることになっていますが、投票者をチェックせず、403 を返す必要があるときに HTTP 応答コード 200 を返します。
access_control の代わりにセキュリティを使用しているドキュメントを確認しました。
そして、それも機能しません。
有権者が呼び出されない理由についての手がかりやヒントを誰かが持っていますか?