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

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

  1. Google Cloud 콘솔을 열고 프로젝트를 선택합니다.
  2. 서비스 계정 만들기를 클릭하고 서비스 계정 세부정보를 입력합니다.
  3. 만들고 계속하기를 클릭합니다.
  4. Firebase 앱 배포 관리자 역할을 추가하고 완료를 클릭합니다.
  5. 비공개 JSON 키를 만들고 빌드 환경에 액세스할 수 있는 위치로 이동합니다. 이 파일로 Firebase 프로젝트의 앱 배포에 대한 관리자 액세스 권한을 부여할 수 있으므로 파일을 안전한 곳에 보관하세요.
  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