작성
·
73
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()
를 명시적으로 추가해주는 것이 좋습니다. 이를 통해 명확하게 모든 요청에 대해 인증을 요구하는 정책을 설정할 수 있습니다.
인증권한까지 포함하는 코드가 뭔지혹시 알수있을까요?!! 잘 모르겠어서요!