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
430
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
Amazon Rekognitionを使ったインターホンハック
miura55
0
27
Pythonでルンバをハックしてみた
miura55
0
71
あなたの知らないクラフトビールの世界
miura55
0
220
Storage Browser for Amazon S3を触ってみた + α
miura55
0
130
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
130
あのボタンでつながるSORACOM
miura55
0
82
Postman Flowsで作るAPI連携LINE Bot
miura55
0
300
Lambdaと共に歩んだAWS
miura55
3
660
Bedrock Knowledge baseを使って今年の上半期のニュースを聞いてみた(リベンジ編)
miura55
0
210
Other Decks in Technology
See All in Technology
企業テックブログにおける執筆ネタの考え方・見つけ方・広げ方 / How to Think of, Find, and Expand Writing Topics for Corporate Tech Blogs
honyanya
0
830
マルチデータプロダクト開発・運用に耐えるためのデータ組織・アーキテクチャの遷移
mtpooh
1
270
BLEAでAWSアカウントのセキュリティレベルを向上させよう
koheiyoshikawa
0
150
RevOpsへ至る道 データ活用による事業革新への挑戦 / path-to-revops
pei0804
3
820
現実的なCompose化戦略 ~既存リスト画面の置き換え~
sansantech
PRO
0
170
DeepSeek on AWS
hariby
1
140
個人開発発表 LT - Shinjuku.rb #97
kozy4324
0
100
【Λ(らむだ)】アップデート機能振り返りΛ編 / PADjp20250127
lambda
0
120
教師なし学習の基礎
kanojikajino
4
370
Grid表示のレイアウトで Flow layoutsを使う
cffyoha
1
150
FastConnect の冗長性
ocise
1
9.3k
ソフトウェア開発現代史:製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す
takabow
15
5.4k
Featured
See All Featured
Statistics for Hackers
jakevdp
797
220k
Typedesign – Prime Four
hannesfritz
40
2.5k
Code Reviewing Like a Champion
maltzj
521
39k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Navigating Team Friction
lara
183
15k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
19k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Unsuck your backbone
ammeep
669
57k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
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