什麼是 Azure API 中心?

已完成

Azure API 中心是 Azure 的新服務,可提供結構化的集中式存放庫,實現統一追蹤、探索、重複使用和控管。 API 中心是安全的解決方案,無論其類型、API 執行階段的開發生命週期階段或部署位置為何,皆可合併和組織所有 API 及其中繼資料或 API 相關資訊。

螢幕擷取畫面顯示 Azure 上的 Azure API 中心登陸頁面。

API 中心的優點

客戶問題 API 中心的優點
不佳的 API 可探索性和重複使用 輕鬆進行 API 探索和取用。 API 管理員可以在 Azure 入口網站中檢視所有 api 的完整詳細目錄。 API 取用者可以使用 Web 型 API 中心入口網站以探索和取用 API,或者使用適用於 Visual Studio Code 的 API 中心延伸模組以建置、探索和取用 API。
陰影、不受控管 API 集中式 API 詳細目錄。 API 中心可讓組織從不同小組和部門建置 API 的中央存放庫,作為所有 API 的統一事實和信任來源。
潛在的安全性風險 輕鬆進行 API 控管。 將 API 合併至單一位置後,可讓 API 平台小組更輕鬆治理這些 API 以強制執行組織安全性原則。
不一致的 API 設計 自動化 API 設計一致性檢查。 API 中心 可讓管理員對所有 API 強制執行設計標準並實作 Lint 分析工作流程,根據定義的樣式指南檢查 API 並產生可在 API 中心中存取的 API 合規性報告。

API 生態系統角色與責任

組織的 API 生態系統通常由具備各種責任的不同角色組成,這都是成功作業不可或缺的一部分。 讓我們進一步了解一些角色。

  1. API 生產者 - 這類角色可以是個別開發人員或小組,其主要責任包含:

    • 合併系統規格和需求
    • 設計符合定義目標的 API 架構
    • 開發、保護及發佈 API
    • 測試和確保 API 符合功能和效能需求
    • 記錄 API
    • API 維護作業,其中包含管理版本和更新

    API 生產者致力於確保遵循最佳做法、安全性與合規性原則及組織 API 標準,進而保持一致性。 同時也必須確保生產者的工作不會與組織內的先前/其他小組工作重複。

  2. API 取用者 - 這類角色可以是 API 的內部或外部使用者以:

    • 在內部業務工作流程和服務中取用私人 API (內部取用者)
    • 使用受限制的 API 端點以整合至策略性業務合作關係 (合作夥伴取用者)
    • 取用公開可用的 API 以建置使用組織所提供服務的外部系統 (第三方取用者)

    API 取用者必須確保可快速探索最適合工作負載的 API 以避免浪費寶貴開發資源和工作重複。 為了達成此目的,取用者必須收到高品質且易於使用的文件以驗證 API 可滿足個別需求並順暢整合至應用程式。

  3. API 平台小組 - API 平台工程師會關心為其組織建立和維護可調整、安全且高效能的 API 結構。 一些工作可能包含:

    • API 結構設計和開發
    • 建立並強制執行整個組織的 API 最佳做法和設計標準
    • 強制執行監視、分析和報告,以產生可採取動作的深入解析
    • 透過驗證、授權和加密通訊協定實作和管理 API 安全性
    • 輔助產品經理、API 生產者和取用者之間的共同作業和意見反應,以符合 API 策略
    • 協助進行 API 整合和針對內部和外部進行疑難排解

Contoso 的 API 平台工程師共同合作推出易於採用的策略,防止組織遇到 API 激增。

API 中心的運作方式

組織的 API 平台工程師需要快速簡單的方式以設定其所有 API (內部和外部) 的集中式存放庫及其他中繼資料,例如 API 版本、定義等。 透過 API 中心,您可以在不同 API 管理解決方案上建立裝載和管理的 API 目錄,並在不同設定、開發、測試和生產生命週期中進行管理。

螢幕擷取畫面顯示 API 中心元件的概觀

Azure API 中心的功能

API 詳細目錄

API 中心的建置基礎為完整且最新的所有 API 詳細目錄,這些 API 可以透過組織建置並使用。 此詳細目錄是大規模啟用 API 控管、探索和取用的關鍵。

透過 API 中心,您可以將 API 新增至詳細目錄,無論:

  • API 技術與語言:ASP.NET Core Web API、Express、FastAPI、無伺服器 API 等。
  • API 類型:REST、GraphQL、SOAP、gRPC、WebSocket、WebHook 等。
  • 執行階段環境:Kubernetes 叢集、Web 應用程式、API 管理、Apigee API 管理、Azure Functions 等。

API 控管

現在透過完整的詳細目錄,我們必須深入了解如何確保這些 API 的一致性、標準、可重複使用性和安全性。 API 控管的定義是,在所有組織 API 間大規模定義及套用標準、原則和程序的做法。

API 中心的這項功能使用版本、擁有者、生命週期以簡化追蹤 API,並追蹤合規性檢閱、中斷性變更偵測等程序。

API 中心也提供 API 設計控管的工具,可支援使用 Spectral JSON/ YAML Linter 實作的 Lint 分析,確保註冊的 API 符合組織的樣式規則並提供 API 的分析功能。 為組織啟用此工具,有助於透過產生可在 API 中心檢視的合規性報告以提前偵測錯誤和不一致性。

當開發人員接受 API 平台的工作後,便可最大化成功。 適用於 Visual Studio Code 的 API 中心延伸模組提供左移 API 控管功能以進行中斷性變更偵測和 API 設計控管,確保 API 第一次便正確建置。

螢幕擷取畫面顯示 API 中心上的 API 分析

API 探索與取用

API 中心簡化整個 API 開發生命週期,透過整合熱門開發人員工具 (例如 Visual Studio Code) 改善開發人員體驗。 API 中心延伸模組提供 API 取用者體驗,以便可直接在 Visual Studio Code 內探索、嘗試和取用 API 以了解運作方式。 API 中心的其他功能是傳統 Web 型 API 中心入口網站,其設計目的是讓 API 取用者可輕鬆從 API 目錄瀏覽文件、探索、存取和取用 API。

螢幕擷取畫面顯示 API 中心 Web 型入口網站

在下一個單元中,您將了解如何透過 Azure 入口網站、在本機上使用 Azure CLI 或在使用 API 中心延伸模組的 VS Code 上建立和管理 API 中心的 API 詳細目錄。