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
100
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
さらばあのボタンとは言わせない SORACOM LTE-M Button powerd by AWSをまだ使えるようにした(前編?)
miura55
0
13
App Runnerでパラメーターストアの値を使ってみた
miura55
0
290
ultraArmをモニター提供してもらった話
miura55
0
110
JAWS UG名古屋2023年活動報告
miura55
0
130
AWS Step Functionsの新機能「Call third-party API」を試してみた
miura55
0
190
AWS CDKの新機能「cdk migrate」を試してみた
miura55
1
330
LINE DC×SORACOM UGのこれまでとこれから
miura55
0
42
社会人4年目が学生に捧げる5か条
miura55
0
140
AWSで作るGPSトラッキングシステム
miura55
0
460
Other Decks in Technology
See All in Technology
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
310
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
190
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
250
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
7
3.8k
アクセス制御にまつわる改善 / Improving access control
itkq
0
550
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
1
420
チームでロジカルシンキングに改めて向き合っている話 〜学習環境と実践⽅法〜
sansantech
PRO
3
2.8k
リテール金融(キャッシュレス・ネット銀行・ネット証券)の競争環境と経済圏
8maki
0
1.3k
オーナーシップを持つ領域を明確にする
konifar
13
3.2k
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
180
LangSmith入門―トレース/評価/プロンプト管理などを担うLLMアプリ開発プラットフォーム
os1ma
3
390
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Making Projects Easy
brettharned
108
5.5k
4 Signs Your Business is Dying
shpigford
175
21k
Ruby is Unlike a Banana
tanoku
96
10k
Building a Scalable Design System with Sketch
lauravandoore
456
32k
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
6
1.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
How GitHub (no longer) Works
holman
304
140k
Unsuck your backbone
ammeep
663
57k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Faster Mobile Websites
deanohume
299
30k
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