Firebase App Check
App Check giúp bảo vệ các chương trình phụ trợ của ứng dụng khỏi bị lạm dụng bằng cách ngăn các ứng dụng không được uỷ quyền truy cập vào tài nguyên chương trình phụ trợ của bạn. Tính năng này hoạt động với cả các dịch vụ của Google (bao gồm cả các dịch vụ của Firebase và Google Cloud dịch vụ) và chương trình phụ trợ tuỳ chỉnh của riêng bạn để giữ an toàn cho tài nguyên của bạn.
Với App Check, các thiết bị chạy ứng dụng của bạn sẽ sử dụng một nhà cung cấp chứng thực ứng dụng hoặc thiết bị để chứng thực một hoặc cả hai điều sau:
- Yêu cầu bắt nguồn từ ứng dụng chính thống của bạn
- Yêu cầu bắt nguồn từ một thiết bị chính thống, không bị can thiệp
Chứng thực này được đính kèm với mọi yêu cầu mà ứng dụng của bạn gửi đến các API mà bạn chỉ định. Khi bạn bật tính năng thực thi App Check, các yêu cầu từ ứng dụng không có chứng thực hợp lệ sẽ bị từ chối, cũng như mọi yêu cầu bắt nguồn từ một ứng dụng hoặc nền tảng mà bạn chưa uỷ quyền.
App Check có hỗ trợ tích hợp để sử dụng các dịch vụ sau đây làm nhà cung cấp chứng thực:
- DeviceCheck hoặc App Attest trên các nền tảng của Apple
- Play Integrity trên Android
- reCAPTCHA Enterprise trên các ứng dụng web.
Nếu những dịch vụ này không đáp ứng đủ nhu cầu của bạn, bạn cũng có thể triển khai dịch vụ của riêng mình bằng cách sử dụng nhà cung cấp chứng thực bên thứ ba hoặc kỹ thuật chứng thực của riêng bạn.
App Check hoạt động với các dịch vụ sau đây của Google:
| Các dịch vụ được hỗ trợ của Firebase và Google Cloud |
|---|
| Firebase Authentication (Bản dùng thử) |
| Firebase SQL Connect |
| Cloud Firestore |
| Firebase Realtime Database |
| Cloud Storage for Firebase |
| Cloud Functions for Firebase (chỉ các hàm có thể gọi) |
| Firebase AI Logic |
| Các dịch vụ được hỗ trợ của Google Maps Platform |
| Maps JavaScript API (Bản dùng thử) |
| Places API (Mới) (Bản dùng thử) |
| Các dịch vụ khác được hỗ trợ của Google |
| Google Identity cho iOS |
Bạn cũng có thể sử dụng App Check để bảo vệ các tài nguyên chương trình phụ trợ tuỳ chỉnh không phải của Google, chẳng hạn như chương trình phụ trợ tự lưu trữ của riêng bạn.
Tính năng này hoạt động như thế nào?
Khi bạn bật App Check cho một dịch vụ và đưa SDK ứng dụng vào ứng dụng của mình, thì điều sau đây sẽ xảy ra định kỳ:
- Ứng dụng của bạn tương tác với nhà cung cấp mà bạn chọn để lấy chứng thực về tính xác thực của ứng dụng hoặc thiết bị (hoặc cả hai, tuỳ thuộc vào nhà cung cấp).
- Chứng thực được gửi đến máy chủ App Check. Máy chủ này sẽ xác minh tính hợp lệ của chứng thực bằng các tham số đã đăng ký với ứng dụng và trả về cho ứng dụng của bạn một mã thông báo App Check có thời gian hết hạn. Mã thông báo này có thể giữ lại một số thông tin về tài liệu chứng thực mà mã thông báo đã xác minh.
- SDK ứng dụng App Check lưu vào bộ nhớ đệm mã thông báo trong ứng dụng của bạn, sẵn sàng được gửi cùng với mọi yêu cầu mà ứng dụng của bạn gửi đến các dịch vụ được bảo vệ.
Một dịch vụ được bảo vệ bằng App Check chỉ chấp nhận các yêu cầu đi kèm với mã thông báo App Check hiện tại và hợp lệ.
Mức độ bảo mật do App Check cung cấp là bao nhiêu?
App Check dựa vào sức mạnh của các nhà cung cấp chứng thực để xác định tính xác thực của ứng dụng hoặc thiết bị. Tính năng này ngăn chặn một số, nhưng không phải tất cả các vectơ lạm dụng nhắm vào chương trình phụ trợ của bạn. Việc sử dụng App Check không đảm bảo loại bỏ được mọi hành vi lạm dụng, nhưng bằng cách tích hợp với App Check, bạn đang thực hiện một bước quan trọng để bảo vệ khỏi hành vi lạm dụng đối với các tài nguyên phụ trợ của mình.
App Check liên quan đến Firebase Authentication như thế nào?
App Check và Firebase Authentication là các phần bổ sung cho câu chuyện bảo mật ứng dụng của bạn. Firebase Authentication cung cấp tính năng xác thực người dùng để bảo vệ người dùng của bạn, trong khi App Check cung cấp chứng thực về tính xác thực của ứng dụng hoặc thiết bị để bảo vệ bạn, nhà phát triển. App Check bảo vệ quyền truy cập vào các tài nguyên chương trình phụ trợ của Google và chương trình phụ trợ tuỳ chỉnh bằng cách yêu cầu các lệnh gọi API phải chứa mã thông báo App Check hợp lệ. Hai khái niệm này hoạt động cùng nhau để giúp bảo mật ứng dụng của bạn.
Hạn mức và giới hạn
Việc bạn sử dụng App Check phải tuân theo hạn mức và giới hạn của các nhà cung cấp chứng thực mà bạn sử dụng.
Quyền truy cập DeviceCheck và App Attest phải tuân theo mọi hạn mức hoặc giới hạn do Apple đặt ra.
Play Integrity có hạn mức hằng ngày là 10.000 lệnh gọi cho cấp sử dụng API Chuẩn. Để biết thông tin về cách tăng cấp sử dụng, hãy xem tài liệu về Play Integrity.
reCAPTCHA Enterprise miễn phí cho 10.000 bài đánh giá mỗi tháng và có tính phí sau đó. Xem giá reCAPTCHA.
Ngoài ra, dịch vụ App Check có hạn mức về số lượng yêu cầu mà dịch vụ này sẽ xử lý từ một dự án duy nhất. Tuy nhiên, các hạn mức này thường không bị cạn kiệt thông qua việc sử dụng thông thường. Nếu bạn dự kiến lưu lượng truy cập của mình sẽ vượt quá các hạn mức này, hãy liên hệ với nhóm hỗ trợ Firebase để yêu cầu tăng hạn mức.
Bắt đầu
Bạn đã sẵn sàng bắt đầu?
Các nền tảng của Apple
Android
Web
Flutter
Unity
C++
Tìm hiểu cách triển khai nhà cung cấp App Check tuỳ chỉnh
Tìm hiểu cách sử dụng App Check để bảo vệ các tài nguyên chương trình phụ trợ tuỳ chỉnh
Chọn nền tảng của bạn:
iOS+ Android Web Flutter Unity C++