/** * 이메일로 유저를 찾아 admin custom claim(`admin: true`)을 부여한다. * * 사용법: npx tsx scripts/set-admin-claim.ts */ import "./_bootstrap"; import { auth } from "../src/firebase"; async function main() { const email = process.argv[2]; if (!email) { console.error("사용법: npx tsx scripts/set-admin-claim.ts "); process.exitCode = 1; return; } const user = await auth.getUserByEmail(email); await auth.setCustomUserClaims(user.uid, { admin: true }); console.log(`admin claim 부여 완료: ${email} (uid: ${user.uid})`); console.log("반영을 위해 재로그인(또는 강제 토큰 갱신)이 필요합니다."); } main().catch((e) => { console.error(e); process.exitCode = 1; });