Kiểm tra ứng dụng Firebase cho các nền tảng của Apple

1. Giới thiệu

Firebase App Check giúp bảo vệ các tài nguyên phụ trợ của bạn khỏi bị lạm dụng, chẳng hạn như gian lận thanh toán và lừa đảo, bằng cách đảm bảo các yêu cầu đến từ các ứng dụng và thiết bị hợp pháp. Nó hoạt động với cả các dịch vụ Firebase và các dịch vụ phụ trợ của riêng bạn để giữ an toàn cho tài nguyên của bạn.

Bạn có thể tìm hiểu thêm về Kiểm tra ứng dụng Firebase trong tài liệu Firebase.

Kiểm tra ứng dụng sử dụng các dịch vụ dành riêng cho nền tảng để xác minh tính toàn vẹn của ứng dụng và / hoặc thiết bị. Các dịch vụ này được gọi là nhà cung cấp chứng thực . Một trong những nhà cung cấp như vậy là dịch vụ Kiểm tra ứng dụng của Apple , dịch vụ Kiểm tra ứng dụng có thể sử dụng để xác minh tính xác thực của các ứng dụng và thiết bị Apple.

Những gì bạn sẽ xây dựng

Trong bảng mã này, bạn sẽ thêm và thực thi Kiểm tra ứng dụng trong một ứng dụng mẫu hiện có để Cơ sở dữ liệu thời gian thực của dự án được bảo vệ khỏi bị truy cập bởi các ứng dụng và thiết bị bất hợp pháp.

Những gì bạn sẽ học

  • Cách thêm Kiểm tra ứng dụng Firebase vào ứng dụng hiện có.
  • Cách cài đặt các nhà cung cấp chứng thực Kiểm tra ứng dụng Firebase khác nhau.
  • Cách định cấu hình Chứng nhận ứng dụng cho ứng dụng của bạn.
  • Cách định cấu hình nhà cung cấp chứng thực gỡ lỗi để kiểm tra ứng dụng của bạn trên Trình mô phỏng trong quá trình phát triển ứng dụng.

Những gì bạn cần

  • Xcode 13.3.1 trở lên
  • Tài khoản nhà phát triển Apple cho phép bạn tạo số nhận dạng ứng dụng mới
  • Thiết bị iOS / iPadOS hỗ trợ App Attest (tìm hiểu về tính khả dụng của App Attest API )

2. Nhận dự án bắt đầu

Kho lưu trữ Firebase Quickstarts dành cho iOS chứa các ứng dụng mẫu để trình diễn các sản phẩm Firebase khác nhau. Bạn sẽ sử dụng ứng dụng Khởi động nhanh cơ sở dữ liệu Firebase cho SwiftUI làm cơ sở cho bảng mã này.

Sao chép kho lưu trữ Firebase Quickstarts cho iOS từ dòng lệnh:

git clone https://github.com/firebase/quickstart-ios.git
cd quickstart-ios

Mở dự án ứng dụng SwiftUI Quickstart trong Cơ sở dữ liệu thời gian thực trong Xcode:

cd database/DatabaseExampleSwiftUI/DatabaseExample
xed .

3. Thêm Kiểm tra ứng dụng vào ứng dụng của bạn

  1. Chờ Trình quản lý gói Swift giải quyết các phần phụ thuộc của dự án.
  2. Mở tab Chung của mục tiêu ứng dụng DatabaseExample (iOS) . Sau đó, trong phần Khung, Thư viện và Nội dung Nhúng , hãy nhấp vào nút + .
  3. Chọn để thêm FirebaseAppCheck .

4. Tạo và cài đặt nhà máy cung cấp App Check

  1. Trong nhóm Tệp được Shared , hãy thêm một nhóm mới có tên AppCheck .
  2. Bên trong nhóm này, hãy tạo một lớp nhà máy trong một tệp riêng biệt, ví dụ: MyAppCheckProviderFactory.swift , đảm bảo thêm nó vào mục tiêu DatabaseExample (iOS) :
    import Firebase
    
    class MyAppCheckProviderFactory: NSObject, AppCheckProviderFactory {
      func createProvider(with app: FirebaseApp) -> AppCheckProvider? {
        #if targetEnvironment(simulator)
          // App Attest is not available on simulators.
          // Use a debug provider.
          return AppCheckDebugProvider(app: app)
        #else
          // Use App Attest provider on real devices.
          return AppAttestProvider(app: app)
        #endif
      }
    }
    
  3. Tiếp theo, trong DatabaseExampleApp.swift , hãy đảm bảo nhập FirebaseAppCheck và đặt một phiên bản của lớp MyAppCheckProviderFactory làm nhà máy cung cấp App Check.
    import SwiftUI
    import FirebaseCore
    import FirebaseAppCheck
    
    @main
    struct DatabaseExampleApp: App {
      init() {
        // Set an instance of MyAppCheckProviderFactory as an App Check
        // provider factory before configuring Firebase.
        AppCheck.setAppCheckProviderFactory(MyAppCheckProviderFactory())
        FirebaseApp.configure()
      }
      ...
    }
    

5. Tạo và định cấu hình dự án Firebase

Để sử dụng Kiểm tra ứng dụng trong dự án iOS của mình, bạn cần làm theo các bước sau trong bảng điều khiển Firebase:

  • Thiết lập dự án Firebase.
  • Thêm ứng dụng iOS của bạn vào dự án Firebase.
  • Định cấu hình Xác thực Firebase.
  • Khởi tạo phiên bản Cơ sở dữ liệu thời gian thực mà bạn sẽ bảo vệ.
  • Định cấu hình Kiểm tra ứng dụng.

Tạo một dự án

Đầu tiên, bạn cần tạo một dự án Firebase.

  1. Trong bảng điều khiển Firebase , chọn Thêm dự án .
  2. Đặt tên cho dự án của bạn App Check Codelab
  3. Nhấp vào Tiếp tục.
  4. Tắt Google Analytics cho dự án này, sau đó nhấp vào Tạo dự án.

Tạo một phiên bản cơ sở dữ liệu thời gian thực

Bây giờ, điều hướng đến phần Cơ sở dữ liệu thời gian thực của bảng điều khiển Firebase.

  1. Bấm vào nút Tạo cơ sở dữ liệu để bắt đầu quy trình tạo cơ sở dữ liệu.
  2. Giữ nguyên vị trí mặc định ( us-central1 ) cho cơ sở dữ liệu và nhấp vào Tiếp theo .
  3. Đảm bảo rằng Chế độ đã khóa được chọn và nhấp vào nút Bật để bật Quy tắc bảo mật cho cơ sở dữ liệu của bạn.
  4. Điều hướng đến tab Quy tắc của trình duyệt Cơ sở dữ liệu thời gian thực và thay thế các quy tắc mặc định bằng các quy tắc sau:
    {
        "rules": {
            // User profiles are only readable/writable by the user who owns it
            "users": {
                "$UID": {
                    ".read": "auth.uid == $UID",
                    ".write": "auth.uid == $UID"
                }
            },
            // Posts can be read by anyone but only written by logged-in users.
            "posts": {
                ".read": true,
                ".write": "auth.uid != null",
                "$POSTID": {
                    // UID must match logged in user and is fixed once set
                    "uid": {
                        ".validate": "(data.exists() && data.val() == newData.val()) || newData.val() == auth.uid"
                    },
                    // User can only update own stars
                    "stars": {
                        "$UID": {
                            ".validate": "auth.uid == $UID"
                        }
                    }
                }
            },
            // User posts can be read by anyone but only written by the user that owns it,
            // and with a matching UID
            "user-posts": {
                ".read": true,
                "$UID": {
                    "$POSTID": {
                        ".write": "auth.uid == $UID",
                        ".validate": "data.exists() || newData.child('uid').val() == auth.uid"
                    }
                }
            },
            // Comments can be read by anyone but only written by a logged in user
            "post-comments": {
                ".read": true,
                ".write": "auth.uid != null",
                "$POSTID": {
                    "$COMMENTID": {
                        // UID must match logged in user and is fixed once set
                        "uid": {
                            ".validate": "(data.exists() && data.val() == newData.val()) || newData.val() == auth.uid"
                        }
                    }
                }
            }
        }
    }
    
  5. Nhấp vào nút Xuất bản để kích hoạt Quy tắc bảo mật được cập nhật.

Chuẩn bị cho Ứng dụng iOS của bạn được kết nối với Firebase

Để có thể chạy ứng dụng mẫu trên thiết bị vật lý, bạn cần thêm dự án vào nhóm phát triển của mình để Xcode có thể quản lý hồ sơ cấp phép cần thiết cho bạn. Làm theo các bước sau để thêm ứng dụng mẫu vào tài khoản nhà phát triển của bạn:

  1. Trong Xcode, chọn dự án DatabaseExample trong trình điều hướng dự án.
  2. Chọn mục tiêu DatabaseExample (iOS) và mở tab Signing & Capabilities .
  3. Bạn sẽ thấy thông báo lỗi cho biết "Đăng nhập vào DatabaseExample (iOS) yêu cầu nhóm phát triển" .
  4. Cập nhật số nhận dạng gói thành một số nhận dạng duy nhất. Cách dễ nhất để đạt được điều này là sử dụng tên miền đảo ngược của trang web của bạn, ví dụ: com.acme.samples.firebase.quickstart.DatabaseExample (vui lòng không sử dụng ID này; thay vào đó hãy chọn ID duy nhất của riêng bạn).
  5. Chọn nhóm phát triển của bạn.
  6. Bạn sẽ biết mọi thứ diễn ra tốt đẹp khi Xcode hiển thị "Hồ sơ cấp phép: Hồ sơ được quản lý Xcode" và một biểu tượng thông tin nhỏ bên cạnh nhãn này. Nhấp vào biểu tượng này sẽ hiển thị thêm chi tiết về hồ sơ cấp phép.

Kết nối ứng dụng iOS của bạn

Để được giải thích chuyên sâu về cách kết nối ứng dụng của bạn, hãy xem tài liệu về cách thêm Firebase vào dự án iOS của bạn . Để bắt đầu, hãy làm theo các bước chính sau trong bảng điều khiển Firebase:

  1. Từ màn hình Tổng quan về dự án của dự án mới của bạn, hãy nhấp vào nút + Thêm ứng dụng , sau đó nhấp vào biểu tượng iOS + để thêm ứng dụng iOS mới vào dự án Firebase của bạn.
  2. Nhập ID gói của ứng dụng của bạn (sử dụng ID mà bạn đã xác định trong phần trước, chẳng hạn như com.acme.samples.firebase.quickstart.DatabaseExample - lưu ý rằng đây phải là số nhận dạng duy nhất)
  3. Nhấp vào Đăng ký ứng dụng .
  4. Firebase tạo tệp GoogleService-Info.plist chứa tất cả siêu dữ liệu Firebase cần thiết cho ứng dụng của bạn.
  5. Nhấp vào Tải xuống GoogleService-Info.plist để tải tệp xuống.
  6. Trong Xcode, bạn sẽ thấy rằng dự án đã chứa một tệp có tên là GoogleService-Info.plist . Trước tiên, hãy xóa tệp này - bạn sẽ thay thế tệp này bằng tệp dành cho dự án Firebase của riêng bạn trong bước tiếp theo.
  7. Sao chép tệp GoogleService-Info.plist mà bạn đã tải xuống ở bước trước vào thư mục gốc của dự án Xcode của bạn và thêm nó vào đích DatabaseExample (iOS) , đảm bảo rằng nó có tên là GoogleService-Info.plist
  8. Nhấp qua các bước còn lại của quy trình đăng ký. Vì dự án mẫu đã được thiết lập chính xác, bạn không cần thực hiện bất kỳ thay đổi nào đối với mã.

Định cấu hình xác thực Firebase

Phù! Đó là khá nhiều thiết lập cho đến nay, nhưng hãy giữ chặt chẽ! Nếu bạn là người mới sử dụng Firebase, bạn đã thấy các phần thiết yếu của quy trình làm việc mà bạn sẽ sớm làm quen.

Bây giờ, bạn sẽ định cấu hình Xác thực Firebase cho ứng dụng này.

Bật nhà cung cấp dịch vụ đăng nhập bằng mật khẩu / email xác thực

  1. Vẫn trong bảng điều khiển Firebase , hãy mở phần Xác thực của bảng điều khiển.
  2. Nhấp vào Bắt đầu để thiết lập Xác thực Firebase cho dự án của bạn.
  3. Chọn tab Phương thức đăng nhập .
  4. Chọn Email / Mật khẩu trong phần Nhà cung cấp bản địa .
  5. Bật Email / Mật khẩu và nhấp vào Lưu .

Thêm người dùng thử nghiệm

  1. Mở tab Người dùng của phần Xác thực .
  2. Nhấp vào Thêm người dùng .
  3. Chỉ định email và mật khẩu cho người dùng thử nghiệm của bạn, sau đó nhấp vào Thêm người dùng .

Sử dụng ứng dụng để xoay vòng

Quay lại Xcode và chạy ứng dụng trên Trình mô phỏng iOS. Đăng nhập bằng email và mật khẩu cho người dùng thử nghiệm mà bạn vừa tạo. Sau khi đăng nhập, hãy tạo một bài đăng, đăng nhận xét lên một bài đăng hiện có và gắn dấu sao / bỏ gắn dấu sao cho các bài đăng.

6. Định cấu hình nhà cung cấp chứng thực App Attest

Trong bước này, bạn sẽ định cấu hình Kiểm tra ứng dụng để sử dụng nhà cung cấp Chứng thực ứng dụng trong bảng điều khiển Firebase.

  1. Trong bảng điều khiển Firebase, điều hướng đến phần Kiểm tra ứng dụng của bảng điều khiển.
  2. Nhấp vào Bắt đầu .
  3. Trong tab Ứng dụng , nhấp vào ứng dụng của bạn để mở rộng chi tiết.
  4. Nhấp vào Chứng chỉ ứng dụng để định cấu hình Chứng thực ứng dụng, sau đó nhập ID nhóm của Tài khoản nhà phát triển Apple của bạn (bạn có thể tìm thấy ID này trong phần Tư cách thành viên trên cổng Nhà phát triển Apple): 1645f7a369b678c2.png
  5. Nhấp vào Lưu .

Với điều này, bạn có một dự án Firebase đang hoạt động được kết nối với ứng dụng mới của chúng tôi và Kiểm tra ứng dụng được bật.

Bây giờ bạn đã sẵn sàng để định cấu hình dịch vụ chứng thực cụ thể của chúng tôi! Để biết thêm về quy trình làm việc này, hãy xem Bật Kiểm tra ứng dụng bằng Chứng thực ứng dụng trên iOS .

7. Định cấu hình Chứng thực ứng dụng cho ứng dụng của bạn

Bây giờ đã đến lúc bạn sử dụng SDK kiểm tra ứng dụng Firebase và triển khai một số mã khách hàng.

Trước tiên, bạn cần định cấu hình dự án Xcode để SDK có thể sử dụng API chứng thực ứng dụng của Apple để đảm bảo rằng các yêu cầu được gửi từ ứng dụng của bạn đến từ các phiên bản hợp pháp của ứng dụng.

  1. Thêm khả năng Chứng thực ứng dụng cho mục tiêu ứng dụng của bạn trong dự án Xcode:
  2. mở tab Ký hiệu & Khả năng trong cài đặt mục tiêu ứng dụng của bạn
  3. nhấp vào nút " + "
  4. trong hộp thoại, tìm và chọn Khả năng chứng thực ứng dụng ae84cd988a5fab31.png
  5. Một tệp DatabaseExample (iOS).entitlements sẽ xuất hiện trong thư mục gốc của dự án Xcode của bạn sau khi thực hiện bước trước đó.
  6. Trong tệp DatabaseExample (iOS).entitlements , hãy thay đổi giá trị cho khóa App Attest Environment để production.

Sau khi bạn hoàn thành các bước này và khởi chạy ứng dụng trên thiết bị iOS thực (iPhone / iPad), ứng dụng sẽ vẫn có thể truy cập Cơ sở dữ liệu thời gian thực. Ở bước sau, bạn sẽ thực thi Kiểm tra ứng dụng, điều này sẽ chặn các yêu cầu được gửi từ các ứng dụng và thiết bị không hợp pháp.

Để tìm hiểu thêm về quy trình làm việc này, hãy xem Bật Kiểm tra ứng dụng bằng Chứng thực ứng dụng trên iOS .

8. Định cấu hình Nhà cung cấp chứng thực gỡ lỗi cho Trình mô phỏng iOS

Nhà cung cấp Gỡ lỗi Kiểm tra Ứng dụng Firebase giúp bạn có thể kiểm tra các ứng dụng bằng cách thực thi Kiểm tra Ứng dụng Firebase trong các môi trường không đáng tin cậy, bao gồm Trình mô phỏng iOS, trong quá trình phát triển. Tiếp theo, bạn cần định cấu hình nhà cung cấp gỡ lỗi cùng nhau.

Cài đặt nhà cung cấp gỡ lỗi Firebase trong ứng dụng của bạn

Tùy chọn 1: Tạo có điều kiện một phiên bản của trình cung cấp gỡ lỗi trong nhà máy của bạn

Bạn đã làm hầu hết điều này khi tạo nhà máy cung cấp Kiểm tra ứng dụng. Trong bước này, bạn sẽ thêm ghi nhật ký của bí mật gỡ lỗi cục bộ do nhà cung cấp gỡ lỗi tạo ra, vì vậy bạn có thể đăng ký phiên bản ứng dụng này trong bảng điều khiển Firebase cho mục đích gỡ lỗi.

Cập nhật MyAppCheckProviderFactory.swift bằng mã sau:

import Firebase

class MyAppCheckProviderFactory: NSObject, AppCheckProviderFactory {
  func createProvider(with app: FirebaseApp) -> AppCheckProvider? {
#if targetEnvironment(simulator)
    // App Attest is not available on simulators.
    // Use a debug provider.
    let provider = AppCheckDebugProvider(app: app)

    // Print only locally generated token to avoid a valid token leak on CI.
    print("Firebase App Check debug token: \(provider?.localDebugToken() ?? "" )")

    return provider
#else
    // Use App Attest provider on real devices.
    return AppAttestProvider(app: app)
#endif
  }
}

Cách tiếp cận này giúp chúng tôi linh hoạt hơn trong việc định cấu hình Kiểm tra ứng dụng tùy thuộc vào môi trường. Ví dụ: bạn có thể sử dụng các nhà cung cấp chứng thực khác như DeviceCheck hoặc một nhà cung cấp chứng thực tùy chỉnh trên các phiên bản hệ điều hành không có sẵn App Attest . Xem ví dụ bên dưới:

import Firebase

class MyAppCheckProviderFactory: NSObject, AppCheckProviderFactory {
  func createProvider(with app: FirebaseApp) -> AppCheckProvider? {
      #if targetEnvironment(simulator)
      // App Attest is not available on simulators.
      // Use a debug provider.
      let provider = AppCheckDebugProvider(app: app)

      // Print only locally generated token to avoid a valid token leak on CI.
      print("Firebase App Check debug token: \(provider?.localDebugToken() ?? "" )")

      return provider
      #else
      if #available(iOS 14.0, *) {
        // Use App Attest provider on real devices.
        return AppAttestProvider(app: app)
      } else {
        return DeviceCheckProvider(app: app)
      }
      #endif
  }
}

Tùy chọn 2: Cài đặt AppCheckDebugProviderFactory

Đối với các trường hợp đơn giản hơn, bạn có thể cài đặt tạm thời hoặc có điều kiện AppCheckDebugProviderFactory trước khi định cấu hình phiên bản ứng dụng Firebase:

init() {
#if targetEnvironment(simulator)
  let providerFactory = AppCheckDebugProviderFactory()
#else
  let providerFactory = MyAppCheckProviderFactory()
#endif

  AppCheck.setAppCheckProviderFactory(providerFactory)

  FirebaseApp.configure()
}

Điều này sẽ giúp bạn tiết kiệm một vài dòng mã khi tạo nhà máy cung cấp Kiểm tra ứng dụng của riêng bạn.

Đăng ký bí mật gỡ lỗi của bạn trong bảng điều khiển Firebase

Nhận bí mật gỡ lỗi từ Trình mô phỏng iOS của bạn

  1. Nếu bạn chọn cài đặt AppCheckDebugProviderFactory (tùy chọn 2 ở trên), bạn cần bật ghi nhật ký gỡ lỗi cho ứng dụng của mình bằng cách thêm -FIRDebugEnabled vào đối số khởi chạy ứng dụng: f1c6b477a373e144.png
  2. Chạy ứng dụng của bạn trên Trình mô phỏng
  3. Tìm bí mật gỡ lỗi trong bảng điều khiển Xcode. Bạn có thể sử dụng bộ lọc bảng điều khiển để tìm nó nhanh hơn: d4c65af93e369c55.png

Lưu ý: Bí mật gỡ lỗi được tạo cho trình mô phỏng của bạn trong lần khởi chạy ứng dụng đầu tiên và được lưu trữ trong mặc định của người dùng. Nếu bạn xóa ứng dụng, đặt lại trình mô phỏng hoặc sử dụng trình mô phỏng khác, một bí mật gỡ lỗi mới sẽ được tạo. Đảm bảo đăng ký bí mật gỡ lỗi mới.

Đăng ký bí mật gỡ lỗi

  1. Quay lại bảng điều khiển Firevbase, chuyển đến phần Kiểm tra ứng dụng .
  2. Trong tab Ứng dụng , nhấp vào ứng dụng của bạn để mở rộng chi tiết.
  3. Trong menu mục bổ sung, hãy chọn Quản lý mã thông báo gỡ lỗi : d77c8ff768a00b4b.png
  4. Thêm bí mật mà bạn đã sao chép từ bảng điều khiển Xcode, sau đó nhấp vào Lưu f845c97b86f694d0.png

Sau các bước này, bạn có thể sử dụng ứng dụng trên Trình mô phỏng ngay cả khi thực thi Kiểm tra ứng dụng.

Lưu ý: Nhà cung cấp gỡ lỗi được thiết kế đặc biệt để giúp ngăn chặn rò rỉ bí mật gỡ lỗi. Với cách tiếp cận hiện tại, bạn không cần phải lưu trữ bí mật gỡ lỗi trong mã nguồn của mình.

Bạn có thể tìm thấy thêm chi tiết về quy trình này trong tài liệu - xem Sử dụng Kiểm tra ứng dụng với nhà cung cấp gỡ lỗi trên iOS .

9. Bật thực thi Kiểm tra ứng dụng cho Cơ sở dữ liệu thời gian thực của Firebase

Hiện tại, ứng dụng của chúng tôi khai báo một AppCheckProviderFactory trả về một AppAttestProvider cho các thiết bị thực. Khi chạy trên một thiết bị vật lý, ứng dụng của bạn sẽ thực hiện chứng thực và gửi kết quả đến phần phụ trợ Firebase. Tuy nhiên, phần mềm phụ trợ Firebase vẫn chấp nhận yêu cầu từ bất kỳ thiết bị nào, Trình mô phỏng iOS, tập lệnh, v.v. Chế độ này hữu ích khi bạn vẫn có người dùng với phiên bản cũ của ứng dụng mà không có Kiểm tra ứng dụng và bạn không muốn thực thi quyền truy cập kiểm tra chưa.

Bây giờ, bạn cần bật thực thi Kiểm tra ứng dụng để đảm bảo chỉ có thể truy cập ứng dụng Firebase từ các thiết bị hợp pháp. Các phiên bản ứng dụng cũ không có tích hợp Kiểm tra ứng dụng sẽ ngừng hoạt động sau khi bạn bật chế độ thực thi cho dự án Firebase.

  1. Trong bảng điều khiển Firebase trong phần Kiểm tra ứng dụng , nhấp vào Cơ sở dữ liệu thời gian thực để mở rộng chi tiết.
  2. Nhấp vào Thực thi .

64e6a81fa979b635.png

  1. Đọc thông tin trong hộp thoại xác nhận, sau đó bấm Thực thi .

Sau khi hoàn thành các bước này, chỉ những ứng dụng hợp pháp mới có thể truy cập vào cơ sở dữ liệu. Tất cả các ứng dụng khác sẽ bị chặn.

Thử truy cập Cơ sở dữ liệu thời gian thực bằng một ứng dụng bất hợp pháp

Để xem hoạt động thực thi Kiểm tra ứng dụng, hãy làm theo các bước sau:

  1. Tắt đăng ký Kiểm tra ứng dụng bằng cách nhận xét mã đăng ký Kiểm tra ứng dụng trong phương thức init của điểm nhập ứng dụng của bạn trong DatabaseExampleApp .
  2. Đặt lại Trình mô phỏng bằng cách chọn Thiết bị> Xóa tất cả nội dung và cài đặt . Thao tác này sẽ xóa sạch Trình mô phỏng (và làm mất hiệu lực của mã thông báo thiết bị).
  3. Chạy lại ứng dụng trên Trình mô phỏng.
  4. Bây giờ bạn sẽ thấy thông báo lỗi sau:
    [FirebaseDatabase][I-RDB034005] Firebase Database connection was forcefully killed by the server.  Will not attempt reconnect. Reason: Invalid appcheck token.
    

Để bật lại Kiểm tra ứng dụng, hãy làm như sau:

  1. Bỏ nhận xét mã đăng ký Kiểm tra ứng dụng trong DatabaseExampleApp .
  2. Khởi động lại ứng dụng.
  3. Lưu ý về mã thông báo Kiểm tra ứng dụng mới trong bảng điều khiển của Xcode.
  4. Đăng ký mã thông báo gỡ lỗi trong cài đặt Kiểm tra ứng dụng của ứng dụng của bạn trong bảng điều khiển Firebase.
  5. Chạy lại ứng dụng.
  6. Bạn sẽ không còn thấy thông báo lỗi và có thể thêm các bài đăng và nhận xét mới trong ứng dụng.

10. Xin chúc mừng!

9785d32f18b995d2.gif

Bây giờ bạn biết làm thế nào để:

  • Thêm Kiểm tra ứng dụng vào một dự án hiện có
  • Định cấu hình nhà cung cấp chứng thực App Attest cho phiên bản sản xuất của ứng dụng của bạn
  • Định cấu hình nhà cung cấp chứng thực gỡ lỗi để kiểm tra ứng dụng của bạn trên trình mô phỏng
  • Quan sát việc triển khai phiên bản ứng dụng để biết khi nào cần thực thi Kiểm tra ứng dụng cho dự án Firebase của bạn
  • Bật thực thi Kiểm tra ứng dụng

Bước tiếp theo

Tìm hiểu cách sử dụng Cấu hình từ xa để triển khai dần Kiểm tra ứng dụng cho người dùng của bạn trong Kiểm tra ứng dụng Firebase dần dần bằng cách sử dụng mã hóa Cấu hình từ xa Firebase

Đây là những tài nguyên khác mà bạn có thể thấy hữu ích

Thiết lập được mô tả trong bảng mã này sẽ hoạt động trong hầu hết các trường hợp, nhưng Kiểm tra ứng dụng cho phép bạn linh hoạt hơn nếu cần - hãy xem các liên kết sau để biết thêm chi tiết: