為什么使用API網(wǎng)關(guān)?

      公司越來越依賴應(yīng)用程序編程接口 (API) 來為客戶提供服務(wù)。因此,API 安全解決方案(例如API網(wǎng)關(guān))已成為企業(yè)應(yīng)用程序安全策略的重要組成部分。

      為什么使用API網(wǎng)關(guān)?-南華中天

      什么是API網(wǎng)關(guān)及其工作原理

      API網(wǎng)關(guān)位于組織的 API 與其用戶之間。它作為反向代理運(yùn)行,為所有 API 請(qǐng)求提供單一聯(lián)系點(diǎn),并將它們路由到幕后的正確服務(wù)。當(dāng) API網(wǎng)關(guān)收到 API 請(qǐng)求時(shí),它會(huì)識(shí)別滿足這些請(qǐng)求所需的服務(wù)。API 向適當(dāng)?shù)姆?wù)發(fā)出請(qǐng)求,聚合結(jié)果,并向用戶返回單個(gè)響應(yīng)。

      為什么使用API網(wǎng)關(guān)?

      API網(wǎng)關(guān)為組織提供了多種不同的好處。這些包括:

      • 整合:API網(wǎng)關(guān)的主要功能之一是為組織的 API 提供單一入口點(diǎn)。通過部署網(wǎng)關(guān),公司可以將多個(gè) API 整合到一個(gè)面向客戶的界面中。
      • 安全性:API網(wǎng)關(guān)位于公司的 API 與其用戶之間。這使他們能夠保護(hù)這些 API 免受濫用或過度使用。此外,API網(wǎng)關(guān)可以檢查 API 請(qǐng)求的內(nèi)容,以過濾掉惡意請(qǐng)求或試圖濫用 API。
      • 身份驗(yàn)證:不同的 API 可能需要使用用戶身份驗(yàn)證。API網(wǎng)關(guān)可以實(shí)施身份驗(yàn)證并將 API 功能公開給經(jīng)過驗(yàn)證的用戶,而不是強(qiáng)制用戶對(duì)每個(gè) API 進(jìn)行身份驗(yàn)證或嘗試在應(yīng)用程序之間共享身份驗(yàn)證數(shù)據(jù)。
      • 計(jì)費(fèi):一些 API 根據(jù)客戶的使用情況向客戶計(jì)費(fèi),如果組織公開多個(gè)不同的 API,管理起來可能會(huì)很復(fù)雜。使用API網(wǎng)關(guān),計(jì)費(fèi)可以集中在網(wǎng)關(guān)上,而不是分布在所有服務(wù)中。
      • 分析:有關(guān) API 使用情況的信息對(duì)于公司在開發(fā)和營(yíng)銷其服務(wù)時(shí)可能很有價(jià)值。API網(wǎng)關(guān)為收集分析數(shù)據(jù)、提供更深入的上下文和促進(jìn)數(shù)據(jù)分析提供了一個(gè)集中位置。
      • 靈活性:如果所有 API 都直接暴露給客戶端,則添加、刪除或修改服務(wù)可能需要進(jìn)行大量的重新架構(gòu)。使用API網(wǎng)關(guān),只需更新網(wǎng)關(guān)的配置即可添加、刪除或切換服務(wù)。
      • 性能:API網(wǎng)關(guān)可能包含緩存。這使他們能夠更快地響應(yīng)常見請(qǐng)求并減少后端服務(wù)的負(fù)載。

      API網(wǎng)關(guān)用例

      顧名思義,API網(wǎng)關(guān)可用于任何類型的 Web API,包括:

      • HTTP API
      • REST API
      • WebSocket API

      然而,API網(wǎng)關(guān)的好處并不僅限于這些服務(wù)。API網(wǎng)關(guān)還可用于通過集成微服務(wù)來支持 DevOps,并幫助部署和管理基于云的工作負(fù)載。

      API網(wǎng)關(guān)如何支持 DevOps

      DevOps 專注于開發(fā)周期短的快速、敏捷的開發(fā)實(shí)踐。遵循 DevOps 原則的組織通常使用微服務(wù)架構(gòu),其中每個(gè)應(yīng)用程序執(zhí)行單一、不同的功能。在這樣的架構(gòu)中完成一項(xiàng)任務(wù)需要調(diào)用多個(gè)微服務(wù)。API網(wǎng)關(guān)可以幫助將一系列微服務(wù)轉(zhuǎn)變?yōu)橐粋€(gè)有凝聚力的 API。當(dāng)網(wǎng)關(guān)收到請(qǐng)求時(shí),它會(huì)向每個(gè)微服務(wù)發(fā)出請(qǐng)求,并根據(jù)這些請(qǐng)求的結(jié)果創(chuàng)建一個(gè)響應(yīng)。這為 API 用戶提供了一個(gè)簡(jiǎn)單、用戶友好的界面,同時(shí)在幕后啟用 DevOps 實(shí)踐和微服務(wù)架構(gòu)。

      API網(wǎng)關(guān)如何支持工作負(fù)載

      隨著云計(jì)算的興起,基于云的工作負(fù)載已成為希望充分利用云功能的組織的普遍選擇。使用容器化、無服務(wù)器功能和 Kubernetes,基于云的應(yīng)用程序可以設(shè)計(jì)得比傳統(tǒng)應(yīng)用程序更具適應(yīng)性和可擴(kuò)展性。在現(xiàn)代云中,API 通常用于配置基礎(chǔ)設(shè)施。在無服務(wù)器架構(gòu)中,無服務(wù)器功能可以部署在云端,并由API網(wǎng)關(guān)通過 API 進(jìn)行管理。

      API管理與API網(wǎng)關(guān)

      API管理和API網(wǎng)關(guān)是相關(guān)但不同的概念。API管理是組織用來控制其 API 的工具、策略和流程的集合。這可能包括 API 配置、管理、安全和其他注意事項(xiàng)。API網(wǎng)關(guān)是組織可以用來實(shí)施API管理的工具之一。通過充當(dāng)組織的 API 與其用戶之間的看門人,API網(wǎng)關(guān)使公司能夠更輕松地執(zhí)行其策略并修改其后端服務(wù),而不會(huì)對(duì)其客戶造成干擾。