찾다
컴퓨터 튜토리얼컴퓨터 지식Spring Security 권한 제어 프레임워크 사용 가이드

Spring Security权限控制框架使用指南

백엔드 관리 시스템에서는 일반적으로 다양한 사용자가 인터페이스에 액세스하는 기능을 제한하기 위해 액세스 권한 제어가 필요합니다. 사용자에게 특정 권한이 없으면 특정 인터페이스에 액세스할 수 없습니다.

이 기사에서는 waynboot-mall 프로젝트를 예로 들어 권한 제어 프레임워크 Spring Security를 ​​일반적인 백엔드 관리 시스템에 도입하는 방법을 소개합니다. 개요는 다음과 같습니다:

waynboot-mall 프로젝트 주소: https://github.com/wayn111/waynboot-mall

1.스프링 시큐리티란?

Spring Security는 Java 애플리케이션을 위한 강력하고 유연한 보안 솔루션을 제공하도록 설계된 Spring 프레임워크 기반의 오픈 소스 프로젝트입니다. Spring Security는 다음 기능을 제공합니다:

  • 인증: 양식 로그인, HTTP 기본 인증, OAuth2, OpenID 등과 같은 다양한 인증 메커니즘을 지원합니다.
  • 권한 부여: 역할 또는 권한 기반 액세스 제어는 물론 표현식 기반의 세분화된 제어도 지원합니다.
  • 보호: 세션 고정, 클릭 하이재킹, 크로스 사이트 요청 위조 및 기타 공격 방지와 같은 다양한 보호 조치를 제공합니다.
  • 통합: Spring Framework 및 기타 타사 라이브러리 및 프레임워크(예: Spring MVC, Thymeleaf, Hibernate 등)와의 원활한 통합

2.스프링 시큐리티를 소개하는 방법

waynboot-mall 프로젝트에 spring-boot-starter-security 종속성을 직접 도입합니다.

으아악

3. 스프링 보안을 구성하는 방법

Spring Security 3.0에서 Spring Security를 ​​구성하는 것은 이전과 약간 다릅니다. 예를 들어 더 이상 WebSecurityConfigurerAdapter를 상속하지 않습니다. waynboot-mall 프로젝트에서 구체적인 구성은 다음과 같습니다.

으아악

SecurityConfig 구성 클래스에 대한 자세한 소개는 다음과 같습니다.

  • filterChain(HttpSecurity httpSecurity) 방법은 접근 제어의 핵심 방법입니다. 여기서는 URL, cors 구성, csrf 구성, 사용자 정보 로딩 구성, jwt 필터 차단 구성 및 기타 여러 기능에 권한 인증이 필요한지 여부를 설정할 수 있습니다.
  • authenticationManager(AuthenticationConfiguration 인증Configuration) 메서드는 인증 인터페이스를 활성화하는 데 적합하며 수동으로 선언해야 합니다. 그렇지 않으면 시작 시 오류가 보고됩니다.
  • bCryptPasswordEncoder() 메서드를 사용하면 사용자가 로그인할 때 비밀번호 암호화 정책을 정의할 수 있습니다. 수동으로 선언해야 하며, 그렇지 않으면 시작 시 오류가 보고됩니다.

4. 스프링 시큐리티를 사용하는 방법

Spring Security를 ​​사용하려면 다음과 같이 액세스 권한을 제어해야 하는 메서드나 클래스에 해당 @PreAuthorize 주석을 추가하기만 하면 됩니다.

으아악

현재 로그인한 사용자에게 list 메소드에 액세스할 수 있는 system:role:list 권한이 있음을 나타내기 위해 @PreAuthorize("@ss.hasPermi('system:role:list')") 주석을 list 메소드에 추가했습니다. 권한 오류가 반환됩니다.

5. 현재 로그인된 사용자의 권한을 얻습니다

SecurityConfig 구성 클래스에서는 사용자 정보 로드를 위한 구현 클래스로 UserDetailsServiceImpl을 정의하여 데이터베이스의 사용자 계정 및 비밀번호를 프런트 엔드에서 전달한 계정 및 비밀번호와 비교합니다. 코드는 다음과 같습니다.

으아악

다음은 UserDetailsServiceImpl의 코드 로직에 대한 설명이므로 코드의 도움을 받아 이해할 수 있습니다.

  • 데이터베이스의 현재 사용자 정보 읽기
  • 사용자가 존재하는지 확인
  • 비활성화 여부 결정
  • 현재 사용자의 역할 정보 가져오기
  • 역할에 따른 권한 정보 받기

요약하자면

이 글에서는 권한 제어 프레임워크 Spring Security 3.0 버전을 백엔드 관리 시스템 및 코드 실습에 도입하는 방법을 설명합니다. 나는 이것이 모든 사람이 권한 제어 프레임워크인 Spring Security를 ​​명확하게 이해하는 데 도움이 될 것이라고 믿습니다. 나중에 이 기사의 사용 가이드에 따라 액세스 제어를 위해 단계별로 Spring Security를 ​​자신의 프로젝트에 도입할 수 있습니다.

위 내용은 Spring Security 권한 제어 프레임워크 사용 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 每日运维에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
RAID 복구와 하드 드라이브 복구의 차이RAID 복구와 하드 드라이브 복구의 차이Apr 17, 2025 am 12:50 AM

데이터 복구는 항상 가열 된 주제입니다. 장치에서 데이터를 성공적으로 복원하려면 데이터를 저장하는 방법을 알아야합니다. 이 PHP.CN 게시물에서 RAID 복구와 하드 드라이브 복구의 차이점을 배울 수 있습니다.

Microsoft Word 텍스트 삭제 Windows 10/11? 지금 고칠!Microsoft Word 텍스트 삭제 Windows 10/11? 지금 고칠!Apr 17, 2025 am 12:48 AM

타이핑하는 동안 사라지는 단어 텍스트가 사라지나요? 문서에서 일부 문자 나 단락이 사라질 수 있습니다. 무엇이 잘못 되었나요? Php.cn 웹 사이트 의이 게시물에서 텍스트 문제를 자동으로 삭제하는 단어를 자세히 살펴 보겠습니다.

오버 워치 2에서 LC-208 오류 코드를 수정하는 방법은 무엇입니까? 여기에 가이드가 있습니다! - 미니 툴오버 워치 2에서 LC-208 오류 코드를 수정하는 방법은 무엇입니까? 여기에 가이드가 있습니다! - 미니 툴Apr 17, 2025 am 12:47 AM

OverWatch 2에 로그인하려고하면 LC-208 오류 메시지를받을 수 있으며 게임이 게임 서버에 연결되는 것을 방지합니다. Php.cn 의이 게시물은 LC-208 오버 워치 오류를 수정하는 방법을 소개합니다.

Google 드라이브는 파일 탐색기에서 사라졌습니다Google 드라이브는 파일 탐색기에서 사라졌습니다Apr 17, 2025 am 12:46 AM

일반적으로 파일 탐색기에서 Google 드라이브 파일에 빠르게 액세스하고 편집 할 수 있습니다. 그러나 때로는 "Google Drive가 파일 탐색기에서 사라졌습니다"문제가 발생할 수도 있습니다. 여기에서 Php.cn 의이 게시물은 Google 드라이브를 표시하는 방법을 알려줍니다.

Windows 7 웰컴 화면을 느리게 수정하는 방법? 팁이 여기 있습니다!Windows 7 웰컴 화면을 느리게 수정하는 방법? 팁이 여기 있습니다!Apr 17, 2025 am 12:45 AM

내 컴퓨터가 오랫동안 오랫동안 컴퓨터를 사용하는 이유는 무엇입니까? Windows 7 웰컴 화면을 느리게 수정하는 방법? 여전히 PC에서 Windows 7을 실행 하고이 문제를 충족하는 경우, 귀하는 올바른 장소에 있으며 Php.cn이 여러 솔루션을 제공합니다.

Windows 11에서 자격 증명 관리자를 여는 방법은 무엇입니까? 당신을위한 6 가지 방법! - 미니 툴Windows 11에서 자격 증명 관리자를 여는 방법은 무엇입니까? 당신을위한 6 가지 방법! - 미니 툴Apr 17, 2025 am 12:44 AM

내장 비밀번호 관리 도구-자격 증명 관리자를 사용하여 웹 및 앱의 로그인 자격 증명을 관리하고 싶으십니까? Windows 11에서 자격 증명 관리자를 어떻게 열 수 있습니까? 이 게시물에서 Php.cn 은이 유틸리티에 액세스하는 여러 가지 방법을 수집하고

Microsoft Defender에서 주기적 스캔을 활성화/비활성화하는 방법 -MinitoolMicrosoft Defender에서 주기적 스캔을 활성화/비활성화하는 방법 -MinitoolApr 17, 2025 am 12:43 AM

Microsft Defender Antivirus에는 Tegremoic Scanning이라는 기능이 있으며 Windows 11/10 장치에 다른 안티 바이러스 제품을 설치할 때 활성화 할 수 있습니다. 이제 Php.cn 의이 게시물은 WI에서 주기적 스캔을 활성화/비활성화하는 방법을 알려줍니다.

승리에서 작동하지 않는 Excel 하이퍼 링크를위한 스마트 기술승리에서 작동하지 않는 Excel 하이퍼 링크를위한 스마트 기술Apr 17, 2025 am 12:42 AM

"Excel Hyperlinks가 작동하지 않는"문제를 겪은 적이 있습니까? 그것을 다루는 방법을 알고 있습니까? Php.cn 의이 게시물에서는이 문제를 제거하기 위해 몇 가지 실현 가능한 솔루션을 얻을 수 있습니다. 전문 데이터 복구 도구 T를 알게 될 것입니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기