本頁內容適用於 Apigee 和 Apigee Hybrid。
查看
Apigee Edge 說明文件。
使用第三方 OAuth 憑證
請參閱「使用第三方 OAuth 權杖」。
指定多個重新導向 URI
使用授權碼授權類型時,您必須在註冊開發人員應用程式時指定重新導向 URI。重新導向 URI 會指定應用程式的 URI,該應用程式會代表用戶端應用程式接收授權碼。用戶端要求授權碼和權杖時,必須將這個 URI 傳送至 Apigee,且 redirect_uri
參數必須與註冊的參數相符。另請參閱「取得 OAuth 2.0 權杖」。
例如:
https://mydomain.com/authorize?\ client_id=123456&\ response_type=code&\ redirect_uri=https%3A%2F%2Fmydomain.com%2Fcallback&scope=scope1%20scope2&state=abc
在單一 Proxy 應用程式中指定多個重新導向 URI 的使用案例。舉例來說,您可能需要驗證多個網域。舉例來說:
https://mydomain.com/callback
https://mydomain.uk/callback
https://mydomain.ja/callback
如要在開發人員應用程式中指定多個重新導向 URI,請在開發人員應用程式 UI 的「回呼網址」欄位中,以逗號分隔清單的形式加入這些 URI。例如:
https://mydomain.com/callback,https://mydomain.uk/callback,https://mydomain.ja/callback
請注意,/authorize
要求在 redirect_uri
參數中只能攜帶一個 URI。
只要重新導向 URI 符合開發人員應用程式 UI 中「回呼網址」欄位指定的其中一個 URI,要求就會成功。
變更 GenerateAuthCode 作業的預設傳回行為
根據預設,OAuthv2 政策的 GenerateAuthCode 作業會傳回 302
,
重新導向至
重新導向 URI,並包含含有授權碼的 ?code
查詢參數。
在某些情況下,您可能會想變更這項行為。舉例來說,您可能想傳回含有程式碼的結構化 JSON 200
回應。
如要達成這個用途,其中一種方式是將 OAuthV2 政策的
GenerateResponse 屬性設為 false
。
使用 ExtractVariable 政策,從變數 oauthv2authcode.{policy_name}.code
取得授權碼的值。接著,您可以使用 AssignMessage 政策,在狀態為 200 的 JSON 酬載中傳回代碼。
稽核應用程式使用者同意聲明
您可能需要驗證應用程式使用者是否已授權應用程式。您可以使用 Apigee Audit API 進行驗證。
Outbound OAuth 範例
請參閱 GitHub 上 Apigee api-platform-samples 存放區中的 outbound-oauth 範例。您可以複製、部署及執行範例。這個範例會使用 Microsoft Azure 翻譯工具 API 翻譯推文。為此,系統會發出外送呼叫來取得 OAuth 存取權杖,然後使用 API 服務快取政策快取權杖,每次發出外送呼叫時都會重複使用快取的權杖。此外,還包含用於叫用 API 代理的示範瀏覽器應用程式。