Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
冬休みに作ったフロントエンドOIDC実装の解決策:vite-plugin-oidc
Search
kouki.miura
January 30, 2026
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
冬休みに作ったフロントエンドOIDC実装の解決策:vite-plugin-oidc
ViteプラグインでOpenID Connectプロトコルに準拠したOIDCスタブを実装しました。
そのプラグインの説明と簡単な使い方です。
kouki.miura
January 30, 2026
More Decks by kouki.miura
See All by kouki.miura
ReactとVueは仲良くできるのか?
koukimiura
0
34
ポジティブアウトカムを用いた医療費削減の可能性について
koukimiura
0
66
VueSapporo#2
koukimiura
0
52
Vuetify4 v-calendarをちゃんと理解する
koukimiura
0
65
認証統合から始めるフロントエンドの機能単位開発 — マイクロサービス思想の適用
koukimiura
0
130
Fiberとは何か?PHPが“非同期言語”になった瞬間
koukimiura
0
88
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
220
Laravel入門:最小構成で理解するMVC
koukimiura
0
160
VueSapporo#1
koukimiura
0
82
Other Decks in Programming
See All in Programming
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
300
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
210
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
460
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
240
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
340
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
210
Performance Engineering for Everyone
elenatanasoiu
0
260
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
390
act1-costs.pdf
sumedhbala
0
170
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
140
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
250
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
380
Featured
See All Featured
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
180
Code Reviewing Like a Champion
maltzj
528
40k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
870
Documentation Writing (for coders)
carmenintech
77
5.4k
The SEO Collaboration Effect
kristinabergwall1
1
500
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
Agile that works and the tools we love
rasmusluckow
331
22k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
300
Un-Boring Meetings
codingconduct
0
330
Mobile First: as difficult as doing things right
swwweet
225
10k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
冬休みに作ったフロントエンドOIDC実装の解決策 :vite-plugin-oidc 2026.01.30 SAPPORO ENGINEER BASE #13 冬休みアウトプットLT大会 三浦 恒樹
(MIURA KOUKI) 診療情報管理士 上級医療情報技師 医用画像情報専門技師 ドゥウェル株式会社
長男が飼っている ハリネズミのモンちゃん がアイコン INTRODUCE ・ドゥウェル株式会社 (医療系IT開発・導入会社)に所属 ・マネージャー(プレイング・マネージャー) ・TypeScript, Vue.js, Node.js,
Java,C#, PHP ・3児の父、休日は子どものサッカー観戦 ・参加している勉強会 札幌PHP勉強会、JBUG札幌、JavaDO、ゆるWeb勉強会、えびてく、 クラメソ札幌IT勉強会(仮)、AWS初心者LT会in札幌、 札幌すごいAI会、札幌IT石狩鍋、函館本線沿線勉強会 等 ・ヘビーローテーション(開発生産性に寄与する楽曲たち) ラックライフ(Hand,Naru,Believe)、BLUE ENCOUNT(ポラリス,Survivor) SHANK、Dizzy Sunfist
・OIDCとは? ・フロントエンドOIDC実装の課題 ・フロントエンドOIDC実装の解決アイデア ・vite-plugin-oidcの紹介 ・viteとは? ・viteプラグインとは? ・vite-plugin-oidcの使い方 ・vite-plugin-oidcのデモ ・2026年の2つの目標設定 ・vue-sapporoの紹介
・まとめ INDEX
OIDCとは? https://learn.microsoft.com/ja-jp/entra/architecture/auth-oidc
フロントエンドOIDC実装の課題 開発するアプリ OIDCサーバー
フロントエンドOIDC実装の解決アイデア 開発するアプリ OIDCサーバー= viteプラグインで解決! 環境作り・準備を意識しなくて よくなる=開発スピードアップ
vite-plugin-oidcの紹介 https://www.npmjs.com/package/vite-plugin-oidc 特徴 ・Authorization Code Flow + PKCE完全サポート ・Vite開発サーバーによるゼロ・コンフィギュレーション ・マルチ・ユーザー・アカウント対応
・カスタマイズ可能なエンドポイント、JWT、トークン期限 ・OIDCディスカバリー、JWKS、UserInfoエンドポイント対応 ・ロギング、エラーメッセージによる開発者サポート ・PKCE必須、リダイレクト先URI検証等のセキュリティ重視 ・イン・メモリによる軽量設計 メンテナー、コミッター募集! いっしょにOIDC開発環境にコントリビュートしていきませんか?
viteとは? https://ja.vite.dev/ ・vite=フランス語で「素早い」 ・発音は「ヴィート」 ・[vite]=高速なHMR、豊富な機能拡張を提供する開発サーバー ・[vite build]=Rollupでコードバンドル ・プラグインを通じてフレームワークやツールとの統合が可能 ※HMR: Hot
Module Replacement
viteプラグインとは? ・vite.config.tsで読み込まれる拡張機能 ・開発サーバーやビルド実行時に、読み込まれたプラグインの フック(コールバック)が呼び出される https://ja.vite.dev/guide/api-plugin
Viteプラグインとは? - フック一覧
vite-plugin-oidcの使い方 # pnpm add oidc-client-ts # pnpm add -D vite
vite-plugin-oidc 1.依存関係(npmパッケージ)追加 { "scripts": { "dev": "vite" }, "devDependencies": { "vite": "^7.3.1", "vite-plugin-oidc": "^0.0.4" }, "dependencies": { "oidc-client-ts": "^3.4.1" } } package.json 通常のOIDCクライアントと して必要なライブラリ viteとvite-plugin-oidc を開発用に 依存関係はこれだけ!
vite-plugin-oidcの使い方 2.vite設定(vite.config.ts) 4ファイル クライアント(RP)設定 ユーザー設定 /idpでOIDCスタブ
vite-plugin-oidcの使い方 3.index.html
vite-plugin-oidcの使い方 4.index.ts /idpが認証サーバー
vite-plugin-oidcのデモ
2026年の2つの目標設定 テックブログはじめました。 週1ペース(52本/年)でアウトプットしていきます。 1 2 札幌のVue.jsエンジニアLT会 VueSapporoを6回/年開催。 Vue.jsエンジニアの皆さん、一緒にVue関連技術を学びましょう。
vue-sapporoの紹介
ご清聴ありがとうございました。 まとめ ・OIDC認証を含むフロントエンド開発時、OIDCサーバー(OP)のセットアップが課題 →Vite開発サーバーとOIDC連携すれば楽! : 解決策 →Vite開発サーバーでOIDCする為にプラグインを開発 : 冬休み(にも)作った ・vite-plugin-oidcはKiroで実装後、リファクタリングを進めている →メンテナー、コミッター募集中です。 ・コードをきれいにしたい、UT実装したい ・ログイン画面→ユーザー(プロファイル)選択画面に変えたい 等...