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
TypeScriptでAmazon Cognitoのエミュレーターを開発し始めた話
Search
caru
June 06, 2024
Programming
660
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TypeScriptでAmazon Cognitoのエミュレーターを開発し始めた話
TechTalkフェス 登壇資料
caru
June 06, 2024
Other Decks in Programming
See All in Programming
バグを直したら useEffect が消えた
colorful12
3
840
週末にAI-DLCを本気で回したら$1,600溶けた
hbashimizu
0
130
[DroidKaigi 2026] Bring your own phones to Gradle Managed Devices
f2lk
0
110
ALB ログから Trace を気合で繋げる技術
fohte
7
880
新卒PdEのリアル
ryu1013
1
420
高専、大学編入、そして未踏へ〜プロダクト開発とキャリアの歩み - Technical College, University Transfer, and On to “Mitou” / My Journey in Product Development and Career
pkmiya
0
140
Building an Out-of-Order CPU
latte72
0
700
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
650
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
0
380
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
3
1.1k
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
210
アクセシビリティから考える情報設計
high_g_engineer
0
260
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to make the Groovebox
asonas
2
2.4k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
230
Designing Powerful Visuals for Engaging Learning
tmiket
1
530
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Technical Leadership for Architectural Decision Making
baasie
3
560
KATA
mclloyd
PRO
35
15k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
870
Optimising Largest Contentful Paint
csswizardry
37
3.9k
For a Future-Friendly Web
brad_frost
183
10k
Transcript
TypeScriptでAmazon Cognitoの エミュレータを開発し始めた話 Caru (かる)
2 先輩 今日 00:00 OSS開発をやってみませんか? ※ イメージ
3 © 2009 サマーウォーズ 制作委員会
出てきた課題 4 既存のOSSを使えば良いのでは...? LocalStack × Amplify UIとDockerの相性問題 × データの永続化が困難 MotoServer
× Cognito機能が有料(AWSは基本無料)
Magnitoについて 5 frourio Inbucket 認証メール(SMTP) /Client ユーザー管理 /Server 互換API Docker
Image Magnito (npm package) 届いたメールはlocalhostから確認可能 フロントからバックエンドまで TypeScriptで開発 認証エンドポイントの切り替えだけ で使用可能
自己紹介 6 Caru (かる) 2005年生まれ (18歳) 大学生 (東洋大学 情報連携学部) INIAD.ts所属
最近触っている技術: Cloudflare Workers Magnitoでの担当: パスワード認証の実装 caru caru-ini
デモ 7 • サイトはNext.js + Amplify UIで作られています • 認証のエンドポイントをlocalhostに切り替えてあります •
他に特別なことはしていません
8 SRPの仕組み ユーザー登録 ユーザー名 パスワード ケンジ君 クライアント サーバー ユーザー名, ソルト,
検証子 DB OZ 検証子 ソルト (ランダム) © 2009 サマーウォーズ 制作委員会
9 SRPの仕組み ログイン時(Hello) ケンジ君 クライアント サーバー ユーザー名, SRP_A DB OZ
SRP_B SRP_B 生成 ランダム数字 検証子 SRP_A ランダム
10 SRPの仕組み ログイン時(Verify) SRP_A ケンジ君 クライアント サーバー OZ SRP_B SRP_A
SRP_B ユーザー名、パスワード 検証子 証拠 証拠 両者が一致すればログインは成功! 違う計算方法 詳しくは Zennで!
未来 11 • Magnitoは GitHubで公開中 スターよろしくお願いします! frouriojs / magnito •
Cognitoのエミュレータの需要やユースケースについて フィードバックいただけると幸いです!