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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
caru
June 06, 2024
Programming
0
590
TypeScriptでAmazon Cognitoのエミュレーターを開発し始めた話
TechTalkフェス 登壇資料
caru
June 06, 2024
Tweet
Share
Other Decks in Programming
See All in Programming
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
150
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
180
20260313 - Grafana & Friends Taipei #1 - Kubernetes v1.36 的開發雜記:那些困在 Alpha 加護病房太久的 Metrics
tico88612
0
220
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
160
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
3
1.1k
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.5k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
240
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
270
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
190
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
240
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
600
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Side Projects
sachag
455
43k
Accessibility Awareness
sabderemane
0
82
Everyday Curiosity
cassininazir
0
170
Git: the NoSQL Database
bkeepers
PRO
432
66k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
150
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
160
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
250
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
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のエミュレータの需要やユースケースについて フィードバックいただけると幸いです!