Firebase App Check
App Check giúp bảo vệ các phần phụ trợ của ứng dụng khỏi hành vi sai trái bằng cách ngăn chặn các ứng dụng trái phép truy cập vào tài nguyên 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) và các 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, những 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 kiện sau:
- Yêu cầu bắt nguồn từ ứng dụng xác thực của bạn
- Các yêu cầu xuất phát từ một thiết bị chính hãng, không bị giả mạo
Chứng thực này được đính kèm vào 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 chế độ thực thi App Check, các yêu cầu từ những máy khách 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:
Các nền tảng của Apple: DeviceCheck | App Attest | reCAPTCHA Enterprise
Nền tảng Android: Play Integrity | reCAPTCHA Enterprise
Web: reCAPTCHA Enterprise
Nếu những dịch vụ này không đáp ứng được 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 xem trước) |
| 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 |
| Places API (mới) |
| Navigation SDK (Android và iOS) |
| Các dịch vụ khác của Google được hỗ trợ |
| Google Identity cho iOS |
Bạn cũng có thể sử dụng App Check để bảo vệ các tài nguyên phụ trợ tuỳ chỉnh không phải của Google, chẳng hạn 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, những đ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 sẽ lưu mã thông báo vào bộ nhớ đệm 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ệ.
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, hợp lệ.
App Check có mức độ bảo mật như thế nào?
App Check dựa vào khả năng của các nhà cung cấp dịch vụ chứng thực để xác định tính xác thực của ứng dụng hoặc thiết bị. Việc này ngăn chặn một số (nhưng không phải tất cả) vectơ tấn công nhắm vào các phần phụ trợ của bạn. Việc sử dụng App Check không đảm bảo loại bỏ được tất cả hành vi sai trái, 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ệ các tài nguyên phụ trợ khỏi hành vi sai trái.
App Check có liên quan gì đến Firebase Authentication?
App Check và Firebase Authentication là những phần bổ sung cho câu chuyện về tính bảo mật của ứng dụng. 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 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 phụ trợ của Google và các 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 phối hợp với 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 vào 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ượt gọi cho cấp sử dụng API Chuẩn. Để biết thông tin về cách nâng cấp cấp sử dụng, hãy xem tài liệu về Play Integrity.
reCAPTCHA Enterprise miễn phí cho 10.000 lượt đánh giá mỗi tháng và có tính phí cho số lượt đánh giá vượt quá hạn mức này. 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, những hạn mức này thường không bị cạn kiệt thông qua việc sử dụng bình thường. Nếu lưu lượng truy cập của bạn dự kiến sẽ vượt quá các hạn mức này, hãy liên hệ với nhóm hỗ trợ của Firebase để yêu cầu tăng hạn mức.
Bắt đầu
Bạn đã sẵn sàng bắt đầu?
Nền tảng của Apple
DeviceCheck App Attest reCAPTCHA Enterprise
Android
Play Integrity reCAPTCHA Enterprise
Web
Flutter
Nhà cung cấp mặc định reCAPTCHA Enterprise
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 phụ trợ tuỳ chỉnh
Chọn nền tảng bạn sử dụng:
iOS+ Android Web Flutter Unity C++
Tìm hiểu cách sử dụng App Check cho môi trường phát triển cục bộ và CI/CD
Chọn nền tảng bạn sử dụng:
iOS+ Android Web Flutter Unity C++