Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Author: @progfay Provenance in Node学園 44時限 目
Slide 2
Slide 2 text
Name: 眞野 隼 輔 ま の しゅんすけ @progfay ɾWeb Frontend Engineer ɾBrowser पΓͷಈΛ͏ͷ͕झຯ ・ 最近は謎解きにハマっている (CTF 気分)
Slide 3
Slide 3 text
・ JSR の Provenance という機能を使ってみたので共有 ・ その中で得られた知識について ・ 嬉しそうなところ ・ イケてなさそうなところ 話すこと
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
・ せっかく作った package なので、いろんな実験をしてる ・ ESLint → Biome に移 行 してみたり ・ 脆弱性を 見 つけて CVE を発 行 してみたり ・ Jest → Vitest → Node.js Test Runner に移 行 してみたり @progfay/scrapbox-parser
Slide 6
Slide 6 text
No content
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
No content
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
そもそも Provenance ってなんだ?
Slide 11
Slide 11 text
https://eow.alc.co.jp/search?q=provenance
Slide 12
Slide 12 text
https://jsr.io/docs/trust 元となったソースコード と publisher を検証できるようにする
Slide 13
Slide 13 text
・ transparency log が表 示 できる ・ publish process が 自 動化される ・ token などの漏洩の危険性が減らせる ・ 実際には GHA から publish することのメリット ・ でも 自 動化のモチベーションになるのは喜ばしい package 開発者は何が嬉しい?
Slide 14
Slide 14 text
・ package の安全性を検証できる ・ Provenance 自 体は安全性を保証してくれるわけではない ・ 開発側が適切に package を publish する必要がある ・ 悪意のあるコードが混 入 しづらくなる ・ サプライチェーン攻撃などに 一 定の効果があるはず package 利 用 者は何が嬉しい?
Slide 15
Slide 15 text
やってみるか!
Slide 16
Slide 16 text
1 . `jsr.json` を作成する 2 . JSR package と GitHub Repository を link する 3 . GitHub Actions Workflow を追加する 4 . Workflow を trigger する Publish to JSR
Slide 17
Slide 17 text
No content
Slide 18
Slide 18 text
OIDC により access token の設定が不要 デフォルトで Provenance される!
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
ついでに npm も
Slide 22
Slide 22 text
npm では access token の設定が必要
Slide 23
Slide 23 text
No content
Slide 24
Slide 24 text
・ access token を管理する必要がない ・ 発 行 する必要すらないので、漏洩のリスクを減らすことができる ・ GitHub Actions を利 用 していれば Provenance される ・ Provenance を知らなくても勝 手 にやってくれるのは嬉しい JSR Provenance の良いところ
Slide 25
Slide 25 text
・ npm は GitHub Actions 以外でも Provenance ができる ・ GitLab なら `--provenance` をつけるだけ ・ その他でも `--provenanceFile` を使えばできるっぽい? npm Provenance の良いところ
Slide 26
Slide 26 text
・ 思ったより簡単にできた ・ Package の評価指標の 1 つにもなりそう ・ Provenance がされているか ・ リリース 手 順がどうなっているか 使ってみた感想