Repolode
dromara

dromara/Sa-Token

Spring 및 기타 웹 스택에서 로그인, 권한, SSO, OAuth2, JWT, API 서명을 지원하는 Java 인증·인가 프레임워크입니다.

대체할 수 있는 제품:Spring SecurityApache Shiro

스타
19,109
포크
2,913
열린 이슈
123
마지막 커밋
21일 전

어떤 프로젝트인가요?

Sa-Token은 웹 애플리케이션의 인증과 인가를 처리하는 Java 프레임워크입니다. 로그인 세션, 역할 및 권한 확인, 강제 로그아웃, 세션 관리를 제공하며 어노테이션이나 라우트 기반으로 적용할 수 있습니다. 핵심 API는 StpUtil.login(userId)로 로그인한 다음 StpUtil.checkLogin()을 호출하는 것처럼 간단한 정적 호출로 사용할 수 있습니다.

기본 로그인 기능 외에도 세 가지 배포 모드(동일 도메인, 크로스 도메인, 크로스 Redis)의 싱글 사인온, authorization code·implicit·password·client credentials 그랜트 유형을 지원하는 OAuth2 서버, Gateway·ShenYu·Zuul용 마이크로서비스 게이트웨이 검사를 제공합니다. JWT 연동, API Key 인증, API 파라미터 서명, Http Basic 및 Digest 인증, 계정 차단 기능도 포함합니다.

연동 패키지는 Spring Boot 2 및 3/4, Spring WebFlux, Solon, JFinal을 지원하며 Redis를 영속성 계층으로 사용할 수 있습니다. 공식 데모와 문서는 중국어로 제공됩니다.

핵심 기능

  • 01다중 기기, 단일 기기, 상호 배타적 로그인 모드를 지원하는 로그인 세션
  • 02어노테이션 및 라우트 기반 권한·역할 확인
  • 03세 가지 모드의 싱글 사인온과 단일 로그아웃
  • 04네 가지 표준 그랜트 유형을 지원하는 OAuth2 서버
  • 05JWT 연동 및 API Key 인증
  • 06변조와 재전송을 방지하는 API 파라미터 서명

활용 사례

  • Spring Boot 백엔드에 로그인 및 역할 기반 접근 제어 추가
  • 여러 사내 웹 시스템 간 싱글 사인온 구축
  • 마이크로서비스 게이트웨이에서 API 보호
  • 자체 Java 서비스에서 OAuth2 토큰 발급

빠른 시작

  1. 1

    pom.xml에 Spring Boot starter 의존성을 추가합니다

  2. 2

    정적 메서드를 한 번 호출해 사용자를 로그인시킵니다

    StpUtil.login(10001);
  3. 3

    로그인한 클라이언트만 액세스할 수 있도록 엔드포인트를 보호합니다

    StpUtil.checkLogin();

사용 전 알아둘 점

  • README는 주로 중국어로 작성되어 있으며, 전체 문서는 sa-token.com에서 확인할 수 있습니다.
  • Java만 지원합니다. 다른 언어용 포트는 커뮤니티에서 별도로 제공하며, 각각 유지 관리 상태가 다릅니다.

포함된 컬렉션

토픽

자주 묻는 질문

Sa-Token은(는) 무엇인가요?
Spring 및 기타 웹 스택에서 로그인, 권한, SSO, OAuth2, JWT, API 서명을 지원하는 Java 인증·인가 프레임워크입니다. Sa-Token은 웹 애플리케이션의 인증과 인가를 처리하는 Java 프레임워크입니다. 로그인 세션, 역할 및 권한 확인, 강제 로그아웃, 세션 관리를 제공하며 어노테이션이나 라우트 기반으로 적용할 수 있습니다. 핵심 API는 StpUtil.login(userId)로 로그인한 다음 StpUtil.checkLogin()을 호출하는 것처럼 간단한 정적 호출로 사용할 수 있습니다.
Sa-Token은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
Sa-Token은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
Sa-Token은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. Sa-Token의 마지막 커밋은 2026년 10월 16일입니다.
Sa-Token은(는) 어디에 사용할 수 있나요?
Spring Boot 백엔드에 로그인 및 역할 기반 접근 제어 추가 여러 사내 웹 시스템 간 싱글 사인온 구축 마이크로서비스 게이트웨이에서 API 보호 자체 Java 서비스에서 OAuth2 토큰 발급
Sa-Token는 어떻게 설치하나요?
pom.xml에 Spring Boot starter 의존성을 추가합니다 정적 메서드를 한 번 호출해 사용자를 로그인시킵니다: StpUtil.login(10001); 로그인한 클라이언트만 액세스할 수 있도록 엔드포인트를 보호합니다: StpUtil.checkLogin();
Sa-Token은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/dromara/Sa-Token

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트