Firebase 프로젝트에 인증된 사용자 모드 를 적용할 수 있습니다. 적용되면 Gemini API을 통한 모든 Firebase AI Logic 요청은 앱의 인증된 사용자로부터 발생해야 합니다. 특히 앱의 최종 사용자는 앱에서 Firebase AI Logic으로 요청을 보내기 전에 Firebase Authentication을 사용하여 인증해야 합니다. 최종 사용자가 인증되지 않은 경우 요청이 차단됩니다.
요청이 차단되면 응답은 401: unauthenticated 오류가 됩니다.
중요 고려사항
인증된 사용자 모드에 관한 다음 중요 고려사항을 숙지하세요.
.인증된 사용자 모드가 적용된 경우
인증된 사용자 모드가 적용되면 다음 사항에 유의하세요.
이 설정은 프로젝트 전반에 적용되는 Firebase AI Logic 설정입니다.
- 프로젝트에 등록된 모든 앱에 적용됩니다.
- 적용된 프로젝트에만 적용됩니다.
이 설정은 차단합니다. Firebase AI Logic을 통한 모든 요청은 않는 Firebase Authentication 사용자 인증 정보를 전송하지
- 사용자는 Firebase Authentication 전에 요청을 Firebase AI Logic으로 보내기 전에 인증해야 합니다.
- 이 설정은 모든 요청에 대해 Firebase AI Logic를 통해 Gemini Developer API 및 Vertex AI Gemini API 모두에 적용됩니다.
- 이 설정은 모든 요청에 적용됩니다. 서버 프롬프트 템플릿
- 이 설정은 사용자별, API별 또는 템플릿별로 적용할 수 없습니다.
이 설정은 프로젝트에서 Firebase AI Logic을 통하지 않는 Gemini API 요청을 차단하지 않습니다.
-
- 이 설정은 사용자가 인증되지 않은 경우 클라우드 호스팅 모델에 대한 요청을 차단 합니다.
- 이 설정은 사용자의 인증 상태와 관계없이 온디바이스 모델에 대한 요청을 차단하지 않습니다.
Gemini Live API를 사용하는 경우:
- 이 설정은 Firebase AI Logic을 사용할 때 웹 앱 의 Gemini Live API 사용을 차단 합니다 — 인증된 사용자에게도 사용하는 경우에도 Firebase AI Logic. 여기에는 Firebase JS SDK 또는 Flutter 웹 앱을 사용하는 웹 앱이 포함됩니다.
Firebase AI Logic REST API를 사용하는 경우
- 이 설정은 Firebase 인증 사용자 인증 정보를 전송하지 않는 추론 요청을 차단 합니다.
Firebase Authentication 여기에는
templateGenerateContent또는templateStreamGenerateContent와 같은 서버 프롬프트 템플릿 요청이 포함됩니다. - 이 설정은 IAM으로 보호되므로 템플릿 및 구성을 관리하는 요청과 같은 제어 영역 요청을 차단하지 않습니다.
- 이 설정은 Firebase 인증 사용자 인증 정보를 전송하지 않는 추론 요청을 차단 합니다.
Firebase Authentication 여기에는
이 설정은
countTokens(토큰 수 API)에 대한 요청을 차단하지 않습니다.
인증된 사용자 모드를 적용하기 전에
인증된 사용자 모드를 적용하기 전에 다음 사항에 유의하세요.
Firebase 인증을 사용하지 않는 기존 버전의 앱이 있는 경우 Firebase Authentication
- 이 설정은 차단합니다. Firebase AI Logic을 통한 요청을 이러한 기존 앱 버전에서
- 모든 활성 클라이언트가 인증된 사용자 모드를 적용하기 전에 Firebase Authentication 사용하도록 업데이트되었는지 확인하세요.
이전 Flutter 플러그인 버전에는 요청과 함께 사용자 인증 정보를 전송하기 위해 특별한 인스턴스화가 필요합니다.Firebase Authentication
- 앱에서 Flutter 플러그인
firebase_aiv3.11.0 이하 (BoM v4.12.0 이하)를 사용하고 인스턴스화 중에 not 전달하지 Authentication 않는 경우, 이 설정은 인증된 사용자에게도 Firebase AI Logic을 통한 요청을 차단 합니다. - 인증된 사용자 모드를 적용하기 전에 Flutter의 모든 활성 클라이언트가 최신 버전의 플러그인으로 업데이트되었는지 확인하세요.
- 앱에서 Flutter 플러그인
Firebase Authentication 설정
Firebase Authentication 문서에서는 비밀번호, 전화번호, 인기 있는 제휴 ID 제공업체 (예: Google, Facebook, GitHub) 등을 사용하는 것을 비롯하여 지원되는 인증 제공업체에 관한 설명과 구현 안내를 제공합니다.
앱에서 Firebase Authentication을 구현하면 앱은 인증된 사용자의 Firebase Authentication 사용자 인증 정보를 Firebase AI Logic에 대한 모든 요청에서 자동으로 전송합니다.
일부 인증 제공업체에 관한 다음 사항에 유의하세요.
커스텀 인증: 요청과 함께 전송할 서명된 인증 토큰을 가져와야 합니다. Firebase AI Logic 자세한 내용은 커스텀 인증을 참고하세요.
익명 또는 이메일/비밀번호 인증 방법: 이러한 사용자는 인증된 사용자로 간주되므로 Firebase AI Logic에 대한 요청이 차단되지 않습니다.
익명 및 이메일/비밀번호 인증 방법에서는 사용자가 앱을 방문하여 Firebase Authentication 사용자 인증 정보를 만들어야 하지만 기본적으로 사용자에게 본인 인증을 요구하지 않으므로 강력한 형태의 인증 (특히 유료 리소스 보호)은 아닙니다. 앱에서 이러한 인증 방법의 기본 구현을 사용하는 경우 인증된 사용자 모드를 적용하더라도 보호 수준이 낮을 수 있습니다. Firebase 앱 체크도 적용했는지 Firebase App Check확인하세요.
인증된 사용자 모드 설정 관리
Firebase 콘솔에서 인증된 사용자 모드의 설정을 관리합니다.
.필수 IAM 권한 및 역할
인증된 사용자 모드 설정을 관리하려면 firebasevertexai.configs.update 권한이 필요하며, 이 권한은 소유자, 편집자, Firebase 관리자, Firebase AI Logic 관리자 IAM 역할에 기본적으로 포함되어 있습니다.
인증된 사용자 모드 적용
Firebase 프로젝트에 인증된 사용자 모드를 적용하는 방법은 다음과 같습니다.
아직 검토하지 않은 경우 이 가이드의 앞부분에서 인증된 사용자 모드에 관한 중요 고려사항을 검토하세요.
아직 설정하지 않은 경우 앱에서 설정Firebase Authentication (이 가이드의 앞부분에서 설명한 대로)하세요.
인증된 사용자 모드를 적용합니다.
Firebase 콘솔에서 AI 서비스 > AI Logic > 설정 탭으로 이동합니다.
인증된 사용자 모드에서 인증된 사용자 모드 적용 전환 버튼을 적용됨으로 밉니다.
확인 대화상자를 검토한 다음 확인 을 클릭합니다.
인증된 사용자 모드 적용 중지
인증된 사용자 모드 적용을 중지하는 경우 다음 사항에 유의하세요.
- Firebase AI Logic을 통한 요청 중 사용자 인증 정보를 전송하지 Firebase Authentication 않는 요청이 허용됩니다.
- 이 설정은 프로젝트 전반에 적용되는 설정입니다. Firebase AI Logic
Firebase 프로젝트에 인증된 사용자 모드 적용을 중지하는 방법은 다음과 같습니다.
Firebase 콘솔에서 AI 서비스 > AI Logic > 설정 탭으로 이동합니다.
인증된 사용자 모드 에서 인증된 사용자 모드 적용 을 사용 중지합니다.
확인 대화상자를 검토한 다음 확인 을 클릭합니다.