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 20, 2023
Technology
1
200
AWS Step Functionsの新機能「Call third-party API」を試してみた
2023.12.20 color is【クラウドLT大会vol.6】大型アップデート祭り
https://saison-coloris.connpass.com/event/303486/
KMiura
December 20, 2023
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
58
Pythonでルンバをハックしてみた
miura55
0
130
あなたの知らないクラフトビールの世界
miura55
0
310
Storage Browser for Amazon S3を触ってみた + α
miura55
0
180
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
190
あのボタンでつながるSORACOM
miura55
0
120
Postman Flowsで作るAPI連携LINE Bot
miura55
0
350
Lambdaと共に歩んだAWS
miura55
3
780
Other Decks in Technology
See All in Technology
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
3
1.7k
A2Aのクライアントを自作する
rynsuke
1
160
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全
opelab
11
2.3k
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
1
410
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
850
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
12
4.4k
JSX - 歴史を振り返り、⾯⽩がって、エモくなろう
pal4de
4
1.1k
原則から考える保守しやすいComposable関数設計
moriatsushi
3
510
菸酒生在 LINE Taiwan 的後端雙刀流
line_developers_tw
PRO
0
1.1k
エンジニア向け技術スタック情報
kauche
1
120
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
180
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
590
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Embracing the Ebb and Flow
colly
86
4.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Being A Developer After 40
akosma
90
590k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Side Projects
sachag
455
42k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Balancing Empowerment & Direction
lara
1
350
GitHub's CSS Performance
jonrohan
1031
460k
Transcript
AWS Step Functionsの新機能「Call third-party API」を試してみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • JAWS UG名古屋運営 • 三次元地図技術のスタートアップの エンジニア
@k_miura_io koki.miura05
AWS Step Functionsとは? • AWSのサービスを組み合わせて分散アプ リケーションを作ることができるサービス • GUIベースでAWSのサービス・API呼び出 すことができる •
並列処理やエラー処理も追加できる
Step Functionsの新機能 • Call third-party API • Bedrock API
Call third-party API それまでLambdaを使わないとできなかった外部API連携が Step Functionsだけで実現できる
試してみた
今回のシナリオ 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
END