您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件。 資訊
acurl
(1) 公用程式提供了標準 curl
指令的便利包裝函式。acurl
:
- 交換您的 Apigee 憑證,以便取得 OAuth2 存取權杖。
- 偵測存取權杖過期的時間,並使用更新權杖取得新的存取權杖。
- 請在 API 要求的
Authorization
標頭中傳遞該權杖。
您可以透過存取權杖透過 OAuth2 呼叫 Edge API 端點,包括 LDAP 和 SAML 工作流程。
如果您使用 OAuth2 存取 Edge API,但未使用 acurl
,則必須自行取得存取權杖,並將其新增至 API 要求標頭。取得存取權杖的方法之一是使用 get_token 公用程式。
安裝 acurl
您必須先安裝,才能使用 acurl
。
acurl 語法
acurl
公用程式使用下列語法:
acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]
或
acurl API_URL -p PASSCODE
在此情況下:
選項 | 是否必需提供? | 說明 |
---|---|---|
API_URL | 必要 | Apigee Edge API 端點。如需完整的端點清單,請參閱 Apigee Edge API 參考資料。 |
USERNAME | 選填。並必須輸入使用者名稱和密碼組合或密碼。 | 您的 Apigee 使用者名稱,通常是與 Apigee 帳戶相關聯的電子郵件地址。第一次呼叫 get_token 時,必須傳送使用者名稱或密碼。在存取權和更新權杖失效之前,您不需要再次傳送電子郵件地址。如要快取多位使用者的權杖,則必須在每次呼叫中指定使用者名稱。 |
PASSWORD | 選填。並必須輸入使用者名稱和密碼組合或密碼。 | Apigee 帳戶的密碼。如果省略密碼,則您第一次使用 acurl 以及任何不含有效更新權杖的後續呼叫時,系統都會提示您輸入密碼。如果您不想在指令中直接使用您的密碼,可以使用動態密碼來代替密碼。 |
MFACODE | 選用 | 六位數的暫時多重驗證 (MFA) 代碼。如果您使用 -u 並啟用 MFA,就必須提供這個代碼。如不使用密碼模式,系統會出現提示 (除非是在密碼模式下使用)。如果您並未啟用 MFA 或已編寫指令碼,則可指定 -m "" 以避免提示。 |
PASSCODE | 選填。並必須輸入使用者名稱和密碼組合或密碼。 | 動態密碼,可用於取代密碼。使用 SAML IDP 進行驗證時,必須輸入密碼,並可用於透過 LDAP IDP 進行驗證。 |
例如:
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-evalacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com -p 424242
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd -m 123456
除了上述選項以外,acurl
也會接受所有 curl
選項。例如,您可以傳遞標頭、指定 HTTP 動詞、新增主體,以及使用標準 curl
選項啟用詳細程度:
選項 | acurl meaning |
curl meaning |
---|---|---|
-u 鍵 | username |
username |
-m | MFA code |
max time (必須使用長篇影片 --max-time ) |
-p | passcode |
proxy tunnel (必須使用長篇影片 --proxytunnel ) |
-v | verbose |
verbose |
-h | help |
help (必須使用長篇影片 --help ) |
acurl -v -X POST -H 'Content-Type: application/json' \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apiproducts/myproduct/attributes/attr \ -u ahamilton@apigee.com -d '{"value":42}'
如果 acurl
呼叫成功,會根據您呼叫的 Edge API 端點傳回結果。此外,acurl
會將存取權和更新權杖儲存在 ~/.sso-cli
中。
您可以繼續在存取權杖和更新權杖失效前,不必輸入憑證 (密碼和選用的多重驗證或密碼),如權杖過期一節中所述。
從 curl 遷移
如果您使用 curl
,遷移至 acurl
公用程式相當簡單,無需手動編碼憑證。下載並安裝公用程式後,您可以將:
curl -u username
替換為: acurl -u username
acurl
公用程式會編碼您的憑證,並有時會提示您提供取得新的權杖組合所需的其他憑證。
acurl
公用程式也可用來取代電腦使用者的 curl
。詳情請參閱「機器使用者適用的 OAuth2」和「SAML 區域中的機器使用者」。
第一次呼叫 acurl
首次使用 acurl
呼叫 API 時,您必須提供 Apigee 憑證 (Apigee 帳戶的使用者名稱和密碼,或是密碼),讓 acurl
交換存取權杖及更新權杖。
以下範例顯示使用 acurl
進行初始呼叫,以便使用 取得機構 端點取得機構相關詳細資料:
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \ -u ahamilton@apigee.com Enter the password for user 'ahamilton@apigee.com':[hidden input]
Enter the six-digit code (no spaces) if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:1a2b3c
{ "createdAt" : 1491854501264, "createdBy" : "noreply_iops@apigee.com", "displayName" : "ahamilton", "environments" : [ "prod", "test" ], "lastModifiedAt" : 1491854501264, "lastModifiedBy" : "noreply_iops@apigee.com", "name" : "ahamilton", "properties" : { "property" : [ { "name" : "features.isSmbOrganization", "value" : "false" }, { "name" : "features.isCpsEnabled", "value" : "true" } ] }, "type" : "trial" }
acurl
公用程式會取得存取權杖,並將其插入至 Edge API 端點的呼叫中:
curl -H "Authorization: Bearer oauth2_access_token" ...
存取權杖會儲存在本機的 ~/.sso-cli
中,用於後續呼叫。
存取權杖到期後,acurl
會自動使用更新權杖取得新的存取權杖。更新權杖過期後,acurl
會提示您輸入 Apigee 憑證。
這項要求取得「ahamilton-eval」機構的詳細資料。如需 Edge API 端點的完整清單,請參閱 Apigee Edge API 參考資料。
(1) Copyright 2023 Google LLC
acurl
工具是依據規範使用 Google Cloud Platform 之協議的「軟體」提供,包括 https://cloud.google.com/terms/service-terms 的《服務專屬條款》。