Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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