移除 API 回應中的技術資訊

已完成

任何發佈 API 的組織都必須確保使用者可以安全地存取 API,且惡意使用者無法成功地進行攻擊。

政府儲存有關公民的許多個人資料。 人口普查資料會顯示每位公民及其生活的大量相關資訊。 此資料可能遭到惡意探索,而對人們造成損害。 透過 API 端點公開的任何資料,都必須經由新式標準加以保護。

身為首席開發人員,您將了解如何設定安全的 API 閘道,以保護人口普查資料免於遭受未經授權的存取。 它也會協助保護端點免於遭受拒絕服務的攻擊。

Azure API 管理

Azure API 管理服務裝載於 Azure 雲端,且位於 API 與網際網路之間。 Azure API 閘道是 Azure API 管理服務的執行個體。

API 的發行者會使用 Azure 入口網站或其他 Azure 工具來控制將每個 API 公開給取用者的方式。 例如,您可能需要基於示範目的將某些 API 免費提供給開發人員,並嚴格控制對其他 API 的存取。

回應標頭

回應標頭是與 HTTP 回應建立關聯的中繼資料,可提供回應的詳細內容。 它們可以公開所使用伺服器和平台技術的相關資訊。

回應標頭。

在人口普查 API 範例中,請務必移除下列標頭:

頁首 詳細資料
x-powered-by 此標頭可讓呼叫者查看所使用的技術堆疊。 這可能會讓惡意使用者嘗試利用該堆疊內的任何 Bug。

APIM 設定

若要設定 APIM,您將執行下列工作:

  • 建立 API 管理閘道。 在此步驟中,您會在 Azure 入口網站中建立 API 管理資源。 您也會將屬性指派給閘道,例如 FQDN 和定價層。
  • 向閘道註冊現有的 Web API。 在此步驟中,您會將 Web API 新增至閘道。 API 已經有自己的 Azure 應用程式服務主機,但您必須將它新增至 API 管理,才能使用原則和其他 API 管理工具。
  • 從回應中移除標頭。 在此步驟中,您將套用原則來移除所有回應中不安全的標頭。