セキュリティ・認証 / サプライチェーン対策
SRIとは
Subresource Integrity。外部JS/CSSが改ざんされていないかハッシュで確認する仕組みです。
用語集内のカードを見るセキュリティ・認証 / サプライチェーン対策
Subresource Integrity。外部JS/CSSが改ざんされていないかハッシュで確認する仕組みです。
用語集内のカードを見るSRIを、定義だけで終わらせず、現場で出てくる場面、確認材料、見落としやすい点、関連語とのつながりまで順に確認できます。
実務メモ
SRIはCDN上のライブラリ、外部JS/CSS、タグ配信、静的アセット保護で効きます。外部リソース更新後の表示崩れやConsoleのintegrityエラーで確認します。
証跡には読み込み元URL、integrity値、sha方式、crossorigin属性、ハッシュ生成コマンド、CDN設定、実配信URL、ブラウザConsole結果を残します。
正規更新でもハッシュ再生成を忘れるとリソースが実行されません。CDNが圧縮や変換で内容を変える場合、手元ファイルのハッシュと実配信内容がずれることがあります。
SRI(Subresource Integrity)は、外部JS/CSSが改ざんされていないかをハッシュで確認する仕組みです。CDN上のライブラリや静的アセットを読み込むとき、期待した内容だけを実行させるために使います。
実務では、scriptタグやlinkタグのintegrity、sha256/384/512、crossorigin、CDN更新、ビルド手順、CSPとの関係を確認します。
証跡には、対象URL、読み込み元URL、integrity値、ハッシュ生成コマンド、crossorigin属性、更新日時、ブラウザでのブロック有無を残します。
SRI付きの外部リソースは、ブラウザが取得後にハッシュを計算し、HTMLに書かれたintegrity値と照合します。不一致ならスクリプトやCSSは実行・適用されません。
これは改ざん検知として有効ですが、正規のCDN更新でもハッシュが変わります。ライブラリのバージョン固定、更新手順、ロールバック手順をセットで考えます。
外部リソースでSRIを使う場合、crossorigin属性が必要になる場面があります。CDN側のCORS応答やキャッシュ設定が影響するため、HTML側だけでは判断できません。
同じファイルでもCDN、オリジン、圧縮、変換設定により内容が変わるとハッシュ不一致になります。配信経路で実際に取得されるバイト列を確認します。
CSPは読み込み元を制限し、SRIは読み込んだ内容が期待どおりかを確認します。どちらか一方では、外部リソースの利用リスクを十分に説明できないことがあります。
外部スクリプトを許可する場合は、なぜそのドメインを許すのか、SRIで固定できるのか、タグ管理や動的生成により固定できないのかを記録します。
SRI対応では、対象リソース、integrity値、生成手順、更新者、CDN設定、失敗時の影響を残します。外部ライブラリ更新のたびに壊れやすいため、保守手順が重要です。
引き継ぎでは、フロントエンド担当、Web基盤担当、セキュリティ担当、関連語としてCSP、CDN、SHA-256、HTMLを残すと確認しやすくなります。
同じ主要カテゴリの用語をまとめて確認できます。現在の用語を起点に、前後の用語へ進むと文脈を保ったまま読み進められます。