AWS Step Functionsの新機能「Call third-party API」を試してみた
by
KMiura
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
AWS Step Functionsの新機能「Call third-party API」を試してみた KMiura(@k_miura_io)
Slide 2
Slide 2 text
自己紹介 • 三浦 耕生(こうき) • JAWS UG名古屋運営 • 三次元地図技術のスタートアップの エンジニア @k_miura_io koki.miura05
Slide 3
Slide 3 text
re:Invent 2023のアップデート • Amazon QはXのトレンド入りしたり、ニュースになって結構話題になった • BedrockがリリースしたことでAI系のサービスが充実した印象 • AIアプリケーションの開発をサポートするアップデートが多かった
Slide 4
Slide 4 text
Step Functionsの新機能 • Call third-party API • Bedrock API
Slide 5
Slide 5 text
Call third-party API それまでLambdaを使わないとできなかった外部API連携が Step Functionsだけで実現できる
Slide 6
Slide 6 text
【余談】実はいち早くキャッチアップしてた • AWS Community Builderの向けに re:Invent前 に紹介してもらった • AWSで何かしらアップデートあると不定期でオンラ インミーティングが開催される(もちろん英語で開催 時間は日本時間の深夜)
Slide 7
Slide 7 text
試してみた
Slide 8
Slide 8 text
今回のシナリオ News APIで取得した国内のヘッドラインニュースを Slackに投稿&レスポンスをS3に保管するワークフロー
Slide 9
Slide 9 text
DEMO
Slide 10
Slide 10 text
SLACKの投稿
Slide 11
Slide 11 text
S3バケットの中身
Slide 12
Slide 12 text
ワークフロー Lambda一切使わず実装!
Slide 13
Slide 13 text
POINT • APIのリクエストにはEventBridgeを使って APIの認証情報を登録する必要がある • よくあるヘッダーにAPIトークンをいれるタ イプのAPIであれば認証タイプをAPIキー に設定してヘッダーに登録する情報を入 れればOK
Slide 14
Slide 14 text
外部API呼び 出すときに使 われている IAMポリシー • Call third-party APIのステップを追加したステートマ シンのIAMロールを生成するとそのワークフローに 必要なAPIのエンドポイント、メソッドのアクセスを許 可するためのIAMポリシーが追加される • 何も知らずにあとから別のAPIを追加して実行する とアクセスエラーが出るので要注意! • ステートマシンの設定画面からIAMロールを作り直せ ばOK
Slide 15
Slide 15 text
ステートマシンのテンプレ もある • StripeのAPIを使った請求書 作成ワークフローをStep Functionsで完結するテンプ レートがある • 割と複雑なビジネスロジック がローコードで構築されて いるのでStep Functionsの ポテンシャルを感じる
Slide 16
Slide 16 text
まとめ • Step Functionsを使って外部APIと連携することができた • Lambdaを使わないサーバーレスなシステム開発の幅が広がる予感 • Step Functions側で作られているIAMロールでアクセス制限をかけているのでセ キュアな分、カスタムする際は要注意
Slide 17
Slide 17 text
超簡単なサンプル記事 https://bit.ly/3Rsoxxr
Slide 18
Slide 18 text
宣伝 https://bit.ly/3v9uibK
Slide 19
Slide 19 text
宣伝② https://bit.ly/3v3u2Lu
Slide 20
Slide 20 text
END