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
80
0
Share
冬休みに作ったフロントエンドOIDC実装の解決策:vite-plugin-oidc
ViteプラグインでOpenID Connectプロトコルに準拠したOIDCスタブを実装しました。
そのプラグインの説明と簡単な使い方です。
kouki.miura
January 30, 2026
More Decks by kouki.miura
See All by kouki.miura
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
140
Laravel入門:最小構成で理解するMVC
koukimiura
0
100
VueSapporo#1
koukimiura
0
40
Vue.jsを10分で再定義する
koukimiura
1
49
なぜVue開発は速いのか?-Vite入門
koukimiura
0
64
Vueでつくるシングルページアプリケーション(SPA)入門
koukimiura
0
42
スライドもVueで書く時代? Slidev入門
koukimiura
0
49
Vuetify 3 → 4 何が変わった?差分と移行ポイント10分まとめ
koukimiura
0
260
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
160
Other Decks in Programming
See All in Programming
夢の無限スパゲッティ製造機 -実装篇- #phpstudy
o0h
PRO
0
190
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.8k
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
290
AI活用のコスパを最大化する方法
ochtum
0
370
Mastering Event Sourcing: Your Parents Holidayed in Yugoslavia
super_marek
0
140
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
210
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
300
How to stabilize UI tests using XCTest
akkeylab
0
150
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
1
240
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
440
おれのAgentic Coding 2026/03
tsukasagr
1
130
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
220
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Raft: Consensus for Rubyists
vanstee
141
7.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Building an army of robots
kneath
306
46k
Docker and Python
trallard
47
3.8k
The Cult of Friendly URLs
andyhume
79
6.8k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
53k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
170
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
350
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
500
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実装したい ・ログイン画面→ユーザー(プロファイル)選択画面に変えたい 等...