Xác thực bằng tài khoản dịch vụ


Tài khoản dịch vụ rất hữu ích khi thiết lập App Distribution trong môi trường CI. Việc xác thực bằng tài khoản dịch vụ cho phép bạn sử dụng các thư viện ứng dụng (ví dụ: CLI Firebase, Gradle và fastlane) để phân phối bản dựng. Khi bạn sử dụng tài khoản dịch vụ để xác thực, Firebase sử dụng Thông tin xác thực mặc định của ứng dụng (ADC) để định vị thông tin đăng nhập của ứng dụng. Bạn có thể cung cấp thông tin này bằng cách đặt biến môi trường GOOGLE_APPLICATION_CREDENTIALS hoặc bằng cách trỏ vào đường dẫn của khoá tài khoản dịch vụ trong mã của ứng dụng.

  1. Mở bảng điều khiển Google Cloud rồi chọn dự án của bạn.
  2. Nhấp vào Tạo tài khoản dịch vụ rồi nhập thông tin về tài khoản dịch vụ.
  3. Nhấp vào Tạo và tiếp tục.
  4. Thêm vai trò Quản trị viên Firebase App Distribution rồi nhấp vào Xong.
  5. Tạo khoá JSON riêng tư và di chuyển khoá đó đến một vị trí mà môi trường xây dựng của bạn có thể truy cập. Hãy nhớ lưu tệp này ở nơi an toàn vì tệp này cấp quyền truy cập của quản trị viên vào App Distribution trong dự án Firebase của bạn.
  6. Bỏ qua bước này nếu bạn đã tạo ứng dụng sau ngày 20 tháng 9 năm 2019: Trong Bảng điều khiển API của Google, hãy bật Firebase App Distribution API. Khi được nhắc, hãy chọn dự án có cùng tên với Firebase của bạn dự án.

  7. Cung cấp thông tin đăng nhập tài khoản dịch vụ của bạn:

    • Chỉ dành cho Gradle: Trong tệp build.gradle, hãy thiết lập thuộc tính serviceCredentialsFile vào tệp JSON của khoá riêng tư:

      android {
      
          // ...
      
          buildTypes {
              release {
                  firebaseAppDistribution {
                      serviceCredentialsFile="/absolute/path/to/credentials/file.json"
                      releaseNotesFile="/path/to/releasenotes.txt"
                      testers="ali@example.com, bri@example.com, cal@example.com"
                  }
              }
          }
      
          // ...
      
      }
      

      Bạn có thể cung cấp thông tin xác thực cho mã của ứng dụng theo cách không bắt buộc bằng cách làm theo bước bên dưới.

    • Đối với CLI, nhanh hoặc Gradle Firebase: Thiết lập môi trường biến GOOGLE_APPLICATION_CREDENTIALS đến đường dẫn của khoá riêng tư của bạn Tệp JSON:

      export GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/credentials/file.json