Sử dụng acurl

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về Apigee X.
thông tin

Tiện ích acurl(1) cung cấp một trình bao bọc tiện lợi xung quanh lệnh curl tiêu chuẩn. acurl:

  • Trao đổi thông tin xác thực Apigee của bạn để lấy mã truy cập OAuth2.
  • Phát hiện thời điểm mã truy cập đã hết hạn và sử dụng mã làm mới để nhận mã truy cập mới.
  • Truyền mã thông báo đó vào tiêu đề Authorization của yêu cầu API.

Bạn có thể sử dụng mã truy cập để gọi đến các điểm cuối API Edge bằng OAuth2, bao gồm cả quy trình làm việc qua LDAP và SAML.

Nếu sử dụng OAuth2 để truy cập API Edge nhưng không sử dụng acurl, bạn phải lấy mã truy cập và tự thêm mã đó vào tiêu đề của yêu cầu API. Một cách để lấy mã truy cập là dùng tiện ích get_token.

Cài đặt acurl

Để có thể sử dụng acurl, bạn phải cài đặt ứng dụng này.

cú pháp acurl

Tiện ích acurl sử dụng cú pháp sau:

acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]

hoặc

acurl API_URL -p PASSCODE

Trong trường hợp:

Lựa chọn Bắt buộc? Nội dung mô tả
API_URL Bắt buộc Điểm cuối API Apigee Edge. Để xem danh sách đầy đủ các điểm cuối, hãy xem Tài liệu tham khảo API về API API API.
USERNAME Không bắt buộc. Người dùng phải kết hợp tên người dùng và mật khẩu hoặc mật mã. Tên người dùng Apigee của bạn, thường là địa chỉ email liên kết với tài khoản Apigee của bạn. Bạn phải chuyển tên người dùng hoặc mật mã của mình vào lần đầu tiên bạn gọi điện cho get_token. Bạn sẽ không cần truyền lại địa chỉ email của mình cho đến khi mã truy cập và mã làm mới hết hạn. Nếu đang lưu mã thông báo vào bộ nhớ đệm cho nhiều người dùng, bạn phải chỉ định tên người dùng của mình trong mỗi lệnh gọi.
PASSWORD Không bắt buộc. Người dùng phải kết hợp tên người dùng và mật khẩu hoặc mật mã. Mật khẩu cho tài khoản Apigee của bạn. Nếu bỏ qua mật khẩu, bạn sẽ được nhắc nhập mật khẩu này vào lần đầu tiên sử dụng acurl và trong mọi lệnh gọi tiếp theo mà không có mã làm mới hợp lệ. Nếu không muốn sử dụng mật khẩu ngay trong lệnh này, bạn có thể sử dụng mật mã dùng một lần thay vì mật khẩu.
MFACODE Không bắt buộc xác thực đa yếu tố (MFA) tạm thời gồm 6 chữ số. Bạn phải nhập mã này nếu sử dụng -u và đã bật tính năng xác thực đa yếu tố (MFA). Bạn sẽ được nhắc nếu bỏ qua (trừ phi ở chế độ mật mã). Nếu chưa bật tính năng xác thực đa yếu tố (MFA) hoặc có một quy trình theo tập lệnh, thì bạn có thể chỉ định -m "" để tránh lời nhắc.
PASSCODE Không bắt buộc. Người dùng phải kết hợp tên người dùng và mật khẩu hoặc mật mã. Bạn có thể sử dụng mật mã một lần thay cho mật khẩu. Bạn cần có mật mã khi xác thực bằng IDP SAML và có thể sử dụng mật mã để xác thực với IDP LDAP.

Ví dụ:

acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
acurl 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

Ngoài các tuỳ chọn hiển thị ở trên, acurl chấp nhận tất cả các tuỳ chọn curl. Ví dụ: bạn có thể chuyển tiêu đề, chỉ định động từ HTTP, thêm nội dung và bật độ chi tiết bằng cách sử dụng các tuỳ chọn curl tiêu chuẩn:

Lựa chọn acurl meaning curl meaning
username username
-p MFA code max time (phải sử dụng biểu mẫu dài --max-time)
-p passcode proxy tunnel (phải sử dụng biểu mẫu dài --proxytunnel)
-v verbose verbose
-h help help (phải sử dụng biểu mẫu dài --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}'

Lệnh gọi acurl thành công sẽ trả về kết quả dựa trên điểm cuối API Edge mà bạn đã gọi. Ngoài ra, acurl lưu trữ cả mã truy cập và mã làm mới trong ~/.sso-cli.

Bạn có thể tiếp tục thực hiện cuộc gọi mà không cần nhập thông tin xác thực (mật khẩu và MFA hoặc mật mã không bắt buộc) cho đến khi cả mã truy cập và mã làm mới đều hết hạn, như mô tả trong phần Thời hạn của mã thông báo.

Di chuyển từ curl

Nếu bạn đang sử dụng curl, thì việc di chuyển sang tiện ích acurl sẽ rất đơn giản và bạn sẽ không cần phải mã hoá thông tin xác thực theo cách thủ công. Sau khi đã tải xuống và cài đặt tiện ích, bạn có thể thay thế:

curl -u username
bằng:
acurl -u username

Tiện ích acurl sẽ mã hoá thông tin xác thực của bạn và đôi khi nhắc bạn cung cấp thông tin xác thực bổ sung cần thiết để lấy các cặp mã thông báo mới.

Bạn cũng có thể sử dụng tiện ích acurl để thay thế curl cho người dùng máy. Để biết thêm thông tin, hãy xem bài viết OAuth2 cho người dùng máyNgười dùng máy trong các vùng SAML.

Gọi acurl lần đầu tiên

Trong lần đầu tiên gọi API bằng acurl, bạn cung cấp thông tin đăng nhập của Apigee (tên người dùng và mật khẩu của tài khoản Apigee hoặc mật mã) để acurl có thể trao đổi lấy mã truy cập và mã làm mới.

Ví dụ sau đây minh hoạ lệnh gọi ban đầu với acurl để biết thông tin chi tiết về một tổ chức bằng điểm cuối Lấy tổ chức:

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"
}

Tiện ích acurl nhận mã truy cập và chèn mã đó vào lệnh gọi đến điểm cuối API Edge:

curl -H "Authorization: Bearer oauth2_access_token" ...

Mã truy cập được lưu trữ cục bộ trong ~/.sso-cli và dùng cho các lệnh gọi tiếp theo.

Sau khi mã truy cập hết hạn, acurl sẽ tự động sử dụng mã làm mới để lấy mã truy cập mới. Khi mã làm mới hết hạn, acurl sẽ nhắc bạn cung cấp thông tin đăng nhập Apigee.

Yêu cầu này thu thập thông tin chi tiết về tổ chức "ahamilton-eval". Để xem danh sách đầy đủ các điểm cuối API Edge, hãy xem Tài liệu tham khảo API về API Edge.


(1) Bản quyền 2023 Google LLC
Công cụ acurl được cung cấp dưới dạng "Phần mềm" theo thoả thuận chi phối việc bạn sử dụng Google Cloud Platform, bao gồm cả Điều khoản dành riêng cho dịch vụ có tại https://cloud.google.com/terms/service-terms.