關於 acurl 和 get_token

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

Apigee 提供下列便利的公用程式,可用來產生及傳遞 OAuth2 存取權 然後重新整理符記您可以在 Edge API 中使用這些權杖驗證自己的身分 呼叫 OAuth (包括 SAML 和 LDAP 工作流程):

  • acurl(1):提供標準包裝函式的便利包裝函式 curl 指令。建構對 Edge 的 HTTP 要求 API、從 get_token 取得存取權和更新權杖,並將存取權杖傳遞至 邊 也能使用 Google Cloud CLI 或 Compute Engine API
  • get_token(1):交換您的 Apigee 憑證以供存取 並更新可用來呼叫 Edge API 的權杖

這兩種公用程式會交易您的 Apigee 帳戶憑證 (使用者名稱和密碼,或是密碼), OAuth2 權杖。

Apigee 公用程式建立的權杖符合 OAuth 2.0 授權架構 規格

您可以選擇透過 Apigee 公用程式取得權杖或存取 Edge API 的驗證伺服器。 您可以自行實作配置來產生 OAuth2 存取權杖,並透過要求將權杖傳送至 Edge 也能使用 Google Cloud CLI 或 Compute Engine API

安裝 acurl 和 get_token

Apigee 提供包含 acurl(1)get_token(1) 和 安裝指令碼

如何安裝 acurlget_token

  1. 在電腦上建立安裝目錄,或使用預設的 usr/local/bin 目錄。
  2. 從 Apigee 下載安裝 ZIP 檔案:
    curl https://login.apigee.com/resources/scripts/sso-cli/ssocli-bundle.zip -O
  3. 解壓縮下載的檔案。
  4. 執行安裝指令碼:
    sudo ./install -b /usr/local/bin

    -b 選項會指定執行檔的位置。如果您不 指定此選項,安裝指令碼便會在 /usr/local/bin 中安裝公用程式。

  5. 測試安裝作業:
        acurl -h
        get_token -h

    如果安裝成功,這些指令會傳回公用程式的說明文字。

權杖到期

acurlget_token 會產生下列時間長度的權杖:

  • 存取權杖會在 12 小時後失效。
  • 更新憑證會在 30 天後失效。

因此,一旦您成功使用 acurlget_token 發出 API 呼叫, 您可以在 30 天內繼續使用這個權杖組合。到期後,您必須重新輸入 並取得新權杖

設定單一登入 (SSO) 端點

在發出第一次呼叫之前,請務必先為 Edge API 設定授權伺服器端點 搭配 acurlget_token 使用。

在終端機中,將 SSO_LOGIN_URL 環境變數設為授權 伺服器端點例如:

  • 沒有可用區的 Cloud 客戶:
    export SSO_LOGIN_URL=https://login.apigee.com
  • 適用於設有可用區的 Cloud 客戶:
    export SSO_LOGIN_URL=https://zone_name.login.apigee.com
  • 如果是 Private Cloud 客戶,請與管理員聯絡,索取適當的單一登入 (SSO) 端點。

使用動態密碼 (SAML 的必要設定)

使用 acurlget_token 進行 API 呼叫時,您必須進行驗證 傳送給 以便接收權杖組合。如要這麼做,請在 Apigee 中傳入您的 Apigee 帳戶的使用者名稱、密碼和 MFA 代碼。不過,如果您使用 SAML IDP,或是不想使用 使用您的密碼,建議您改用動態密碼。

如何取得動態密碼:

  1. 在瀏覽器中輸入下列網址:
    • 沒有可用區的 Cloud 客戶:
      https://login.apigee.com/passcode
    • 適用於設有可用區的 Cloud 客戶:
      https://zone_name.login.apigee.com/passcode
    • 如果是 Private Cloud 客戶,請與管理員聯絡,索取適當的單一登入 (SSO) 端點。
  2. 登入 Apigee 帳戶。
  3. 複製 6 個字元的密碼。
  4. 搭配 -p 選項使用 acurlget_token,並傳遞 密碼,如以下範例所示:
    get_token -p 1a2b3c

查看權杖

成功執行 acurlget_token 時 在 ~/.sso-cli 中建立資料檔案,其中包含符記和其他中繼資料。

如要查看符記,您可以使用類似如下的指令:

get_token -v

這個指令會顯示已解碼的權杖憑證附加資訊,例如:

Decoded token claims:
 {
  "jti": "8018507e-9f34-4a90-bf97-ff226a06b19b",
  "sub": "858217a9-01a1-4111-8525-75ca555f5d5c",
  "scope": [
    "scim.emails.read",
    "scim.me",
    "openid",
    "password.write",
    "approvals.me",
    "scim.ids.read",
    "oauth.approvals"
          ],
  "client_id": "edgecli",
  "cid": "edgecli",
  "azp": "edgecli",
  "grant_type": "password",
  "user_id": "858217a9-01a1-4111-8525-75ca555f5d5c",
  "origin": "usergrid",
  "user_name": "myusername@google.com",
  "email": "myusername@google.com",
  "auth_time": 1597444772,
  "al": 0,
  "rev_sig": "6271c527",
  "iat": 1597444772,
  "exp": 1597487972,
  "iss": "https://login.apigee.com",
  "zid": "uaa",
  "aud": [
    "edgecli",
    "scim.emails",
    "scim",
    "openid",
    "password",
    "approvals",
    "scim.ids",
    "oauth"
        ]
    }
Current timestamp: 1597444983
Existing access token is still valid

(1) 版權所有 2023 Google LLC
acurlget_token 工具以「軟體」形式提供在 本協議,規範 Google Cloud Platform (包括「服務」) 的使用行為 如需查看專屬條款,請前往 https://cloud.google.com/terms/service-terms