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
AWS Step Functionsの新機能「Call third-party API」を試してみた
Search
KMiura
December 18, 2023
Technology
0
540
AWS Step Functionsの新機能「Call third-party API」を試してみた
2023.12.18 「JAWS-UG 名古屋 2023年 AWS re:Inventの復習」
https://jawsug-nagoya.doorkeeper.jp/events/165969
KMiura
December 18, 2023
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
72
Pythonでルンバをハックしてみた
miura55
0
150
あなたの知らないクラフトビールの世界
miura55
0
330
Storage Browser for Amazon S3を触ってみた + α
miura55
0
200
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
210
あのボタンでつながるSORACOM
miura55
0
130
Postman Flowsで作るAPI連携LINE Bot
miura55
0
380
Lambdaと共に歩んだAWS
miura55
3
830
Other Decks in Technology
See All in Technology
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
400
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
220
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
120
オブザーバビリティが広げる AIOps の世界 / The World of AIOps Expanded by Observability
aoto
PRO
0
320
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
130
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
1
260
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
410
テストを軸にした生き残り術
kworkdev
PRO
0
190
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
270
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.2k
AIのグローバルトレンド2025 #scrummikawa / global ai trend
kyonmm
PRO
1
250
データアナリストからアナリティクスエンジニアになった話
hiyokko_data
2
430
Featured
See All Featured
Balancing Empowerment & Direction
lara
3
610
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Become a Pro
speakerdeck
PRO
29
5.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.5k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Code Review Best Practice
trishagee
70
19k
How GitHub (no longer) Works
holman
315
140k
Navigating Team Friction
lara
189
15k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Transcript
AWS Step Functionsの新機能「Call third-party API」を試してみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • JAWS UG名古屋運営 • 三次元地図技術のスタートアップの エンジニア
@k_miura_io koki.miura05
re:Invent 2023のアップデート • Amazon QはXのトレンド入りしたり、ニュースになって結構話題になった • BedrockがリリースしたことでAI系のサービスが充実した印象 • AIアプリケーションの開発をサポートするアップデートが多かった
Step Functionsの新機能 • Call third-party API • Bedrock API
Call third-party API それまでLambdaを使わないとできなかった外部API連携が Step Functionsだけで実現できる
【余談】実はいち早くキャッチアップしてた • AWS Community Builderの向けに re:Invent前 に紹介してもらった • AWSで何かしらアップデートあると不定期でオンラ インミーティングが開催される(もちろん英語で開催
時間は日本時間の深夜)
試してみた
今回のシナリオ News APIで取得した国内のヘッドラインニュースを Slackに投稿&レスポンスをS3に保管するワークフロー
DEMO
SLACKの投稿
S3バケットの中身
ワークフロー Lambda一切使わず実装!
POINT • APIのリクエストにはEventBridgeを使って APIの認証情報を登録する必要がある • よくあるヘッダーにAPIトークンをいれるタ イプのAPIであれば認証タイプをAPIキー に設定してヘッダーに登録する情報を入 れればOK
外部API呼び 出すときに使 われている IAMポリシー • Call third-party APIのステップを追加したステートマ シンのIAMロールを生成するとそのワークフローに 必要なAPIのエンドポイント、メソッドのアクセスを許
可するためのIAMポリシーが追加される • 何も知らずにあとから別のAPIを追加して実行する とアクセスエラーが出るので要注意! • ステートマシンの設定画面からIAMロールを作り直せ ばOK
ステートマシンのテンプレ もある • StripeのAPIを使った請求書 作成ワークフローをStep Functionsで完結するテンプ レートがある • 割と複雑なビジネスロジック がローコードで構築されて
いるのでStep Functionsの ポテンシャルを感じる
まとめ • Step Functionsを使って外部APIと連携することができた • Lambdaを使わないサーバーレスなシステム開発の幅が広がる予感 • Step Functions側で作られているIAMロールでアクセス制限をかけているのでセ キュアな分、カスタムする際は要注意
超簡単なサンプル記事 https://bit.ly/3Rsoxxr
宣伝 https://bit.ly/3v9uibK
宣伝② https://bit.ly/3v3u2Lu
END