Have I Been Pwned

Have I Been Pwned 플러그인은 알려진 데이터 침해에서 노출된 비밀번호의 사용을 방지하여 사용자 계정을 보호합니다. Have I Been Pwned API를 사용하여 비밀번호가 유출되었는지 확인합니다.

설치

auth 설정에 플러그인 추가

auth.ts
import { betterAuth } from "better-auth"
import { haveIBeenPwned } from "better-auth/plugins"

export const auth = betterAuth({
    plugins: [
        haveIBeenPwned()
    ]
})

사용법

사용자가 유출된 비밀번호로 계정을 생성하거나 비밀번호를 업데이트하려고 하면 다음과 같은 기본 오류가 표시됩니다:

{
  "code": "PASSWORD_COMPROMISED",
  "message": "Password is compromised"
}

설정

오류 메시지를 사용자 정의할 수 있습니다:

haveIBeenPwned({
    customPasswordCompromisedMessage: "더 안전한 비밀번호를 선택하세요."
})

보안 참고사항

  • 비밀번호 해시의 처음 5자만 API로 전송됩니다
  • 전체 비밀번호는 절대 전송되지 않습니다
  • 계정 보안의 추가 계층을 제공합니다

On this page