Phát hành API bằng Edge API

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

Phần này mô tả cách sử dụng API Edge để tạo các sản phẩm API để xuất bản trong cổng thông tin dành cho nhà phát triển.

Tạo sản phẩm API bằng API

Các sản phẩm API cho phép nhà phát triển đăng ký những ứng dụng sử dụng API bằng cách sử dụng khoá API và mã truy cập OAuth. Các sản phẩm API được thiết kế để cho phép bạn 'theo gói' tài nguyên API rồi xuất bản những gói đó lên các nhóm nhà phát triển. Ví dụ: có thể bạn cần phát hành một nhóm tài nguyên API cho đối tác của mình nhà phát triển, trong khi bạn xuất bản một gói khác cho các nhà phát triển bên ngoài. Các sản phẩm API cho phép bạn thực hiện việc nhóm này một cách nhanh chóng mà không yêu cầu tự bất kỳ thay đổi nào đối với API của bạn. Một lợi ích bổ sung là quyền truy cập của nhà phát triển có thể được "nâng cấp" và "đã hạ cấp" mà không yêu cầu để nhà phát triển lấy khoá mới dành cho người dùng cho ứng dụng của họ.

Để tạo một sản phẩm API bằng API này, hãy gửi yêu cầu POST để /organizations/{org_name}/apiproducts. Để biết thêm thông tin, hãy xem tài liệu tham khảo API Tạo sản phẩm API.

Yêu cầu sau đây sẽ tạo một sản phẩm API có tên là weather_free. Sản phẩm API cung cấp quyền truy cập vào tất cả API được hiển thị bởi proxy API có tên là weatherapi được triển khai trong môi trường test. Loại phê duyệt được đặt thành auto cho biết rằng bất kỳ yêu cầu cấp quyền truy cập sẽ được phê duyệt.

curl -X POST https://api.enterprise.apigee.com/v1/organization/myorg/apiproducts \
-H "Content-Type:application/json" \
-d \
'{
  "approvalType": "auto",
  "displayName": "Free API Product",
  "name": "weather_free",
  "proxies": [ "weatherapi" ],
  "environments": [ "test" ]
}' \
-u email:password 

Câu trả lời mẫu:

{
  "apiResources" : [ ],
  "approvalType" : "auto",
  "attributes" : [ ],
  "createdAt" : 1362759663145,
  "createdBy" : "developer@apigee.com",
  "displayName" : "Free API Product",
  "environments" : [ "test" ],
  "lastModifiedAt" : 1362759663145,
  "lastModifiedBy" : "developer@apigee.com",
  "name" : "weather_free",
  "proxies" : [ "weatherapi" ],
  "scopes" : [ ]
}

Sản phẩm API được tạo ở trên sẽ triển khai trường hợp cơ bản nhất, uỷ quyền các yêu cầu cho một Proxy API trong một môi trường. Chính sách này xác định một sản phẩm API cho phép ứng dụng được uỷ quyền truy cập mọi tài nguyên API truy cập thông qua proxy API chạy trong môi trường thử nghiệm. Sản phẩm API hiển thị các chế độ cài đặt cấu hình bổ sung cho phép bạn tuỳ chỉnh khả năng kiểm soát quyền truy cập vào các API của mình cho các nhóm nhà phát triển khác nhau. Ví dụ: bạn có thể tạo 2 sản phẩm API cung cấp quyền truy cập vào các proxy API khác nhau. Bạn cũng có thể tạo hai sản phẩm API cung cấp quyền truy cập vào cùng một Proxy API nhưng có chế độ cài đặt Hạn mức liên quan khác.

Chế độ cài đặt cấu hình sản phẩm API

Sản phẩm API hiển thị các lựa chọn cấu hình sau:

Tên Mô tả Mặc định Bắt buộc?
apiResources

Danh sách URI được phân tách bằng dấu phẩy, hoặc đường dẫn tài nguyên, "theo gói" vào API của Google.

Theo mặc định, các đường dẫn tài nguyên được liên kết từ proxy.pathsuffix biến. Hậu tố đường dẫn proxy được xác định là phân đoạn URI theo sau Đường dẫn cơ sở ProxyEndpoint. Ví dụ: trong sản phẩm API mẫu bên dưới, giá trị Phần tử apiResources được định nghĩa là /forecastrss. Vì Đường dẫn cơ sở được xác định cho proxy API này là /weather, tức là chỉ sản phẩm API này cho phép gửi yêu cầu đến /weather/forecastrss.

Bạn có thể chọn một đường dẫn cụ thể hoặc chọn tất cả đường dẫn phụ có ký tự đại diện. Hỗ trợ ký tự đại diện (/** và /*). Ký tự đại diện dấu hoa thị kép cho biết rằng tất cả URI phụ. Một dấu hoa thị cho biết rằng chỉ URI một cấp bao gồm.

Theo mặc định, '/' hỗ trợ cùng tài nguyên như '/**' cũng như Cơ sở Đường dẫn do proxy API xác định. Ví dụ: nếu Đường dẫn cơ sở của proxy API là /v1/Weatherapikey, sau đó sản phẩm API hỗ trợ các yêu cầu đến /v1/Weatherapikey và bất kỳ các URI phụ, chẳng hạn như /v1/weatherapikey/forecastrss, /v1/weatherapikey/region/CA, v.v. Xem Quản lý sản phẩm API cho thông tin về cách thay đổi hành vi của chế độ mặc định này.

Không áp dụng Không
approvalType Chỉ định cách các khoá API được phê duyệt để truy cập vào các API do sản phẩm API xác định. Nếu được đặt thành manual, thì khoá được tạo cho ứng dụng nằm trong trạng thái "đang chờ xử lý" trạng thái. Các khoá như vậy sẽ không hoạt động cho đến khi được phê duyệt một cách rõ ràng. Nếu bạn đặt chính sách này thành auto, tất cả các khóa được tạo trong tệp 'đã phê duyệt' và làm việc ngay lập tức. (auto là thường được dùng để cung cấp quyền truy cập vào các sản phẩm API miễn phí/dùng thử có cung cấp Hạn mức giới hạn hoặc khả năng.) Không áp dụng
attributes

Mảng gồm các thuộc tính có thể dùng để mở rộng hồ sơ sản phẩm API mặc định bằng siêu dữ liệu dành riêng cho khách hàng.

Hãy sử dụng thuộc tính này để chỉ định cấp truy cập của sản phẩm API là công khai, riêng tư hoặc nội bộ. Ví dụ:
"thuộc tính": [
{
"name": "quyền truy cập",
"value": "public"
},
{
"tên": "foo",
"value": "foo"
},
{
"tên": "thanh",
"giá trị": "thanh"
}
]
Không áp dụng Không
scopes Danh sách phạm vi OAuth được phân tách bằng dấu phẩy được xác thực trong thời gian chạy. (Apigee Edge xác thực rằng phạm vi trong mọi mã truy cập đã trình bày khớp với phạm vi đã đặt trong API product.) Không áp dụng Không
proxies Các proxy API được đặt tên mà sản phẩm API này liên kết với. Bằng cách chỉ định proxy, bạn có thể liên kết tài nguyên trong sản phẩm API với các proxy API cụ thể, ngăn chặn nhà phát triển truy cập vào các tài nguyên đó thông qua các proxy API khác. Không áp dụng Không. Nếu không được định nghĩa thì apiResources phải được xác định rõ ràng (xem thông tin cho apiResources ở trên) và biến flow.resource.name được đặt trong Chính sách AttributionMessage.
environments Các môi trường được đặt tên (ví dụ: "test" hoặc "prod") mà sản phẩm API này liên kết. Bằng cách chỉ định một hoặc nhiều môi trường, bạn có thể liên kết các tài nguyên được liệt kê trong sản phẩm API vào môi trường cụ thể, ngăn chặn nhà phát triển truy cập vào các tài nguyên đó thông qua API proxy trong môi trường khác. Ví dụ: Chế độ cài đặt này được dùng để ngăn chặn tài nguyên được liên kết với các proxy API trong "sản phẩm" khỏi việc bị truy cập bởi các proxy API được triển khai trong "test". Không áp dụng Không. Nếu không được định nghĩa, bạn phải xác định rõ apiResources và Đã đặt biến flow.resource.name trong chính sách AssignmentsMessage.
quota Số lượng yêu cầu được phép trên mỗi ứng dụng trong khoảng thời gian đã chỉ định. Không áp dụng Không
quotaInterval Số đơn vị thời gian mà hạn mức được đánh giá Không áp dụng Không
quotaTimeUnit Đơn vị thời gian (phút, giờ, ngày hoặc tháng) mà hạn mức được tính. Không áp dụng Không

Sau đây là ví dụ chi tiết hơn về cách tạo một sản phẩm API.

curl -X POST  https://api.enterprise.apigee.com/v1/o/{org_name}/apiproducts \
-H "Content-Type:application/json" -d \
'{
  "apiResources": [ "/forecastrss" ],
  "approvalType": "auto", 
  "attributes":
    [ {"name": "access", "value": "public"} ],
  "description": "Free API Product",
  "displayName": "Free API Product",
  "name": "weather_free",
  "scopes": [],
  "proxies": [ "weatherapi" ],
  "environments": [ "test" ],
  "quota": "10",
  "quotaInterval": "2",
  "quotaTimeUnit": "hour" }' \
-u email:password

Phản hồi mẫu

{
  "apiResources" : [ "/forecastrss" ],
  "approvalType" : "auto",
  "attributes" : [ {
    "name" : "access",
    "value" : "public"
  },
  "createdAt" : 1344454200828,
  "createdBy" : "admin@apigee.com",
  "description" : "Free API Product",
  "displayName" : "Free API Product",
  "lastModifiedAt" : 1344454200828,
  "lastModifiedBy" : "admin@apigee.com",
  "name" : "weather_free",
  "scopes" : [ ],
  "proxies": [ {'weatherapi'} ],
  "environments": [ {'test'} ],
  "quota": "10",
  "quotaInterval": "1",
  "quotaTimeUnit": "hour"}'
}

Giới thiệu về phạm vi

Phạm vi là một khái niệm được rút ra từ OAuth và ánh xạ gần đúng đến khái niệm "quyền". Bật Apigee Edge, phạm vi là hoàn toàn không bắt buộc. Bạn có thể sử dụng phạm vi để có được phạm vi chi tiết hơn uỷ quyền. Mỗi khoá người dùng cấp cho một ứng dụng đều được liên kết với một "phạm vi chính". Chiến lược phát hành đĩa đơn phạm vi chính là tập hợp tất cả các phạm vi trong tất cả sản phẩm API cho ứng dụng này đã được phê duyệt. Cho ứng dụng được phê duyệt sử dụng nhiều sản phẩm API, phạm vi chính là sự kết hợp của tất cả các phạm vi được xác định trong các sản phẩm API đã được phê duyệt khoá người tiêu dùng.

Xem các sản phẩm API

Để xem các sản phẩm API được tạo cho tổ chức bằng API, hãy xem các mục sau:

Sau đây là ví dụ về cách xem các sản phẩm API bằng API:

curl -X GET "https://ext.apiexchange.org/v1/mint/organizations/{org_name}/products?monetized=true" \
  -H "Accept:application/json" \
  -u email:password

Câu trả lời sẽ có dạng như sau (chỉ một phần của câu trả lời được hiển thị):

{
  "product" : [ {
    "customAtt1Name" : "user",
    "customAtt2Name" : "response size",
    "customAtt3Name" : "content-length",
    "description" : "payment api product",
    "displayName" : "payment",
    "id" : "payment",
    "name" : "payment",
    "organization" : {
      ...
    },
    "pricePoints" : [ ],
    "status" : "CREATED",
    "transactionSuccessCriteria" : "status == 'SUCCESS'"
  }, {
    "customAtt1Name" : "user",
    "customAtt2Name" : "response size",
    "customAtt3Name" : "content-length",
    "description" : "messaging api product",
    "displayName" : "messaging",
    "id" : "messaging",
    "name" : "messaging",
    "organization" : ...
    },
    "pricePoints" : [ ],
    "status" : "CREATED",
    "transactionSuccessCriteria" : "status == 'SUCCESS'"
  } ],
  "totalRecords" : 2
}

Đăng ký nhà phát triển bằng API

Tất cả ứng dụng đều thuộc về nhà phát triển hoặc công ty. Do đó, để tạo một ứng dụng, trước tiên, bạn cần để đăng ký một nhà phát triển hoặc công ty.

Nhà phát triển được đăng ký trong một tổ chức bằng cách tạo hồ sơ. Xin lưu ý rằng nhà phát triển email có trong hồ sơ sẽ được dùng làm khoá duy nhất cho nhà phát triển xuyên suốt quá trình Lợi ích của Apigee.

Để hỗ trợ kiếm tiền, bạn phải xác định kiếm tiền khi tạo hoặc chỉnh sửa nhà phát triển. Bạn cũng có thể xác định các thuộc tính khác thuộc tính để sử dụng trong số liệu phân tích tuỳ chỉnh, việc thực thi chính sách tuỳ chỉnh, v.v.; các thuộc tính tùy ý này các thuộc tính này sẽ không được Apigee Edge diễn giải.

Ví dụ: yêu cầu sau đây đăng ký một hồ sơ cho một nhà phát triển có địa chỉ email là ntesla@theremin.com và xác định một nhóm nhỏ hoạt động kiếm tiền bằng API Tạo nhà phát triển:

$ curl -H "Content-type:application/json" -X POST -d \
'{"email" : "ntesla@theremin.com", 
  "firstName" : "Nikola", 
  "lastName" : "Tesla", 
  "userName" : "theremin", 
  "attributes" : [ 
  { 
    "name" : "project_type", 
    "value" : "public"
  },
  {    
   "name": "MINT_BILLING_TYPE",
   "value": "POSTPAID"
  },
  {
   "name": "MINT_DEVELOPER_ADDRESS",
   "value": "{\"address1\":\"Dev One Address\",\"city\":\"Pleasanton\",\"country\":\"US\",\"isPrimary\":true,\"state\":\"CA\",\"zip\":\"94588\"}"
  },
  {
   "name": "MINT_DEVELOPER_TYPE",
   "value": "TRUSTED"
  },
  {    
   "name": "MINT_HAS_SELF_BILLING,
   "value": "FALSE"
  },
  {
   "name" : "MINT_SUPPORTED_CURRENCY",
   "value" : "usd"
  }
 ] 
}' \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers \
-u email:password 

Phản hồi mẫu

{
          "email" : "ntesla@theremin.com",
          "firstName" : "Nikola",
          "lastName" : "Tesla",
          "userName" : "theremin",
          "organizationName" : "{org_name}",
          "status" : "active",
          "attributes" : [ 
          {
            "name" : "project_type",
            "value" : "public"
          },
          {    
             "name": "MINT_BILLING_TYPE",
             "value": "POSTPAID"
          },
          {
             "name": "MINT_DEVELOPER_ADDRESS",
             "value": "{\"address1\":\"Dev One Address\",\"city\":\"Pleasanton\",\"country\":\"US\",\"isPrimary\":true,\"state\":\"CA\",\"zip\":\"94588\"}"
          },
          {
             "name": "MINT_DEVELOPER_TYPE",
             "value": "TRUSTED"
          },
          {    
             "name": "MINT_HAS_SELF_BILLING,
             "value": "FALSE"
          },
          {
             "name" : "MINT_SUPPORTED_CURRENCY",
             "value" : "usd"
          } 
          ],
          "createdAt" : 1343189787717,
          "createdBy" : "admin@apigee.com",
          "lastModifiedAt" : 1343189787717,
          "lastModifiedBy" : "admin@apigee.com"
        }

Đăng ký ứng dụng của nhà phát triển bằng API

Mọi ứng dụng đăng ký trên Apigee Edge đều liên kết với một nhà phát triển và một sản phẩm API. Khi một ứng dụng được đăng ký thay mặt cho một nhà phát triển, Apigee Edge sẽ tạo một "thông tin đăng nhập" (a) khoá người dùng và cặp bí mật) xác định ứng dụng. Sau đó, ứng dụng phải vượt qua các thông tin đăng nhập này như một phần của mỗi yêu cầu đối với sản phẩm API liên kết với ứng dụng.

Yêu cầu sau sử dụng nút Tạo API Ứng dụng dành cho nhà phát triển để đăng ký ứng dụng cho nhà phát triển mà bạn đã tạo ở trên: ntesla@themin.com. Khi đăng ký một ứng dụng, bạn cần xác định tên cho ứng dụng đó, một callbackUrl và danh sách một hoặc nhiều API sản phẩm:
$ curl -H "Content-type:application/json" -X POST -d \
'{
  "apiProducts": [ "weather_free"], 
  "callbackUrl" : "login.weatherapp.com", 
  "keyExpiresIn" : "2630000000",
  "name" : "weatherapp"}' \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps \
-u email:password 

callbackUrl được sử dụng bởi một số loại cấp quyền sử dụng OAuth (chẳng hạn như mã uỷ quyền) để xác thực các yêu cầu chuyển hướng từ ứng dụng. Nếu dùng OAuth, bạn phải đặt giá trị này giống với redirect_uri dùng để thực hiện yêu cầu OAuth.

Thuộc tính keyExpiresIn chỉ định thời gian tồn tại của khoá người tiêu dùng sẽ được tạo cho ứng dụng của nhà phát triển. Giá trị mặc định, -1, cho biết thời gian hiệu lực vô hạn.

Phản hồi mẫu

{
  "appId": "5760d130-528f-4388-8c6f-65a6b3042bd1",
  "attributes": [
    {
      "name": "DisplayName",
      "value": "Test Key Expires"
    },
    {
      "name": "Notes",
      "value": "Just testing this attribute"
    }
  ],
  "createdAt": 1421770824390,
  "createdBy": "wwitman@apigee.com",
  "credentials": [
    {
      "apiProducts": [
        {
          "apiproduct": "ProductNoResources",
          "status": "approved"
        }
      ],
      "attributes": [],
      "consumerKey": "jcAFDcfwImkJ19A5gTsZRzfBItlqohBt",
      "consumerSecret": "AX7lGGIRJs6s8J8y",
      "expiresAt": 1424400824401,
      "issuedAt": 1421770824401,
      "scopes": [],
      "status": "approved"
    }
  ],
  "developerId": "e4Oy8ddTo3p1BFhs",
  "lastModifiedAt": 1421770824390,
  "lastModifiedBy": "wwitman@apigee.com",
  "name": "TestKeyExpires",
  "scopes": [],
  "status": "approved"
}

Quản lý khoá của người dùng cho các ứng dụng bằng API

Lấy khoá người tiêu dùng (khoá API) cho ứng dụng

Thông tin đăng nhập của một ứng dụng (sản phẩm API, khoá người dùng và thông tin bí mật) được trả về như một phần của hồ sơ ứng dụng. Quản trị viên của tổ chức có thể truy xuất khoá của người dùng bất cứ lúc nào.

Hồ sơ ứng dụng cho thấy giá trị của khoá và thông tin bí mật về người dùng, trạng thái của người dùng khóa, cũng như bất kỳ liên kết sản phẩm API nào cho khóa. Là quản trị viên, bạn có thể truy xuất hồ sơ khoá người dùng bất cứ lúc nào bằng cách sử dụng phần Nhận thông tin chi tiết về khoá cho Ứng dụng dành cho nhà phát triển API:

$ curl -X GET -H "Accept: application/json" \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J \
-u email:password

Phản hồi mẫu

{
  "apiProducts" : [ {
    "apiproduct" : "weather_free",
    "status" : "approved"
  } ],
  "attributes" : [ ],
  "consumerKey" : "HQg0nCZ54adKobpqEJaE8FefGkdKFc2J",
  "consumerSecret" : "1eluIIdWG3JGDjE0",
  "status" : "approved"
}

Xem Xem thông tin quan trọng về Ứng dụng của nhà phát triển để biết thêm thông tin.

Thêm sản phẩm API vào một ứng dụng và khoá

Để cập nhật một ứng dụng nhằm thêm sản phẩm API mới, trên thực tế, bạn phải thêm sản phẩm API vào khoá của ứng dụng bằng cách sử dụng Add API Product to Key API (Thêm sản phẩm API vào API khoá). Xem Thêm sản phẩm API vào khoá để tìm hiểu thêm.

Khi bạn thêm một sản phẩm API vào khoá ứng dụng, thì ứng dụng chứa khoá đó có thể truy cập vào API đó tài nguyên được đóng gói trong sản phẩm API. Lệnh gọi phương thức sau đây sẽ thêm một sản phẩm API mới vào một ứng dụng:

$ curl -H "Content-type:application/json" -X POST -d \
'{
  "apiProducts": [ "newAPIProduct"]
}' \
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J \
-u email:password 

Phản hồi mẫu:

{
  "apiProducts": [
   {
     "apiproduct": "weather_free",
     "status": "approved"
   },
   {
     "apiproduct": "newAPIProduct",
     "status": "approved"
   }
 ],
 "attributes": [],
 "consumerKey": "HQg0nCZ54adKobpqEJaE8FefGkdKFc2J",
 "consumerSecret": "1eluIIdWG3JGDjE0",
 "expiresAt": -1,
 "issuedAt": 1411491156464,
 "scopes": [],
 "status": "approved"
 }

Phê duyệt khoá của người dùng

Việc đặt loại phê duyệt thành thủ công cho phép bạn kiểm soát nhà phát triển có thể truy cập vào tài nguyên được bảo vệ bằng các sản phẩm API. Khi các sản phẩm API có khoá đặt phê duyệt thành manual, thì khoá của người tiêu dùng phải được phê duyệt một cách rõ ràng. Khoá có thể là được phê duyệt rõ ràng bằng cách sử dụng Phê duyệt hoặc thu hồi khoá cụ thể của ứng dụng dành cho nhà phát triển API:

$ curl -X POST -H "Content-type:appilcation/octet-stream" \ 
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J?"action=approve" \
-u email:password

Phản hồi mẫu

{
  "apiProducts" : [ {
  "apiproduct" : "weather_free",
  "status" : "approved"
} ],
  "attributes" : [ ],
  "consumerKey" : "HQg0nCZ54adKobpqEJaE8FefGkdKFc2J",
  "consumerSecret" : "1eluIIdWG3JGDjE0",
  "status" : "approved"
}

Xem Phê duyệt hoặc thu hồi khoá cụ thể của ứng dụng của nhà phát triển để biết thêm thông tin.

Phê duyệt các sản phẩm API cho khoá dành cho người tiêu dùng

Mối liên kết của một sản phẩm API với khoá người tiêu dùng cũng có một trạng thái. Để quyền truy cập API được thành công thì khoá của người tiêu dùng phải được phê duyệt khoá của người tiêu dùng phải được phê duyệt cho sản phẩm API thích hợp. Mối liên kết giữa khoá người tiêu dùng với sản phẩm API có thể là được phê duyệt bằng cách sử dụng Phê duyệt hoặc thu hồi sản phẩm API đối với khoá cho Nhà phát triển API ứng dụng:

$ curl -X POST -H "Content-type:application/octet-stream" \ 
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J/apiproducts/weather_free?"action=approve" \
-u email:password

Lệnh cURL này không trả về phản hồi. Xem Phê duyệt hoặc thu hồi sản phẩm API đối với Khoá trong Ứng dụng của nhà phát triển để biết thêm thông tin.

Thu hồi sản phẩm API đối với khoá người tiêu dùng

Có nhiều lý do khiến bạn cần thu hồi mối liên kết giữa khoá người dùng sử dụng với API của Google. Bạn có thể phải xoá một sản phẩm API khỏi khoá của người tiêu dùng do việc không thanh toán trước nhà phát triển, thời gian dùng thử đã hết hạn hoặc Khi một ứng dụng được quảng bá từ một sản phẩm API lên khác.

Để thu hồi liên kết khoá người tiêu dùng với một sản phẩm API, hãy sử dụng hàm Phê duyệt hoặc Thu hồi khoá cụ thể của API Ứng dụng dành cho nhà phát triển , sử dụng thao tác thu hồi đối với khoá người tiêu dùng của ứng dụng phát triển:

$ curl -X POST -H "Content-type:application/octet-stream" \ 
https://api.enterprise.apigee.com/v1/o/{org_name}/developers/ntesla@theremin.com/apps/weatherapp/keys/HQg0nCZ54adKobpqEJaE8FefGkdKFc2J/apiproducts/weather_free?"action=revoke" \
-u email:password

Lệnh cURL này không trả về phản hồi. Xem Phê duyệt hoặc thu hồi khoá cụ thể của ứng dụng của nhà phát triển để biết thêm thông tin.

Thực thi chế độ cài đặt sản phẩm API

Để các sản phẩm API được thực thi, bạn phải đính kèm một trong các loại chính sách sau vào API luồng proxy:

  • VerifyAPIKey: Tham chiếu đến một khoá API, xác minh rằng khoá đó đại diện cho một ứng dụng hợp lệ, và khớp với sản phẩm API. Xem Chính sách về Xác minh khoá API để khác.
  • Hoạt động OAuthV1, “VerifyAccessToken”: Xác minh chữ ký, xác thực một Mã truy cập OAuth 1.0a và "khoá người tiêu dùng" và so khớp ứng dụng với sản phẩm API. Xem chính sách của OAuth v1.0a để khác.
  • OAuthV2, hoạt động “VerifyAccessToken”: Xác minh rằng hoạt động truy cập OAuth 2.0 mã thông báo là hợp lệ, so khớp mã thông báo với ứng dụng, xác minh rằng ứng dụng hợp lệ rồi so khớp ứng dụng sang sản phẩm API. Xem OAuth Home để xem các thiết bị khác.

Sau khi các chính sách và sản phẩm API được thiết lập, quy trình sau đây sẽ được Apigee thực thi Cạnh:

  1. Apigee Edge sẽ nhận được một yêu cầu và được gửi đến proxy API thích hợp.
  2. Hệ thống thực thi một chính sách xác minh khoá API hoặc mã truy cập OAuth do khách hàng.
  3. Edge phân giải Khoá API hoặc mã truy cập cho một hồ sơ ứng dụng.
  4. Edge sẽ phân giải danh sách (nếu có) các sản phẩm API được liên kết với ứng dụng.
  5. Sản phẩm API đầu tiên phù hợp được dùng để điền các biến Hạn mức.
  6. Nếu không có sản phẩm API nào khớp với khoá API hoặc mã truy cập, thì yêu cầu sẽ bị từ chối.
  7. Edge thực thi biện pháp kiểm soát quyền truy cập dựa trên URI (môi trường, proxy API và đường dẫn URI) dựa trên Chế độ cài đặt sản phẩm API cùng với chế độ cài đặt Hạn mức.