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
SORACOM EndorseによるSIMカードとAWSの認証連携
Search
takipone
January 27, 2016
Technology
0
930
SORACOM Endorseによる SIMカードとAWSの認証連携
SORACOM Conference 2016 “Connected” T4セッション ゲストスピーカー
takipone
January 27, 2016
Tweet
Share
More Decks by takipone
See All by takipone
OJTに夢を見すぎていませんか? ロールプレイ研修の試行錯誤/tryanderror-in-roleplaying-training
takipone
1
160
ロールプレイトレーニングでクラウドエンジニアを短期育成した知見を一挙公開 / roll playing training benefits and cases
takipone
0
630
スキル育成に生かすLlamaIndexの活用 /using-llamaIndex-to-enhance-ones-skills
takipone
1
3.4k
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
takipone
2
11k
Amazon VPC Latticeに期待する / look-for-vpc-lattice
takipone
0
1.1k
DevelopersIOのアウトプット文化をハックして人材育成に繋げる話 /deviosapporo2022fall_takipone
takipone
0
970
AWSネットワークリソースをサービスでマルチテナントに 提供するときのスケーラビリティ / nwjaws202112-takipone
takipone
1
740
ネットワークがクラウドに載って変わることと変わらないこと /nwjaws201909-takipone
takipone
0
2.1k
AWSネイティブなEC/CRMシステム運用に欠かせないログ基盤構築 / cmdevio2018-aws-log-infra
takipone
7
3.1k
Other Decks in Technology
See All in Technology
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
140
第4回Snowflake 金融ユーザー会 Snowflake summit recap
tamaoki
1
330
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
600
推し書籍📚 / Books and a QA Engineer
ak1210
0
120
ロールが細分化された組織でSREは何をするか?
tgidgd
1
160
SREのためのeBPF活用ステップアップガイド
egmc
1
780
ソフトウェアテストのAI活用_ver1.25
fumisuke
1
520
ポストコロナ時代の SaaS におけるコスト削減の意義
izzii
1
190
大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化
plaidtech
PRO
0
260
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
14
6k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
対話型音声AIアプリケーションの信頼性向上の取り組み
ivry_presentationmaterials
1
600
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
970
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
KATA
mclloyd
30
14k
Six Lessons from altMBA
skipperchong
28
3.9k
Adopting Sorbet at Scale
ufuk
77
9.5k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
How to train your dragon (web standard)
notwaldorf
96
6.1k
Transcript
SORACOM Endorseによる SIMカードとAWSの認証連携 SORACOM Conference 2016 “Connected” classmethod.jp 1 2016/1/27
⼤瀧隆太
About me • ⼤瀧隆太 Ryuta Otaki ID : @takipone •
おしごと プリセールス/エンジニア @クラスメソッド • 好きなSORACOMサービス SORACOM Beam classmethod.jp 2
About us • クラスメソッドは本⽇、SPSインテグレー ションパートナーに認定されました。 • 事業会社に向けてSORACOM&クラウドを 活⽤したITシステムの構築をご⽀援します。 • AWSを⽤いたデータ分析・可視化が得意です。
classmethod.jp 3 NEW!!
About us • クラスメソッドは技術ブログの会社です。 • Developers.IO http://dev.classmethod.jp/ • SORACOMネタで30本あります。 classmethod.jp
4
例えばこれ • JWTの解説記事、 あります。 • 「jwt 電⼦署名」 で検索 • これから紹介する
構成もブログで 公開済みです。 classmethod.jp 5
今回構築したところ SORACOMが提供 SIMカードとAWSの認証連携 classmethod.jp 6 Endorse 公開鍵 in S3 AWS
API Endorse SORACOM API Amazon API Gateway AWS Lambda AWS IAM SORACOM Air SIM トークンを リクエスト、取得 トークンを渡して AWS APIキーを取得 AWS APIキーで APIをコール 1 2 3
1. トークンの取得 classmethod.jp 7 OK
1. トークンの取得 classmethod.jp 8 Air SIM経由以外の経路、 Endorseが無効のAir SIMからの アクセスはエラーになる NG
今回構築したところ SORACOMが提供 2. トークン検証とAWS⼀時キー発⾏ classmethod.jp 9 Endorse 公開鍵 in S3
SORACOM API API Gateway (ディスパッチャ) AWS Lambda (ロジック) AWS IAM (APIキー発⾏者) リクエスト : JWT署名済トークン レスポンス : AWS APIキー Endorse a. JWT公開鍵を 取得して トークンを検証 b. トークンに 含まれるIMSI をリスト照会 c. APIキー発⾏
2. トークン検証とAWS⼀時キー発⾏ classmethod.jp 10 3: var jwt = require('jsonwebtoken'); :
17: // トークンをデコード 18: var decoded = jwt.decode(event.token, {complete: true}); 19: // デコードしたペイロードからIMSIを取得 20: var imsi = decoded.payload['soracom-endorse-claim'].imsi; 21: // デコードしたヘッダに含まれるキー名からキーストアのURLを⽣成し、取得 22: request(sora_keystore + decoded.header.kid, function (err, response, body){ 23: var pubkey = body; 24: try { 25: // トークンの検証が成功すればtryブロックを継続 26: jwt.verify(event.token, pubkey);
デモ1 classmethod.jp 11
ONE MORE!(デモ2) classmethod.jp 12
Endorseトークン取得をデバイスで • USBトークン/3Gモデム兼⽤のデバイスがあるといいなぁ • PCのネットワークは接続させずトークン取得専⽤にすれ ば、SORACOMの従量課⾦で維持費は少額で済む • SIMの有効/無効はリモートからAPIで操作できるので、デ バイスの有効/無効は思いのまま。 •
IMEI(デバイス固有ID)でSIM盗難対策もOK classmethod.jp 13 USBトークン 3Gモデム
作ってみました • USBのプログラミングを知らないのでBLE(Bluetooth Low Energy)で作ってみました。 classmethod.jp 14 SORACOM Endorse BLEペリフェラル
(OpenBlocks IoT BX1) BLEセントラル (Macbook) トークン 取得 ReadCharacteristic トークン⽂字列
• Enjoy happy Endorse life!! classmethod.jp 15