• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

`익명 사용자` 개념에 대한 질문

21.07.07 23:55 작성 조회수 312

7

`익명 사용자` 라는 것이 그냥 보기에는 접속이 가능한 것처럼 보였지만,
강의와 여러 QnA 를 다시 보다알게된 결론으로 정리를 해보았습니다.

Spring Security 에서의 `익명사용자` 개념 정리

  1. 인증이 되기 전이나, 이후 의 사용자 모두
    유효한 인증토큰을 갖고있지 못하면 `익명 사용자`이다

  2. `익명 사용자`는 로그인이 가능한 경로를 통해 인증허가를 을 받게 될 경우, 일반 사용자로 등극하여, 로그인 접속 및 향후 접속유지가 가능하게된다.

  3. 인증을 받지 못한 사용자는 `익명 사용자`로 분류되어, `익명 사용자` 인증 토큰이(인증 객체) 익명 사용자 관리 명목으로 생성되지만, 로그인과 관련된 접근 권한은 없다(세션 생성이 되지않음) -> `redirect /login page`

  4. `익명 사용자` 전용으로 발급된 인증토큰을 통해, 향후 `익명 사용자` 접근 여부를 관리 할 수 있다


 틀린 부분이 있다면 조언을 구합니다.

감사합니다.

답변 1

답변을 작성해보세요.

2

네 잘 정리하신 것 같습니다. 

스프링 시큐리티에서 익명사용자의 개념을 별도의 기능으로 구조화 했다고 보시면 될 것 같습니다.

그렇지만 로그인 인증을 받지 못한 사용자이기 때문에 실질적으로 아무런 권한을 갖지 못하는 사용자로 보셔도 무방합니다.

그래서 스프링 시큐리티 내부적으로 익명사용자를 인증사용자와 구분하기 위해 독립적인 객체를 만들어 익명사용자임을 나타내는 여러 군데의 코드가 존재합니다.

그리고 익명사용자의 역할과 기능이 스프링 시큐리티에서 큰 비중을 차지하는 것은 아니기 때문에 간단한 개념정도 이해하시고 사용하시면 될 것 같습니다.

감사합니다.

Truestar님의 프로필

Truestar

질문자

2021.07.14

확인 시켜주시니 깊히 알게 되는 것같습니다.
조언 감사드립니다.