瞭解 OAuth 端點

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

Apigee Edge 必須公開端點,才能以 OAuth2 授權伺服器的形式執行工作 用戶端可在此要求取得權杖和驗證碼。這個主題 介紹這些端點,並說明如何在 Edge 中進行設定。

什麼是 OAuth2 端點?

OAuth2 端點是用戶端呼叫以要求 OAuth 權杖 (或驗證碼) 的網址。以下是 要求存取權杖的要求範例:

$ curl -i -H 'ContentType: x-www-form-urlencoded' \
-X POST 'https://docs-test.apigee.net/oauth/client_credential/accesstoken' \
-d 'grant_type=client_credentials' \
-H 'Authorization: Basic c3FIOG9vSGV4VHo4QzAySVg5T1JvNnJoZ3ExaVNyQWw6WjRsanRKZG5lQk9qUE1BVQ'

在您的 Apigee Edge 環境中,需要政策才能處理這類要求。盡可能 政策必須支援「用戶端憑證」授權類型 政策必須在路徑 /oauth/client_credentials/accesstoken 執行。

此時,正確的政策就是在流程中執行的 OAuthV2 政策 如以下範例所示 (政策名稱為 GenerateAccessTokenClient):

        <Flow name="AccessTokenClientCredential">
            <Description/>
            <Request>
                <Step>
                    <FaultRules/>
                    <Name>GenerateAccessTokenClient</Name>
                </Step>
            </Request>
            <Response/>
            <Condition>(proxy.pathsuffix MatchesPath &quot;/accesstoken&quot;) and (request.verb = &quot;POST&quot;)</Condition>
        </Flow>

如果用戶端提供正確的憑證,政策會產生並傳回權杖;否則 會傳回錯誤

找出預設端點

Apigee 預設會為符合下列條件的每個新機構新增 OAuth2 端點 Proxy 範例 新建的 Pod如果有,您就會在組織中找到名為 OAuth 的 Proxy。

如何找到這個 Proxy:

  1. 按照下方說明存取 API Proxy 頁面。

    Edge

    如何使用 Edge UI 存取 API Proxy 頁面:

    1. 登入 apigee.com/edge
    2. 依序選取「開發」>「開發」API Proxy
    3. 點選「+Proxy」

    傳統版 Edge (Private Cloud)

    如何使用傳統版 Edge UI 存取 API Proxy 頁面:

    1. 登入「http://ms-ip:9000」(ms-ip 為以下應用程式) Management Server 節點的 IP 位址或 DNS 名稱。
    2. 選取「API」>API Proxy
  2. 在 Proxy 清單中,選取名為 OAuth 的 Proxy。
  3. 在 Proxy 總覽頁面中,選取 [開發] 標籤來開啟 Proxy 編輯者,以及檢查 Proxy 中的政策和流程。

最佳做法:建立自己的 OAuth2 端點 Proxy

預設的 OAuth Proxy 有限,僅支援用戶端憑證 授權類型。這個 Proxy 只是範例,針對實際工作環境,您可以建立 Proxy 來設定符合您需求的 OAuth2 端點。

重要注意事項:定義 OAuth2 端點的 Proxy 通常是「沒有目標 Proxy」。 Proxy 可做為在 ProxyEndpoint 中執行的服務,然後直接傳回 用戶端。

相關主題

要求存取權杖並 授權碼