Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
APIGatewayからDynamoDBを直接操作してみた.pdf
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
amarelo_n24
June 24, 2021
Technology
900
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
APIGatewayからDynamoDBを直接操作してみた.pdf
amarelo_n24
June 24, 2021
More Decks by amarelo_n24
See All by amarelo_n24
40代になっても悩み続ける!楽しいと思えるキャリアを目指して
amarelo_n24
0
64
AWS Security Agent といっしょに脅威モデリングをやってみよう
amarelo_n24
1
330
バケットポリシーの記述を誤りマネコンからS3バケットを操作できなくなりそうになり、ルートアクセス管理を有効にしたおひとり様Organizationsの話
amarelo_n24
0
56
AWS Certified Generative AI Developer - Professional Beta 不合格体験記
amarelo_n24
1
500
マルチパートアップロードをする時にS3はどのような挙動をしているのか?
amarelo_n24
0
93
ひとりAWS BuilderCards 会を開催した話_SecurityExpansion
amarelo_n24
1
110
ひとりAWS BuilderCards 会を開催した話
amarelo_n24
1
57
re:Invent初参加者が感じたre:Invent を楽しむために必要なこと
amarelo_n24
0
79
おひとり様Organizations管理者もルートアクセス管理を有効にしよう!
amarelo_n24
2
170
Other Decks in Technology
See All in Technology
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
470
AI時代の「技術的負債」の変質ー概念の終焉と再解釈、エージェントと共に向かう先
nwiizo
0
2.6k
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
1
1.6k
現場で役立つ技術負債の効果的な返済方法
masuda220
PRO
8
4k
データ_AIの事業の勝敗をわけるもの
nek0128
0
350
20260912_スクラムにジェネラリストは必要か
ryugen04
0
420
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
890
10分で知る最近のOmarchy
komagata
0
320
目の前の楽しいが人生を変える - コミュニティの螺旋の歩き方と楽しむコツ / change your life
soudai
PRO
4
600
Adaptive Warehouse を今すぐ導入すべき理由と迷ったときの判断基準
__allllllllez__
0
230
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
23
15k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
12k
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
4k
YesSQL, Process and Tooling at Scale
rocio
174
15k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
580
How to train your dragon (web standard)
notwaldorf
97
6.8k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
700
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
540
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
First, design no harm
axbom
PRO
2
1.3k
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