서비스 계정을 사용하여 인증


서비스 계정은 CI 환경에서 App Distribution을 설정하는 데 유용합니다. 서비스 계정으로 인증하면 클라이언트 라이브러리(예: Firebase CLI, Gradle, fastlane)를 사용하여 빌드를 배포할 수 있습니다. 서비스 계정을 사용하여 인증하면 Firebase에서 애플리케이션 기본 사용자 인증 정보(ADC)를 사용하여 앱의 사용자 인증 정보를 찾습니다. GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 설정하거나 앱 코드에서 서비스 계정 키의 경로를 가리켜 이 사용자 인증 정보를 제공할 수 있습니다.

  1. Google Cloud 콘솔을 열고 프로젝트를 선택합니다.
  2. 서비스 계정 만들기를 클릭하고 서비스 계정 세부정보를 입력합니다.
  3. 만들고 계속하기를 클릭합니다.
  4. Firebase App Distribution 관리자 역할을 추가하고 완료를 클릭합니다.
  5. 비공개 JSON 키를 만들고 빌드 환경에 액세스할 수 있는 위치로 이동합니다. 이 파일로 Firebase 프로젝트의 App Distribution에 대한 관리자 액세스 권한을 부여할 수 있으므로 파일을 안전한 곳에 보관하세요.
  6. 2019년 9월 20일 이후에 앱을 만든 경우 이 단계를 건너뜁니다. Google API 콘솔에서 Firebase App Distribution API를 사용 설정합니다. 메시지가 나타나면 Firebase 프로젝트와 이름이 동일한 프로젝트를 선택합니다.

  7. 서비스 계정 사용자 인증 정보를 제공합니다.

    • Gradle만 해당: build.gradle 파일에서 serviceCredentialsFile 속성을 비공개 키 JSON 파일로 설정합니다.

      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"
                  }
              }
          }
      
          // ...
      
      }
      

      원한다면 아래 단계를 따라 앱 코드에 사용자 인증 정보를 제공해도 됩니다.

    • Firebase CLI, fastlane 또는 Gradle: 환경 변수 GOOGLE_APPLICATION_CREDENTIALS를 비공개 키 JSON 파일의 경로로 설정합니다.

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