작성
·
376
2
안녕하세요 선생님,
actuator 관련해서 질문이 있습니다.
실습에서 actuator 관련해서 user-service의 WebSecurity에는 아래와 같은 코드를,
http.authorizeRequests().antMatchers("/actuator/**").permitAll();
apigateway-service의 application.yml 파일에서는 아래와 같은 코드를 추가했습니다.
- id: user-service
uri: lb://USER-SERVICE
predicates:
- Path=/user-service/actuator/**
- Method=GET, POST
filters:
- RemoveRequestHeader=Cookie
- RewritePath=/user-service/(?<segment>.*), /$\{segment}
제가 궁금한 것은, actuator로 누구나 접근할 수 있게 permitAll() 설정을 해주었고, 인증 필터 또한 설정하지 않았는데 포스트맨으로 actuator 접근할 시 토큰이 필요한 이유에 대해 잘 모르겠습니다. (8분 15초 이후 관련)
답변 2
0
routes가 order 프로퍼티를 지정하지 않으면, 정의된 순서대로 반영됩니다. 따라서 order를 지정하거나, "/acutator/**" route을 더 범용적인 "/**" route 위로 올려야 합니다.
0
안녕하세요, 이도원입니다.
말씀하신 것처럼 설정하였을 때 /user-service/actuator는 인증없이 사용하실 수 있습니다. 다만, 2가지 정도 확인해 보셨으면 하는 부분은,
- POSTMAN에서 캐쉬가 남아 있는 경우, 캐쉬 삭제
- apigateway-service에 Path=/user-service/actiator/**의 설정 앞에 인증을 요구하는 설정이 되어 있는 지 확인
지금 생각나는 것은 위 2가지 정도입니다. 작업하신 코드가 공유가능 하면, 제쪽에서도 테스트 해 볼 수 있을 것 같습니다.
감사합니다.