Khóa 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

Khoá API (còn gọi là khoá người dùng trong Apigee Edge) là một giá trị chuỗi do ứng dụng khách truyền đến proxy API. 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 hiển thị khoá API cùng với yêu cầu của ứng dụng, sau đó Apigee Edge sẽ kiểm tra để đảm bảo khoá API đang ở trạng thái được phê duyệt cho tài nguyên đang được yêu cầu. Trong nội bộ, các proxy của bạn sử dụng các 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 để gói các proxy API mà bạn muốn bảo vệ bằng khoá API.
  • Tạo ứng dụng dành cho 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.

    Khi tạo ứng dụng dành cho 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 một khoá API.

  • Đối với các proxy (những proxy mà bạn đưa vào sản phẩm API), hãy thêm chính sách để xác minh rằng khoá API sắp tới 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 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á người dùng. Khi bạn đăng ký ứng dụng dành cho nhà phát triển, Apigee Edge sẽ tạo một khoá và thông tin bí mật của người dùng. Apigee Edge lưu trữ khoá người dùng để xác thực trong tương lai. Mỗi khoá người dùng là duy nhất trong tổ chức. Nhà phát triển ứng dụng nhúng khoá người dùng vào ứng dụng khách. Ứng dụng khách phải hiển thị khoá người dùng cho mỗi yêu cầu. Dịch vụ API xác minh khoá 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 có thể bao gồm tính năng bảo mật OAuth, vì tính năng này thường được sử 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ý ứng dụng dành cho nhà phát triển trong tổ chức của mình. Khi bạn thực hiện việc này, Apigee Edge sẽ tạo một khoá 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 đường dẫn tài nguyên và proxy API với việc phê duyệt khoá.
  4. Tại 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á người dùng khi gửi yêu cầu. Trong 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 tham chiếu ngầm 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á người dùng một cách rõ ràng.
    • Khi API sử dụng tính năng 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 đã phát sinh từ khoá người dùng.
  5. API Proxy xác thực thông tin xác thực của yêu cầu thông qua chính sách VerifyAPIKey hoặc chính sách OAuthV2 bằng thao tác VerifyAccessToken. Nếu bạn không đưa chính sách thực thi thông tin xác thực vào Proxy API, thì mọi phương thức gọi đều có thể gọi thành công 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 xác thực yêu cầu

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

  1. Nếu đang sử dụng tính năng xác minh mã thông báo OAuth, tức là 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á người dùng được dùng để tạo mã thông báo.
  2. Nếu đ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:
    1. Apigee Edge kiểm tra danh sách Sản phẩm API mà khoá người dùng đã được liên kết.
    2. Edge kiểm tra từng Sản phẩm API để xem Proxy API hiện tại có trong Sản phẩm API hay không và đườ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á 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à nhà phát triển không ngừng hoạt động.
    4. Nếu tất cả những điều đó đều đúng – mã thông báo chưa 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ó trong sản phẩm – thì quá trình xác minh thông tin xác thực sẽ thành công.