Alexx The Rocks

雑記。

【integrity】BootstrapでCDNを書き換えた時の、integrity属性の書き換え方

2021年9月18日 更新

Bootstrap4で「slimじゃない」jQueryを使いたい

Bootstrap4以降ではjQuery3系のslimバージョンが標準のようです。slimバージョンではアニメーション系が使えないので、せめてminバージョンを使いたい。
まあ、cssでも出来る内容ではありますが、今までjQueryで使ってたものを流用したい時の備忘録。

「jquery-3.x.x.slim.min.js」を書き換えるだけ?

「jquery-3.x.x.slim.min.js」を「jquery-3.x.x.min.js」に書き換えるだけだと動きません。その後ろの記述「integrity~」以降も書き換えないと動かないので、いっそintegrityを外しても良いかもしれませんが、せっかく標準で書かれてるのでここも書き換えましょう。
なお、integrity属性ついてはMozillaの公式に詳しく書かれています。CDN等から取得したファイルが第三者に改ざんされていないかを検証することにより攻撃のリスクを軽減できるようです。

サブリソース完全性 - ウェブセキュリティ | MDN

ハッシュ値ジェネレーターを使う

CDNからのファイルを書き換える時は、integrity属性も書き換えましょう。ハッシュ値ジェネレーターがあるようです。

SRI Hash Generator

Enter the URL of the resource you wish to use:の下のフォームに、使用したいCDNのURLを入力して「Hash!」をクリックすると、ありがたいことにそのままコピーペーストすれば使える記述が生成されます。

今回のようなケース以外でも、CDNを利用する際は検討してもいいかもしれません。