전체 글 227

Spring Security CSRF와 CORS

CSRF(Cross Site Request Forgery) : 사용자가 웹에 로그인 한 상태에서 악성 스크립트 등을 통해 원하지 않는 변경(POST, PUT, DELETE)를 할 수 있는 것을 대비하기 위한 기능이다. (예시로, 페이스북에 로그인된 상태에서 원하지 않는 광고글이 게시되는 등) GET호출시에 CSRF 토큰을 발급하며, 변경(POST등) 메서드를 하고자 할 경우에는 헤더에 X_CSRF_TOKEN에 토큰값을 넘겨줘야 정상적으로 변경을 수행한다. 아래와 같이 hidden값으로 클라이언트에서 변경시 token값을 올려주도록 구현할 수 있다. Name: Add CORS(Cross-Origin Resource Sharing) : 보안상의 이유로 브라우저는 동일출처(도메인, 포트)가 아니면 호출을 제한..

자바/Spring 2023.09.17

Spring Security Authorization(권한 부여)

Authority : String형태(Read, Write 등)의 권한을 정의하거나 ROLE(Autority에는 ROLE_권한형태로 저장) 사용 AuthorizationFilter에서 AuthorizationManager(주로 AuthorityAuthorizationManager)에 의해 체크됨 mvcMatchers : *는 한 경로 이름 대체, **는 여러 경로이름 대체, 정규식 가능 antMatchers : 사용법은 유사하나 /hello 경로에 지정할 경우 /hello/ 경로는 제외된다(mvcMatcher는 둘다 포함됨) http.authorizeRequests() .mvcMatchers(HttpMethod.GET, "/a").authenticated() .mvcMatchers(HttpMethod.P..

자바/Spring 2023.09.17

Spring Security Authentication(인증)

Authentication(인증) : 사용자가 맞는지 확인 FormLogin FilterChainProxy FilterChainProxy에 보면 정의된 filters를 리스트로 가지고 있음 AuthenticationManager(인증관리자) : 주로 ProviderManager 사용됨 ProviderManager 는 다음 Build된 Provider를 이용해서 인증을 수행 OTP인증 등 인증방법을 변경하고 싶으면 Provider를 별도로 만들어서 추가해주자(HttpSecurity.authenticationProvider) SecurityContextHolder : 인증된 사용자 세부정보 저장하는 곳. 어떻게 채워지는지는 신경쓰지 않음 SecurityContext : Authentication 객체가 담겨..

자바/Spring 2023.09.17

Spring Security 3.1.1 적용

SecurityFilterChain : 기존에 2.x버전에서 WebSecurityConfigurerAdapter 상속받아 configure 재정의하던 방식에서 @Bean으로 생성하도록 변경되었다 @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { return http .csrf((csrf) -> csrf.disable()) .authorizeHttpRequests(request -> request.requestMatchers(PathRequest.toStaticResources().atCommonLocations()).permitAll() .requestMatchers(staticPath.toArray(new..

자바/Spring 2023.09.16

[도서] 유연함의 힘

마인드셋의 차이 학습마인드셋 실천방법 유연성 강화 : 개선하고 학습하기 위해 구체적(누군가에게 지시하면 무엇을 해야할지 알아들을 정도로)이고, 진짜 목표가 되도록(그것을 달성하면 원하는 능력을 얻을 수 있도록) 목표를 세우기 : 글로 써야 효과 증대 피드백의 중요성 : 형식적 피드백보다는 편하고 진솔하게 주고받을 수 있는 피드백 공유 문화형성 필요. 피드백을 통해 성장목표와 학습계획을 수립해야 함 성찰의 중요성 : 성찰을 기피하고 바쁘게 행동만 하려는 경향을 대부분의 사람들이 가짐. 성찰을 통해 고통과 취약성을 드러내고, 자신의 경험을 체계적으로 성찰해야 함. "경험은 단순히 당신에게 일어난 일이 아니다. 당신에게 일어난 일로 무엇을 하는가가 바로 경험이다" - 올더스 레너드 헉슬리 프로젝트에서 회고, ..

책 이야기 2023.09.16

[영화] 패러다이스

Netflix에서 패러다이스를 보았다. 미래에 사람들간에 수명을 사고 팔수 있는 기술이 개발되었을때 어떤 일이 벌어질 수 있을지를 그려볼 수 있는 영화다. 가난한 사람은 자신의 수명을 10년, 20년 팔아서 그 돈으로 빨리 늙기는 했지만, 남은 여생을 좀더 낫게 살아갈 수 있게 된다. 부자는 자신이 가진 돈으로 젊음을 사게되어 영생을 추구할 수 있는 시대다. 얼핏 보면 말이 되는 얘기같지만, 사람들의 욕심으로 인해, 이민자들을 불법적으로 납치해서 수술을 하거나, 기증자를 얻기위해 일부러 파산하게 만드는 조작을 저지르는등 부작용이 속출한다. AI,로봇, 생명공학 등 기술이 발전하지만 그 이면에서 벌어질 부작용에 대해서도 깊이 고민해야 한다는 것을 시사해 주는 영화다.

[도서] 인피니트 게임

사이먼시넥의 TED 영상은 깊은 감동을 준다. 조직에서 신뢰와 심리적 안정감을 통한 협력의 가치를 잘 설명하고 있다. 그는 우리가 맞닥드리는 대부분의 문제는 유한게임 성격이 아니라, 무한게임의 성격을 띈다고 설명한다. 무한게임을 유한게임의 룰을 가지고 해결하다보니, 불합리하고 관료주의적으로 퇴폐하게 된다고 말한다. 비즈니스적이든 개인적이든 무언가에 대한 의사결정을 할때 유한게임의 사고방식으로 생각하는 것과 무한게임의 사고방식으로 생각하는 것은 거의 정반대의 성향과 결과를 가져오게 된다. 비슷한 생각을 가진 사람들과 힘을 모으고, 대의명분을 통해 주변을 설득하라. 조직문화가 건강하지 않으면 사람들은 규칙에서 안전을 찾는다. 그래서 관료주의가 존재한다. 문화가 건강한 조직에서는 사람들이 관계에서 안전을 찾는..

책 이야기 2023.07.16

[웹드라마] 사냥개들

오랜만에 Netflix에 재밌는 시리즈가 올라온거 같다. 토요일 저녁에 보기 시작해서, 일요일 아침에 다 봐 버렸다. 웹툰 원작으로 만든 시리즈라 그런가 시나리오가 탄탄하다. 반전에 반전을 거듭해서, 다음편 내용이 궁금해서 계속 볼 수 밖에 없었다. 악역으로 나오는 박성웅의 사채업자 김명길에 대항하는데 김명길의 왼팔, 오른팔을 다 제거하나 했더니, 금새 우리편 주역들이 하나씩 당하는 모습에서는 이야기에 쏙 빠져들 수 밖에 없었다. 7부에 가면서 갑자기 이야기가 좀 이상해지는데, 나중에 알고보니 배우 김새론이 음주운전으로 지탄을 받으면서 하차하게 되고, 부랴부랴 시나리오를 바꾸다보니 그런 거였다. 이상이는 기존 드라마에 나오던 이미지와 너무 달라서, 비슷하게 생긴 배우인가 했을 정도로 대 변신이었다. 웹툰..

[영화] 시민 노무현

최근 '문재인입니다'라는 영화가 개봉되었다는 관련 뉴스를 보다가 Netflix에서 검색해보다 우연히 보게되었다. 대통령 퇴임후 454일간의 봉화마을에서의 이야기들을 담은 영화다. 민주주의 2.0을 위한 그의 고민과 생각을 옅볼 수 있는 계기였고, 많은 생각을 하게되는 영화다. 아래는 영화 속 인상적이었던 장면 - 전직대통령이지만, 오리농법을 강연하는 2시간내내 집중해서 내용을 듣고, 메모하며 이해하려는 모습을 보였다. 노무현대통령은 큰 것만 보고 가치,전략 등을 얘기하다보면 손에 잡히는게 없더라는 얘기를 하며, 직접 하천도 가꾸고 농사도 직접 수행했다. 그 과정에서 한사람의 시민으로써 기여에 대해 다시 한번 생각하게 되었을 것이다. IT현장에서도 세부적인 개발에 대한 이해없이 기술을 말로만 하고 지시만 ..

반응형