App Check에 앱을 등록한 후 App Check가 일반적으로 유효한 것으로 분류하지 않는 환경에서 앱을 실행하려는 경우(예: 개발 중 로컬에서 또는 지속적 통합(CI) 환경에서) 실제 증명 제공자 대신 App Check 디버그 제공자를 사용하는 앱의 디버그 빌드를 만들 수 있습니다.
localhost에서 디버그 제공자 사용
localhost에서 앱을 실행하는 동안(예: 개발 중에) 디버그 제공자를 사용하려면 다음을 수행합니다.
- 디버그 빌드에서 App Check를 초기화하기 전에 - self.FIREBASE_APPCHECK_DEBUG_TOKEN을- true로 설정하여 디버그 모드를 사용 설정합니다. 예를 들면 다음과 같습니다.- Web- self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; initializeAppCheck(app, { /* App Check options */ });- Web- self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; firebase.appCheck().activate(/* site key or provider */);
- 로컬에서 웹 앱을 방문하여 브라우저의 개발자 도구를 엽니다. 디버그 콘솔에 디버그 토큰이 표시됩니다. - AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will need to safelist it in the Firebase console for it to work. 
- Firebase Console의 App Check 섹션에 있는 앱의 더보기 메뉴에서 디버그 토큰 관리를 선택합니다. 그런 다음 이전 단계에서 로깅한 디버그 토큰을 등록합니다.  
토큰을 등록하면 Firebase 백엔드 서비스에서 토큰을 유효한 것으로 간주합니다.
이 토큰은 유효한 기기 없이도 Firebase 리소스에 액세스를 허용하므로 비공개로 유지하는 것이 중요합니다. 공개 저장소에 커밋하지 말고 등록된 토큰이 손상된 경우 Firebase Console에서 즉시 취소합니다.
이 토큰은 브라우저에 로컬로 저장되며 동일한 머신의 동일한 브라우저에서 앱을 사용할 때마다 사용됩니다. 다른 브라우저 또는 다른 머신에서 토큰을 사용하려면 self.FIREBASE_APPCHECK_DEBUG_TOKEN을 true 대신 토큰 문자열로 설정합니다.
CI 환경에서 디버그 제공자 사용
지속적 통합(CI) 환경에서 디버그 제공자를 사용하려면 다음 단계를 따르세요.
- Firebase Console의 App Check 섹션에 있는 앱의 더보기 메뉴에서 디버그 토큰 관리를 선택합니다. 그런 다음 새 디버그 토큰을 만듭니다. 다음 단계에서 토큰이 필요합니다. - 이 토큰은 유효한 기기 없이도 Firebase 리소스에 액세스를 허용하므로 비공개로 유지하는 것이 중요합니다. 공개 저장소에 커밋하지 말고 등록된 토큰이 손상된 경우 Firebase Console에서 즉시 취소합니다.  
- 방금 만든 디버그 토큰을 CI 시스템의 보안 키 저장소에 추가합니다(예: GitHub 작업의 암호화된 보안 비밀 또는 Travis CI의 암호화된 변수). 
- 필요한 경우 CI 환경 내에서 디버그 토큰을 환경 변수로 사용하도록 CI 시스템을 구성합니다. 변수의 이름을 - APP_CHECK_DEBUG_TOKEN_FROM_CI와 같이 지정합니다.
- 디버그 빌드에서 App Check를 가져오기 전에 - self.FIREBASE_APPCHECK_DEBUG_TOKEN을 디버그 토큰 환경 변수 값으로 설정하여 디버그 모드를 사용 설정합니다. 예를 들면 다음과 같습니다.- Web- self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI; initializeAppCheck(app, { /* App Check options */ });- Web- self.FIREBASE_APPCHECK_DEBUG_TOKEN = process.env.APP_CHECK_DEBUG_TOKEN_FROM_CI; firebase.appCheck().activate(/* site key or provider */);
앱이 CI 환경에서 실행되면 Firebase 백엔드 서비스는 전송된 토큰을 유효한 것으로 수락합니다.