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
0
63
冬休みに作ったフロントエンドOIDC実装の解決策:vite-plugin-oidc
ViteプラグインでOpenID Connectプロトコルに準拠したOIDCスタブを実装しました。
そのプラグインの説明と簡単な使い方です。
kouki.miura
January 30, 2026
Tweet
Share
More Decks by kouki.miura
See All by kouki.miura
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
3
生成AIを "同僚" として使う ~設計・実装・ログ解析の実践例~
koukimiura
0
57
24時間止められないシステムを守る-医療ITにおけるランサムウェア対策の実際
koukimiura
2
170
PHPでネイティブアプリ開発 - NativePHP
koukimiura
0
52
ビルトインウェブサーバーでPHP開発
koukimiura
0
61
生成AI × 仕様駆動開発 ~Kiroで見えた業務アプリ開発の未来~
koukimiura
0
150
Flutterで分数(Fraction)を表示する方法
koukimiura
0
190
HTMLで分数をどう表示する?MathMLの紹介と使い方
koukimiura
0
97
ゲームとかの最初に使い方を教えてくれるアレ
koukimiura
1
73
Other Decks in Programming
See All in Programming
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
22
7.9k
AI時代の認知負荷との向き合い方
optfit
0
180
Amazon Bedrockを活用したRAGの品質管理パイプライン構築
tosuri13
5
880
Apache Iceberg V3 and migration to V3
tomtanaka
0
210
PJのドキュメントを全部Git管理にしたら、一番喜んだのはAIだった
nanaism
0
200
atmaCup #23でAIコーディングを活用した話
ml_bear
4
610
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
350
個人開発は儲からない - それでも開発開始1ヶ月で300万円売り上げた方法
taishiyade
0
110
CSC307 Lecture 10
javiergs
PRO
1
690
Lambda のコードストレージ容量に気をつけましょう
tattwan718
0
190
あなたはユーザーではない #PdENight
kajitack
4
200
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜 / Understanding nil in Go Interface Representation and Why nil != nil
kuro_kurorrr
1
340
Featured
See All Featured
Believing is Seeing
oripsolob
1
65
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
120
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
78
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Become a Pro
speakerdeck
PRO
31
5.8k
How to make the Groovebox
asonas
2
2k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
170
WCS-LA-2024
lcolladotor
0
470
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
160
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
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実装したい ・ログイン画面→ユーザー(プロファイル)選択画面に変えたい 等...