您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
最後一哩安全措施可保護 API 服務代理的後端服務。最後一哩路安全防護的主要目標是防止所謂的「終端攻擊」,也就是應用程式開發人員發現後端服務的網址,並略過所有 API Proxy,直接連上後端網址。
以下是設定最後一里安全措施的主要選項:
- 用戶端 TLS/SSL
- 外向驗證
- Node.js tls 模組
用戶端 TLS/SSL
保護最後一哩路的主要機制是用戶端 TLS/SSL,又稱為「雙向驗證」。
請參閱「設定從 Edge 到後端 (Cloud 和 Private Cloud) 的 TLS」。
外向驗證
您也可以要求 API Proxy 向後端服務出示憑證,藉此強制執行最後一哩路安全措施。
舉例來說,您可能希望 API Proxy 向後端服務提供 API 金鑰。您也可以讓 API Proxy 取得並提供 OAuth 用戶端憑證存取權杖。
API 金鑰
API 金鑰可套用至 API Proxy 對後端服務發出的外送要求。這項假設的前提是後端服務為 API,能夠核發及驗證 API 金鑰。
如果您設定 API Proxy,在傳送要求時提供 API 金鑰,就必須將 API 金鑰儲存在 API Proxy 在執行階段可擷取的位置。鍵/值對應是儲存 API 金鑰的其中一個位置。請參閱「鍵/值對應作業政策」。
您可以使用 AssignMessage 政策類型,將 API 金鑰新增為外送要求的 HTTP 標頭、查詢參數或酬載元素。請參閱「指派訊息政策」。
OAuth 用戶端憑證
OAuth 用戶端憑證可用於為 API 金鑰新增撤銷層級。如果後端服務支援 OAuth 用戶端憑證,您可以設定 API Proxy,針對每項要求提供用戶端憑證存取權杖。
API Proxy 必須設定為執行呼叫,從權杖端點取得存取權杖。API Proxy 也必須快取存取權杖,避免每次呼叫都取得新的存取權杖。
您可以使用多種方法實作外送用戶端憑證。
中,實作了使用用戶端憑證的有效 OAuth 外送範例。您可以修改這個範例,呼叫權杖端點來取得存取權杖。這個範例會使用 JavaScript,將權杖附加至傳出要求,做為 HTTP 授權標頭。您也可以使用「指派訊息政策」達成此目的。
SAML
GenerateSAMLAssertion 政策類型可用於將 SAML 判斷附加至從 API Proxy 傳送至後端服務的外送 XML 要求訊息。這樣一來,後端服務就能對 API Proxy 接收的要求執行驗證和授權。
請參閱 SAML 聲明政策。
Node.js
如果 API Proxy 目標是 Node.js 應用程式,您可以使用 Node.js tls 模組,建立與後端服務的安全連線。您可以使用 tls 模組發出外送要求,方式與在 Node.js 中正常發出要求相同。基本上,您需要將用戶端金鑰和憑證 (.pem 檔案) 新增至 resources/node 目錄,並在腳本中載入這些檔案。如要瞭解如何使用 tls 模組及其方法,請參閱 Node.js tls 模組說明文件。詳情請參閱「瞭解 Node.js 模組的 Edge 支援」。