Bảo vệ các tài nguyên không phải Firebase bằng tính năng Kiểm tra ứng dụng

Bạn có thể bảo vệ những tài nguyên không phải Firebase của ứng dụng, chẳng hạn như các chương trình phụ trợ tự lưu trữ, bằng tính năng Kiểm tra ứng dụng. Để thực hiện điều này, bạn cần phải thực hiện cả hai việc sau:

Trước khi bắt đầu

Thêm tính năng Kiểm tra ứng dụng vào ứng dụng của bạn bằng cách sử dụng nhà cung cấp mặc định.

Gửi mã thông báo Kiểm tra ứng dụng cùng với các yêu cầu phụ trợ

Để đảm bảo các yêu cầu phụ trợ của bạn có mã thông báo Kiểm tra ứng dụng hợp lệ, chưa hết hạn, trước mỗi yêu cầu bằng lệnh gọi đến AppCheck::GetAppCheckToken(). Ứng dụng Thư viện kiểm tra sẽ làm mới mã thông báo nếu cần.

Sau khi bạn có mã thông báo hợp lệ, hãy gửi mã đó cùng với yêu cầu đến phần phụ trợ. Chiến lược phát hành đĩa đơn chi tiết cụ thể về cách bạn thực hiện việc này là tuỳ thuộc vào bạn, nhưng đừng gửi Mã thông báo Kiểm tra ứng dụng như một phần của URL, bao gồm cả trong tham số truy vấn, như khiến chúng dễ bị rò rỉ và chặn do vô tình. Các thành phần được đề xuất phương pháp tiếp cận này là gửi mã thông báo trong tiêu đề HTTP tùy chỉnh.

Ví dụ:

void CallApiExample() {
    firebase_app_check::AppCheck* app_check = firebase::app_check::AppCheck::GetInstance();
    Future<std::string> app_check_future = app_check->GetAppCheckToken(false);
    app_check_future.OnCompletion([&](const Future<std::string>& future_token) {
        if (future_token.result()) {
            // Got a valid App Check token. Include it in your own http calls.
        }
    }
}