콘텐츠로 이동

패스키

패스키(Passkey)는 비밀번호 없이 생체 인식이나 PIN을 사용하여 안전하게 로그인할 수 있는 차세대 인증 수단이에요. WebAuthn/FIDO2 표준을 기반으로 하며, 피싱에 강하고 사용자 경험이 뛰어나요. 설정 예시는 다음과 같아요.

config.yaml
server:
public_origin: https://auth.example.com
auth:
passkey:
enabled: true
rp_id: example.com
origins:
- https://auth.example.com
- https://login.example.com
  • enabled: 패스키 인증을 활성화할지 여부예요. 기본값은 false예요.
  • rp_id: WebAuthn Relying Party ID예요. 프로토콜(https://)이나 포트(:8080)를 제외한 도메인만 입력해야 해요. 지정하지 않으면 server.public_origin의 호스트명에서 자동으로 추출돼요. 상위 도메인을 지정하면 하위 도메인 간에 패스키를 공유할 수 있어요.
  • origins: WebAuthn 검증에 허용할 출처(origin) 목록이에요. 지정하지 않으면 server.public_origin 값이 기본으로 사용돼요. 여러 도메인에서 동일한 패스키를 사용해야 하는 경우 유용해요.

tinyauthhttps://auth.example.com에서 운영하고, example.com의 모든 하위 도메인에서 패스키를 공유하려면 다음과 같이 구성할 수 있어요.

config.yaml
server:
public_origin: https://auth.example.com
auth:
passkey:
enabled: true
rp_id: example.com
origins:
- https://auth.example.com

단일 도메인에서만 패스키를 사용하는 경우, rp_idorigins를 생략하면 server.public_origin에서 자동으로 설정돼요.

config.yaml
server:
public_origin: https://auth.example.com
auth:
passkey:
enabled: true