Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GitHub Actions で実現する Azure API Management ポリシー運...

GitHub Actions で実現する Azure API Management ポリシー運用の自動化

Avatar for Ryosuke Hyakuta

Ryosuke Hyakuta

October 03, 2025
Tweet

More Decks by Ryosuke Hyakuta

Other Decks in Programming

Transcript

  1. モモスケ(Ryosuke HYAKUTA) 仕事・好きな技術 ◼ アプリ・システム、自動化など幅広く技術支援 ◼ Azure Monitor の製品サポート チーム出身なの

    で監視系も大好きです ◼ 学生時代から DevOps 好きなので CI/CD と IaC 組んでる時が落ち着きます 趣味 ◼ 1人外飲み・ジム・個人開発・麻雀・カメラ その他 ◼ Microsoft 2年目 ◼ グッドデザイン賞受賞 Microsoft Japan Co., Ltd. Cloud Solution Architect (App Innovation)
  2. セッション概要とゴール 概要  APIM の運用を GitHub Actions で自動化するソリューションを発表 ゴール 

    APIM を知る  APIM のポリシーを知る  APIM のポリシー運用を自動化する方法を知る
  3. • 統一されたエンドポイント • 認証・認可の一元化 • 統合されたセキュリティ制御 • ログ・モニタリングの集中管理 • API

    バージョン管理 • 開発者ポータル • 多様なバックエンドの統合 • ポリシーによる柔軟な制御 • MCP サーバー公開 (Preview) APIM とは アプリ API サーバー API サーバー … オンプレ・他クラウドを含む多様な環境にわたって API を管理・運用するための他に無い包括的なプラットフォーム
  4. API Management の全体像 開発者ポータル API 管理 (発行者ポータル) API ゲートウェイ バックエンド

    (Web サービス) アプリ API 利用方法の参照 サブスクライブ API の呼び出し API の管理 アプリ開発者の管理 開発 転送 監視 アプリ開発者 (API 利用者) レスポンス API Management 反映 バックエンド (Web サービス) … API管理者
  5. ポリシー inbound セクション リクエストに適用されるステートメント backend セクション リクエストがバックエンド サービスに転送される前に適 用されるステートメント outbound

    セクション レスポンスに適用されるステートメント on-error セクション エラーが発生した場合に適用されるステートメント API Management API ゲートウェイ バックエンド (Web サービス) アプリ inbound outbound backend on-error
  6. ポリシー開発・運用のペイン  Azure Portal での手作業はミスが起きやすく、履歴も追いづらい  VS Code 編集も便利だが上記を克服していない 

    REST API を使ったスクリプトは実装・保守負荷が高い  ポリシーの差分レビューや再現が難しく、属人化しがち
  7. ポリシー開発・運用のペイン  Azure Portal での手作業はミスが起きやすく、履歴も追いづらい  VS Code 編集も便利だが上記を克服していない 

    REST API を使ったスクリプトは実装・保守負荷が高い  ポリシーの差分レビューや再現が難しく、属人化しがち Policy as Code (PaC) して DevOps 実現したい
  8. APIM × DevOps の既存資源  Azure APIOps Toolkit:ポリシーだけじゃなくて APIM 全体を細かく

    管理する構成管理ツール  dotnet-apim:C# でポリシーが書けるツール
  9. 既存資源  Azure APIOps Toolkit:ポリシーだけじゃなくて APIM 全体を細かく 管理する構成管理ツール  dotnet-apim:C#

    でポリシーが書けるツール 面白そう! だけど (僕が) C# 書けない マッチョすぎる。。。
  10. Azure API Management Policy Update  ポリシーを DevOps するため の

    Azure 公式アクション  2025 年 8 月リリース  ポリシー ファイルを自動検知  XML バリデーション  APIM に即時反映 Azure/apim-policy-update
  11. イメージ XML GitHub Actions APIM • ローカルでポリシー ファイルを 編集 •

    GitHub にプッシュ • 任意のトリガーでワークフロー を実行 • ポリシー ファイルを検知 • APIM に即時反映
  12. まとめ  APIM はスーパー便利だけど、ポリシー管理が面倒  APIM Policy Update を活用して、PaC ×

    DevOps を実現可能 1. ローカルでポリシー ファイルを編集して、GitHub にプッシュ 2. 任意のトリガー(Push / PR / 手動)でワークフローを実行 3. APIM に即時反映 デモで使ったラボ Repo コントリビューション待ってるよ♪ 解説記事(Zenn)
  13. 参考資料  Azure API Management のポリシー | Microsoft Learn 

    Azure API Management ポリシーのリファレンス | Microsoft Learn  DevOps と CI/CD を使って API を発行する | Microsoft Learn  Azure/apiops: APIOps
  14. AI 駆動開発  1行も自分で書いてません  GitHub Copilot Agent Mode +

    Claude Sonnet 4  仕様を詰めて詰めて詰めて・・・・から実装へ  実装は細かく step-by-step。各ステップでその実装が間違っていな いか検証させる(結果的に疎結合なコードが完成する)  おかしなコードを埋め込む訳にはいかないので随時レビュー
  15. AI 駆動開発 今やるなら  Awesome GitHub Copilot Customizations のカスタム チャット

    モー ド / インストラクションを駆使してより効率化する 1. “specification” チャット モードで仕様壁打ち 2. 使用する言語・フレームワークのインストラクションをインス トール 3. “principal-software-engineer” チャット モードで仕様をもとに実装 Awesome GitHub Copilot MCP Server で GitHub Copilot を強くする by Kazuki Ota-san