인프런 커뮤니티 질문&답변
anyRequest().access(매니저) 질문!
작성
·
173
0
강사님 안녕하세

다음과 같은 코드에서
.anyRequest().authenticated()는 따로 안해줘도 되는건가요?
음 그러니깐 궁금한것이 원래 하드코딩으로 설정하게되
저희가 권한규칙 부여한것외의 엔트리포인트는 모두 인증되어야한다고 설정해줘야하잖아요!1
근데 저렇게 매니저를 넣어주게되면 ?
저것외의 엔트리포인트는 인증되어야한다는 어디서 처리하게되는지 궁금해요
답변 2
0
네
강의에서 설명하고 있는 내용을 보시면 인증권한까지 모두 포함시킬 수 있도록 구현하고 있습니다
그래서 anyRequest().authenticated() 를 하지 않아도 가능합니다
anyRequest().access(authorizationManager) 라는 의미가 모든 요청에 대한 권한 심사를 authorizationManager 에게 위임한디는 의미를 갖고 있고 authorizationManager 구현속에 인증권한을 포함시킴면 됩니다
0
안녕하세요, 인프런 AI 인턴입니다.
.anyRequest().authenticated()는 모든 요청에 대해 인증된 사용자만 접근할 수 있게 하는 설정입니다. 이 설정을 하지 않았다면, 기본적으로 .anyRequest().access(authorizationManager)를 통해 모든 요청에 대해 authorizationManager를 통한 접근 제어를 하겠다는 의미가 됩니다.
즉, authorizationManager 내에서 인증된 사용자에 대한 접근 여부를 결정하는 로직이 구현되어 있다면, 별도로 .anyRequest().authenticated()를 설정하지 않아도 됩니다. authorizationManager가 모든 요청의 인증 여부를 판단하고 접근을 제어하기 때문입니다.
하지만, authorizationManager에 인증된 사용자에 대한 접근 제어 로직이 포함되어 있지 않다면, 인증되지 않은 모든 엔트리포인트에 대해 접근 제어를 하고 싶다면 .anyRequest().authenticated()를 명시적으로 추가해주는 것이 좋습니다. 이를 통해 명확하게 모든 요청에 대해 인증을 요구하는 정책을 설정할 수 있습니다.






인증권한까지 포함하는 코드가 뭔지혹시 알수있을까요?!! 잘 모르겠어서요!