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 đăng nhập 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 đó trong tiêu đề Authorization của yêu cầu API.

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

Nếu sử dụng OAuth2 để truy cập vào API Edge nhưng không sử dụng acurl, thì 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 để có được mã truy cập đi kèm với phần mềm tiện ích get_token.

Cài đặt acurl

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

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:

Phương thức Bắt buộc? 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 Apigee Edge.
USERNAME Không bắt buộc. Bạn 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 truyền tên người dùng hoặc mật mã vào lần đầu tiên gọi get_token. Bạn không cần chuyển địa chỉ email cho đến khi mã truy cập và mã làm mới hết hạn. Nếu bạn đ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. Bạn phải nhậ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 này, bạn sẽ được nhắc hãy nhập mã này vào lần đầu tiên bạn sử dụng acurl và trong bất kỳ lệnh gọi nào tiếp theo mà không có mã làm mới. Nếu không muốn trực tiếp sử dụng mật khẩu trong lệnh, bạn có thể sử dụng mật mã 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ố. Mã này là bắt buộc nếu bạn 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 bạn chưa bật MFA hoặc bạn có quy trình theo tập lệnh, bạn có thể chỉ định -m "" để tránh lời nhắc.
PASSCODE Không bắt buộc. Bạn phải nhập tên người dùng và mật khẩu hoặc mật mã. Mã xác thực một lần mà bạn có thể sử dụng thay cho mật khẩu. Bạn cần có mã xác thực khi xác thực bằng IdP SAML và có thể sử dụng mã xác thực này để xác thực bằng 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 nêu trên, acurl chấp nhận tất cả curl . Ví dụ: bạn có thể truyền tiêu đề, chỉ định động từ HTTP, thêm nội dung và bật tính năng chi tiết bằng các tuỳ chọn curl chuẩn:

Phương thức acurl meaning curl meaning
-u username username
phút 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 dạng dài --proxytunnel)
-v verbose verbose
-h help help (phải sử dụng dạng 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 của API Edge mà bạn có tên. 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à phương thức xác thực đa yếu tố (MFA) không bắt buộc hoặc mã xác thực) cho đến khi cả mã thông báo truy cập và mã thông báo làm mới hết hạn, như mô tả trong phần Thời gian hết hạn của mã thông báo.

Di chuyển từ curl

Nếu bạn đang sử dụng curl, việc di chuyển sang tiện ích acurl sẽ rất đơn giản và 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
với:
acurl -u username

Tiện ích acurl sẽ mã hoá thông tin xác thực của bạn và thỉnh thoảng 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ể 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 phần OAuth2 cho người dùng máyNgười dùng máy trong vùng SAML.

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

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

Ví dụ sau đây cho thấy lệnh gọi ban đầu với acurl để lấy thông tin chi tiết về một bằng cách sử dụng Get của 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 của 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ột mã truy cập mới. Khi mã làm mới hết hạn, acurl sẽ nhắc bạn để biết thông tin đăng nhập Apigee của bạn.

Yêu cầu này sẽ nhận thông tin chi tiết về tổ chức "ahamilton-eval". Để biết danh sách đầy đủ các điểm cuối API Edge, hãy xem Tài liệu tham khảo API Apigee 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" trong thoả thuận chi phối việc bạn sử dụng Google Cloud Platform, bao gồm cả Dịch vụ Điều khoản cụ thể có tại https://cloud.google.com/terms/service-terms.