Khóa API

Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào tài liệu Apigee X.
thông tin

Khoá API (trong Apigee Edge còn được gọi là khoá của người dùng:) là một giá trị chuỗi do ứng dụng truyền đến các proxy API của bạn. Khoá này xác định riêng biệt ứng dụng khách.

Xác thực khoá API là hình thức bảo mật dựa trên ứng dụng đơn giản nhất mà bạn có thể định cấu hình cho một API. Ứng dụng khách chỉ cần xuất hiện một khoá API cùng với yêu cầu của mình, sau đó Apigee Edge sẽ kiểm tra để đảm bảo rằng khoá API ở trạng thái được phê duyệt cho tài nguyên đang được yêu cầu. Về nội bộ, các proxy của bạn sử dụng chính sách để xác minh tính xác thực của khoá API.

Để hỗ trợ sự đơn giản này, bạn cần thiết lập một chút. Để hỗ trợ khoá API, bạn cần:

  • Tạo một sản phẩm API Apigee Edge để nhóm các proxy API mà bạn muốn bảo vệ bằng khoá API.
  • Tạo một ứng dụng nhà phát triển Apigee Edge đại diện cho nhà phát triển ứng dụng khách mà bạn sẽ xác thực ứng dụng của họ.

    Khi tạo ứng dụng của nhà phát triển, bạn chỉ định các sản phẩm API mà ứng dụng của nhà phát triển sẽ có quyền truy cập và ứng dụng đó sẽ cần cung cấp khoá API.

  • Đối với các proxy của bạn (những proxy mà bạn đã đưa vào sản phẩm API), hãy thêm các chính sách để xác minh rằng khoá API đến là hợp lệ.

Hướng dẫn Bảo mật API bằng cách yêu cầu khoá API là một cách nhanh chóng để tìm hiểu cách kiểm soát quyền truy cập vào một proxy API bằng khoá API.

Cách hoạt động của khoá API

Trong Apigee Edge, khoá API được gọi là khoá của người dùng. Khi bạn đăng ký ứng dụng của nhà phát triển, Apigee Edge sẽ tạo một khoá của người dùng và thông tin bí mật. Apigee Edge lưu trữ khoá của người dùng: để xác thực sau này. Mỗi khoá của người dùng: đều là duy nhất trong tổ chức. Nhà phát triển ứng dụng nhúng khoá của người dùng vào ứng dụng khách. Ứng dụng khách phải xuất trình khoá của người dùng cho mỗi yêu cầu. API Services xác minh khoá của người dùng: trước khi cho phép yêu cầu của ứng dụng.

Các bước tổng quát

Các bước sau đây mô tả cách Apigee Edge sử dụng khoá API. Các bước này cũng bao gồm khả năng có sự hiện diện của bảo mật OAuth, vì bảo mật này thường được dùng cùng với khoá API.

  1. Tạo một sản phẩm API bao gồm các proxy API cần được bảo vệ bằng khoá API.
  2. Bạn đăng ký một ứng dụng nhà phát triển trong tổ chức của mình. Khi bạn thực hiện Apigee Edge sẽ tạo một khoá của người dùng: và một khoá bí mật của người dùng.
  3. Liên kết ứng dụng của nhà phát triển với ít nhất một sản phẩm API. Đây là sản phẩm liên kết các đường dẫn tài nguyên và proxy API với quy trình phê duyệt khoá.
  4. Trong thời gian chạy, khi ứng dụng khách gửi yêu cầu đến API của bạn, ứng dụng khách sẽ gửi khoá của người dùng: khi gửi yêu cầu. Trên thực tế, khoá của người dùng: có thể được truyền một cách rõ ràng hoặc có thể được tham chiếu một cách ngầm định thông qua mã thông báo OAuth:
    • Khi API sử dụng quy trình xác minh khoá API (chẳng hạn như bằng cách triển khai chính sách VerifyAPIKey), ứng dụng khách phải truyền khoá của người dùng: một cách rõ ràng.
    • Khi API sử dụng quy trình xác minh mã thông báo OAuth (chẳng hạn như bằng cách triển khai chính sách OAuthV2), ứng dụng khách phải truyền một mã thông báo đã được xuất phát từ khoá người dùng.
  5. API Proxy xác thực thông tin đăng nhập của yêu cầu thông qua chính sách VerifyAPIKey hoặc chính sách OAuthV2 có thao tác VerifyAccessToken. Nếu bạn không đưa chính sách thực thi thông tin đăng nhập vào API Proxy, thì mọi phương thức gọi đều có thể gọi thành công các API của bạn. Để biết thêm thông tin, hãy xem Chính sách xác minh khoá API.

Xác minh thông tin đăng nhập của yêu cầu

Đây là thông tin tổng quan. Hãy nhớ xem phần Thiết lập quy trình xác thực khoá API để biết thông tin chi tiết và ví dụ về mã.

  1. Nếu bạn đang sử dụng quy trình xác minh mã thông báo OAuth – bạn đã triển khai chính sách OAuth để xác minh và ứng dụng khách đã truyền mã thông báo OAuth:
    • Apigee Edge xác minh rằng mã thông báo chưa hết hạn, sau đó tra cứu khoá của người dùng: đã dùng để tạo mã thông báo.
  2. Nếu bạn đang sử dụng khoá API – bạn đã triển khai chính sách VerifyAPIKey và ứng dụng khách đã truyền khoá người dùng của ứng dụng đó:
    1. Apigee Edge kiểm tra danh sách các Sản phẩm API mà khoá của người dùng đã được liên kết.
    2. Edge kiểm tra từng Sản phẩm API để xem liệu API Proxy hiện tại có nằm trong Sản phẩm API hay không và liệu đường dẫn tài nguyên hiện tại (đường dẫn url) có được bật trên Sản phẩm API hay không.
    3. Edge cũng xác minh rằng khoá của người dùng: không hết hạn hoặc bị thu hồi, kiểm tra để đảm bảo ứng dụng không bị thu hồi và kiểm tra để đảm bảo nhà phát triển không ở trạng thái không hoạt động.
    4. Nếu tất cả những điều đó đều đúng – mã thông báo không hết hạn (nếu có), khoá người dùng hợp lệ và được phê duyệt, ứng dụng được phê duyệt, nhà phát triển đang hoạt động, proxy có trong sản phẩm và tài nguyên có trên sản phẩm – thì quy trình xác minh thông tin đăng nhập sẽ thành công.