Spring Boot 4의 Spring Security WebAuthn과 Vue 3를 연동한 패스키 로그인/회원가입 데모입니다.
- Java 25
- Spring Boot 4.1.0
- Spring Security 7 (Native WebAuthn)
- Gradle (Kotlin DSL)
- Vue 3
- Vite
- @simplewebauthn/browser
- pnpm
./gradlew bootRuncd frontend
pnpm install
pnpm dev🔐 HTTPS 설정: 패스키 인증(WebAuthn)은 브라우저 보안 제약으로 인해 로컬 개발 환경에서도 HTTPS가 필수입니다.
방법 1) mkcert를 통한 로컬 HTTPS 구성
mkcert -install명령어로 로컬 루트 CA를 신뢰할 수 있는 기관에 추가합니다.mkcert localhost명령어로localhost용 SSL 인증서를 발급합니다.- 발급받은 인증서 파일을 등록하여 HTTPS 서버를 가동합니다.
방법 2) Tailscale을 통한 HTTPS 구성 (외부 모바일 기기 테스트 등)
- Tailscale Admin Console Settings에서 MagicDNS 및 HTTPS Certificates를 활성화합니다.
frontend디렉토리로 이동한 후 아래 명령어로 Let's Encrypt 실인증서를 발급받아cert폴더에 위치시킵니다.Vite 설정(cd frontend mkdir cert tailscale cert [내-기기-이름].[내-도메인].ts.net mv *.ts.net.crt cert/ mv *.ts.net.key cert/vite.config.js)이cert/폴더 내의 Tailscale 인증서를 자동으로 감지하여 HTTPS로 로드합니다.