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
APIGatewayからDynamoDBを直接操作してみた.pdf
Search
amarelo_n24
June 24, 2021
Technology
890
1
Share
APIGatewayからDynamoDBを直接操作してみた.pdf
amarelo_n24
June 24, 2021
More Decks by amarelo_n24
See All by amarelo_n24
バケットポリシーの記述を誤りマネコンからS3バケットを操作できなくなりそうになり、ルートアクセス管理を有効にしたおひとり様Organizationsの話
amarelo_n24
0
36
AWS Certified Generative AI Developer - Professional Beta 不合格体験記
amarelo_n24
1
310
マルチパートアップロードをする時にS3はどのような挙動をしているのか?
amarelo_n24
0
73
ひとりAWS BuilderCards 会を開催した話_SecurityExpansion
amarelo_n24
1
85
ひとりAWS BuilderCards 会を開催した話
amarelo_n24
1
40
re:Invent初参加者が感じたre:Invent を楽しむために必要なこと
amarelo_n24
0
59
おひとり様Organizations管理者もルートアクセス管理を有効にしよう!
amarelo_n24
2
150
アウトプット再始動2025・つなげるアウトプット2026
amarelo_n24
0
79
AWS re_Invent に全力で参加したくて筋トレを頑張っている話
amarelo_n24
2
150
Other Decks in Technology
See All in Technology
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
2.5k
AIにフローを作らせようとして挫折した話
hamatsutaichi
0
170
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
180
Cloud Run のアップデート 触ってみる&紹介
gre212
0
310
新アーキテクチャ「TiDB X」解説とDedicated比較 TiDB Cloud Premiumのゲーム運用活用を検証
staffrecruiter
0
110
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
250
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
1.8k
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
47
52k
Unlocking the Apps
pimterry
0
220
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
470
個人最適 から 全体最適 へ AI情報共有会・AIギルド・AI-DLC で進める カンリーの組織展開
rfdnxbro
0
1.5k
生成 AI × MCP で切り拓く次世代 SRE!自律型運用への挑戦と開発者体験の進化
_awache
0
150
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
170
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
220
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
エンジニアに許された特別な時間の終わり
watany
107
250k
Done Done
chrislema
186
16k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
190
Accessibility Awareness
sabderemane
1
130
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Transcript
API Gateway からDynamoDBを 直接操作してみた 2021/6/24 JAWS-UG 朝会
自己紹介 氏名 :藤田 直幸 twitter:@amarelo_n24 ※ コーヒー焙煎人兼エンジニアと名乗ってます。 職場:都内にある企業の情報セキュリティ統制担当 資格:AWS認定クラウドプラクティショナー ソリューションアーキテクトアソシエイト
※デベロッパーアソシエイトを7/2に受験予定! 好きなAWSサービス:AWS CLI、AWS CloudShell、Cloud9 好きなコーヒー :ブラジル ブルボンアマレロ
1.はじめに 2.今回の構成 3.設定内容 4.まとめ 話すこと
1.はじめに
先日、山下さん主催の勉強会「ヤマムギ」で実施した、 API Gatewayから直接DynamoDBに書き込む(PutItem)デモを 自分の環境で再現してみました。また、デモで学んだことを参考 にして読み取り(GetItem)もやりましたので、その話をします。 ※イベントページ https://yamamugi.connpass.com/event/213548/
今回は実施したことの一部のみお話しますが、 詳細な手順をZennに書きました! こちらも読んでいただけると幸いです🙇 https://zenn.dev/amarelo_n24/articles/ab083b0358e902
2.今回の構成
以下のようなシンプルな構成です。 Amazon API Gateway Amazon DynamoDB Client AWS Cloud POST
GET PutItem GetItem
3.設定内容
デフォルト設定で、テーブルを一つ作成します。 ※ローカルセカンダリインデックス等の設定もなし。 (1)DynamoDB
API GatewayからDynamoDBに書き込みと読み取りを許可する IAMロールを作成。 (2)IAMロールの作成 AWSサービス API Gateway を選択
ロール作成後、インラインポリシを追加。 (2)IAMロールの作成 読み込み:GetItem 書き込み:PutItem (1)で作成したテーブルの ARNを指定
REST APIを作成 (3)API Gateway(PutItem)
POSTメソッドを作成し、統合タイプを「AWSサービス」、AWSサービスを 「DynamoDB」、アクション「PutItem」、実行ロールのARNを指定。 (3)API Gateway(PutItem) (2)で作成したロールの ARNを指定 これを選択することで AWSサービスを 操作することが可能に
URLクエリ文字列パラメータを追加。 (3)API Gateway(PutItem)
マッピングテンプレートをJSON形式に設定。 (3)API Gateway(PutItem)
テストしてステータスコード200が返ってきて、ログ内に入力した 文字列がJSON形式で表示されていることを確認。 (3)API Gateway(PutItem)
DynamoDBテーブルに書き込まれていることも確認。 (3)API Gateway(PutItem)
GETメソッドを作成 (4)API Gateway(GetItem) (2)で作成したロールの ARNを指定
URLクエリ文字列パラメータを設定(プライマリーキーのみ) (4)API Gateway(GetItem)
マッピングテンプレートを作成 (4)API Gateway(GetItem) Key(プライマリキー) を指定
テストしたところ、ステータスコード200は返ってきたが・・・ (4)API Gateway(GetItem) Not Found !?
GetItemはPOSTでないと動かない模様… ※理由は不明。仕様? (4)API Gateway(GetItem)
POSTに直してテスト再実行したら・・・ (4)API Gateway(GetItem)
成功😊 (4)API Gateway(GetItem)
4.まとめ
・API Gatewayから直接AWSサービスを操作することが可能。 ・今回はDynamoDBでReadWrite両方とも実施出来たことを確認。 ・GetItemを実行するのにPOSTを使う理由が分からなかった… ※ご存じの方、ご教示いただけますと幸いです🙇 まとめ
ポケットスタディ AWS認定デベロッパーアソシエイト https://www.shuwasystem.co.jp/book/9784798063409.html Qiita:APIGatewayから直接DynamoDBのデータを取得する https://qiita.com/foxtrackjp/items/e286b20943e99e230198 参考文献
None