Check out what’s new from Firebase at Google I/O 2022. Learn more

웹 앱에서 디버그 공급자와 함께 앱 확인 사용

App Check용으로 앱을 등록한 후 개발 중 로컬 또는 지속적 통합(CI) 환경과 같이 App Check가 일반적으로 유효한 것으로 분류하지 않는 환경에서 앱을 실행하려는 경우 다음을 생성할 수 있습니다. 실제 증명 공급자 대신 App Check 디버그 공급자를 사용하는 앱의 디버그 빌드입니다.

localhost에서 디버그 공급자 사용

localhost 에서 앱을 실행하는 동안(예: 개발 중) 디버그 공급자를 사용하려면 다음을 수행합니다.

  1. 디버그 빌드에서 App Check를 초기화하기 전에 self.FIREBASE_APPCHECK_DEBUG_TOKENtrue 로 설정하여 디버그 모드를 활성화하십시오. 예를 들어:

    Web version 9

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web version 8

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
    firebase.appCheck().activate(/* site key or provider */);
    
  2. 웹 앱을 로컬로 방문하여 브라우저의 개발자 도구를 엽니다. 디버그 콘솔에 디버그 토큰이 표시됩니다.

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.
  3. Firebase 콘솔의 앱 검사 섹션에 있는 앱의 오버플로 메뉴에서 디버그 토큰 관리 를 선택합니다. 그런 다음 이전 단계에서 로그인한 디버그 토큰을 등록합니다.

    디버그 토큰 관리 메뉴 항목의 스크린샷

토큰을 등록하면 Firebase 백엔드 서비스에서 토큰을 유효한 것으로 수락합니다.

이 토큰을 사용하면 유효한 기기 없이 Firebase 리소스에 액세스할 수 있으므로 비공개로 유지하는 것이 중요합니다. 공개 저장소에 커밋하지 말고 등록된 토큰이 손상된 경우 Firebase 콘솔에서 즉시 취소하세요.

이 토큰은 브라우저에 로컬로 저장되며 동일한 컴퓨터의 동일한 브라우저에서 앱을 사용할 때마다 사용됩니다. 다른 브라우저나 다른 시스템에서 토큰을 사용하려면 self.FIREBASE_APPCHECK_DEBUG_TOKENtrue 대신 토큰 문자열로 설정하십시오.

CI 환경에서 디버그 공급자 사용

CI(지속적 통합) 환경에서 디버그 공급자를 사용하려면 다음을 수행합니다.

  1. Firebase 콘솔의 앱 검사 섹션에 있는 앱의 오버플로 메뉴에서 디버그 토큰 관리 를 선택합니다. 그런 다음 새 디버그 토큰을 만듭니다. 다음 단계에서 토큰이 필요합니다.

    이 토큰을 사용하면 유효한 기기 없이 Firebase 리소스에 액세스할 수 있으므로 비공개로 유지하는 것이 중요합니다. 공개 저장소에 커밋하지 말고 등록된 토큰이 손상된 경우 Firebase 콘솔에서 즉시 취소하세요.

    디버그 토큰 관리 메뉴 항목의 스크린샷

  2. 방금 생성한 디버그 토큰을 CI 시스템의 보안 키 저장소(예: GitHub Actions의 암호화된 비밀 또는 Travis CI의 암호화된 변수 )에 추가합니다.

  3. 필요한 경우 디버그 토큰을 CI 환경 내에서 환경 변수로 사용할 수 있도록 CI 시스템을 구성합니다. 변수 이름을 APP_CHECK_DEBUG_TOKEN_FROM_CI 와 같이 지정합니다.

  4. 디버그 빌드에서 App Check를 가져오기 전에 self.FIREBASE_APPCHECK_DEBUG_TOKEN 을 디버그 토큰 환경 변수 값으로 설정하여 디버그 모드를 활성화하십시오. 예를 들어:

    Web version 9

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    initializeAppCheck(app, { /* App Check options */ });
    

    Web version 8

    self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI;
    firebase.appCheck().activate(/* site key or provider */);
    

앱이 CI 환경에서 실행될 때 Firebase 백엔드 서비스는 앱이 보내는 토큰을 유효한 것으로 수락합니다.