直近業務で対応しているPCI DSS関連でContent Security Policy(CSP)を試していて、それをもとにCfPを書いたところ運良く採択されたので発表してきた。 ふわっと内容を決めてタイトルはChatGPTで案を出して決定、CfPや発表の構成については前回同僚氏が登壇したものを大いに参考にして作成したので、半分は氏の功績。どこかで酒をごちそうしなければという思いがある。
CSP導入して数年経ってゴリゴリに分かってますみたいな人から見ると物足りなさそう(だし情報量的にも実際そう)、国内大手のサイトでも入れてるとこ少ないし認知を広げる方向に振り切って資料作ったけど反応は概ね好評だったので一安心。
以下、書きたかったけどあえて落とした内容。 認識はしているのだけれどもこの話をちゃんと盛り込むと時間的に説明しきれないし参加者が持ち帰れる情報として発散しちゃうので除外した。
- script-srcの深堀り
- strict-dynamic, nonce, hash周りを説明し始めると、なぜこれが必要かの理由であったりnonceとSPAとの相性の悪さみたいなところに触れなければ…となってしまうため除外
- 各ディレクティブでの指定リストが無限に伸びてホワイトリストだとやれんかもしれんな、となってから気づいて調べても遅くないかなという判断
- CSP Level2, Level3のギャップと両方への対応
- 実践としてはもちろん必要になる項目なのだけど、概要を説明する際に細部に立ち入り過ぎると参加者を振り落としてしまいそうだったので除外
- 昔のIE向けのスターハックみたいなの思い出すよね
- 調査時に出てきたClassiさんのブログ記事はかなりよかった
- 実践としてはもちろん必要になる項目なのだけど、概要を説明する際に細部に立ち入り過ぎると参加者を振り落としてしまいそうだったので除外
- 実際の普及率
- Web Almanacというところが数値を出しているもので最新版は2022年度版で2024年度版が出るのを待ってたけど出なかったため除外
- 2022年時点だとCSPは14.6%の普及率とのこと
登壇までのタイムラインとしては
- 2024/08/中旬 CfPの案を考え始める
- 2024/08/31 (土) CfP投稿
- 2024/09/09 (月) CfP採択の連絡
- 2024/09/25 (水) 自社カンファレンス
- 2024/10/11 (金) 休みとって資料作成着手
- 2024/10/21 (月) 社内での発表練習
- 2024/10/27 (日) 発表当日
資料は構成を途中で大きく変更するために初稿を一回捨てたり、発表練習しながら違和感あるスライドを捨てたり足したりでほぼ前日まで調整していた。
慣れてきたら資料準備にかかる時間は短縮されるだろうけど、流れの最終調整は発表練習と並行した方が違和感なく仕上がるかなという気がする。できなかったのは資料自体の作り込みで、図表をいい感じにしたりスライドデザインみたいな部分でもう少し改善できただろうなという反省。良かった点は、流れをスムーズにするために前日ちゃんと時間をとって通しで練習したのと、1週間前に社内で発表練習できたのもとてもよかった。台本無しでやると多分練度が上がりきらないだろうなと思って、Google Slideのプレゼンター表示をフル活用したのもよかった。
もうちょっと早く着手して全体感を早めに掴もう、というのはそれはそう。次回はもう少しゆとりもって進めたい。
発表資料作成にあたって流れを作るときはChatGPTをガンガン使いつつ、裏取りにはちゃんとMDNやW3Cの原典にあたったためかMDN側の資料がおかしくない?ということに気づいて本家ドキュメントにコントリビュートできたのもよかった。ちゃんと深堀りするの大事。
毎月登壇あると準備で死ぬけど半期に一回くらいはこういう経験を積みつつ深堀りができるとよさそう。
引き続き精進しましょうね。(沖縄方言でのしましょうね
の用例)