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
210
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
Cloudflare WorkersがPythonに対応したので試してみた
miura55
0
190
個人のAWSアカウントをマルチ運用してみた
miura55
2
290
さらばあのボタンとは言わせない SORACOM LTE-M Button powerd by AWSをまだ使えるようにした(前編?)
miura55
0
120
App Runnerでパラメーターストアの値を使ってみた
miura55
0
310
ultraArmをモニター提供してもらった話
miura55
0
120
JAWS UG名古屋2023年活動報告
miura55
0
140
AWS Step Functionsの新機能「Call third-party API」を試してみた
miura55
1
110
AWS CDKの新機能「cdk migrate」を試してみた
miura55
1
330
LINE DC×SORACOM UGのこれまでとこれから
miura55
0
46
Other Decks in Technology
See All in Technology
動画配信サービスのフロントエンド実装に学ぶ設計原則
yud0uhu
1
130
AWS CLIの起動が重くてつらいので aws-sdk-client-go を書いた / kamakura.go#6
fujiwara3
6
3.3k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
12
7.9k
Prisma ORMを2年運用して培ったノウハウを共有する
tockn
19
5.1k
LINEヤフーのウェブアクセシビリティ
lycorptech_jp
PRO
2
180
拓展QA日常工作的邊界
line_developers_tw
PRO
0
560
【TSkaigi】2024/05/11 当日スライド
kimitashoichi
14
4k
令和版ソフトウェアエンジニアの情報収集術 PHPカンファレンス香川2024
ysknsid25
4
900
B2C、B2B プロダクトマネジメントの違い(および思考の罠) / B2C, B2B PM and reduction fallacy
ykmc09
5
2.4k
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
170
RailsConf 2024 Keynote "Startups on Rails in 2024"
irinanazarova
0
820
Kaggleで学ぶ系列データのための深層学習モデリング
yu4u
7
1.7k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
338
39k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
14
8.4k
Infographics Made Easy
chrislema
238
18k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
It's Worth the Effort
3n
180
27k
[RailsConf 2023] Rails as a piece of cake
palkan
29
4.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
22
1.6k
GraphQLとの向き合い方2022年版
quramy
33
13k
A Modern Web Designer's Workflow
chriscoyier
689
190k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
How GitHub (no longer) Works
holman
305
140k
Typedesign – Prime Four
hannesfritz
36
2.1k
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