feat(member): AI 캐릭터 회원 로그인을 차단한다

This commit is contained in:
2026-06-12 11:39:57 +09:00
parent 5cf1f7d909
commit f6a07faef2
4 changed files with 103 additions and 0 deletions

View File

@@ -6,6 +6,7 @@ import kr.co.vividnext.sodalive.fcm.PushTokenService
import kr.co.vividnext.sodalive.i18n.LangContext
import kr.co.vividnext.sodalive.i18n.SodaMessageSource
import kr.co.vividnext.sodalive.jwt.TokenProvider
import kr.co.vividnext.sodalive.member.MemberKind
import kr.co.vividnext.sodalive.member.MemberRepository
import kr.co.vividnext.sodalive.member.MemberRole
import kr.co.vividnext.sodalive.member.login.LoginRequest
@@ -70,6 +71,10 @@ class CreatorAdminMemberService(
throw SodaException(messageKey = "creator.admin.member.inactive_account")
}
if (member.memberKind == MemberKind.AI_CHARACTER) {
throw SodaException(messageKey = "common.error.bad_credentials")
}
if (member.role != MemberRole.CREATOR && member.role != MemberRole.AGENT) {
throw SodaException(messageKey = "common.error.bad_credentials")
}

View File

@@ -339,6 +339,10 @@ class MemberService(
throw SodaException(messageKey = "member.validation.inactive_account")
}
if (member.memberKind == MemberKind.AI_CHARACTER) {
throw SodaException(messageKey = "common.error.bad_credentials")
}
if (member.provider != MemberProvider.EMAIL) {
val provider = resolveProviderLabel(member.provider)
throw SodaException(message = formatMessage("member.validation.email_registered_with_provider", provider))