您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
使用第三方 OAuth 憑證
請參閱「使用第三方 OAuth 權杖」。
指定多個回呼網址
使用授權程式碼授權類型時,您必須在註冊開發人員應用程式時指定回呼網址。回呼網址通常會指定應用程式的網址,該應用程式會代表用戶端應用程式接收授權程式碼。此外,這個網址字串會用於驗證。要求授權碼和存取權杖時,用戶端必須將此網址傳送至 Apigee Edge,且 redirect_uri 參數必須與已註冊的參數相符。另請參閱「要求存取權權杖和授權代碼」。
例如:
http://myorg-test.apigee.net/weather/oauth/authorizationcode?client_id=123456&response_type=code&redirect_uri=http://example.com/callback&scope=scope1%20scope2&state=abc
在單一 Proxy 應用程式中指定多個回呼網址有其用途。舉例來說,您可能需要為多個網域進行驗證。例如:
- http://myexample.com/callback
- http://myexample.uk/callback
- http://myexample.ja/callback
Edge 不支援指定多個回呼網址,也不支援在註冊開發人員應用程式時使用萬用字元。如要完成這項用途,您可以在註冊開發人員應用程式時指定空白回呼網址,然後在 JavaScript 政策中加入邏輯,驗證傳入的重新導向 URI。
變更 GenerateAuthCode 作業的預設傳回行為
根據預設,OAuthV2 政策的 GenerateAuthCode 作業會傳回 302 重新導向至回呼網址,並附帶包含授權碼的 ?code 查詢參數。
在某些情況下,您可能會想要變更這項行為。舉例來說,您可能會想傳回 200 回應,並附上包含程式碼的結構化 JSON。
如要實現這個用途,您可以將 OAuthV2 政策的 GenerateResponse 屬性設為 false
。使用「ExtractVariable」政策,從變數 oauthv2authcode.{policy_name}.code
取得授權碼的值。接著,您可以使用 AssignMessage 政策,在 JSON 酬載中傳回狀態為 200 的程式碼。
稽核應用程式使用者同意聲明
您可能需要驗證應用程式使用者是否授權應用程式。您可以使用 Apigee Edge 的 Audit API 執行這項操作。
外發 OAuth 範例
請參閱 GitHub 上 Apigee api-platform-samples 存放區中的 outbound-oauth 範例。您可以複製範例、部署範例,然後執行範例。這個範例會使用 Microsoft Azure Translator API 翻譯推文。為此,它會發出傳出呼叫來取得 OAuth 存取權杖,然後使用 API 服務快取政策快取權杖,每次發出呼叫時重複使用快取的權杖。此外,還包含用於叫用 API Proxy 的示範瀏覽器應用程式。