개발자
스프링 시큐리티를 왜 꼭 써야할까요? 사실 세션은 개발자가 직접 만들수도 있고, 보안을 철저하게 쓰면 되는거잖아요 단순히 편리해서 인가요?
답변 7
Framework 어떠한 목적을 달성하기 위해 복잡하게 얽혀있는 문제를 해결하기 위한 구조로, 소프트웨어 개발에 있어 하나의 뼈대 역할을 한다. 위 내용은 나무위키에 프레임워크 라고 첬을때 나오는 내용입니다. 구현하시려는 보안요건이 간단하면 그렇게 되겠지만, Spring Security의 기능들이 어떤게 있는지 확인해보시면, 보안을 고민해보았다면 나올법한 내용들이 나옵니다. 누구도 Spring Security를 쓰라고 강요하지 않았습니다. 다만, Spring framework를 사용하면서 편하게 Security를 만족하려면 Spring Security를 쓰는게 좋습니다.
J
NRISE 백엔드 개발자 • 2024년 03월 21일
의존관계가 아주 마음에 안들어서 스프링 시큐리티 안쓰고 aop로 구현해서 씁니다. :/
모든 것은 다 만들어서 쓸 수 있습니다. 사실 그렇다면 스프링을 쓸 필요도 없습니다 자바로 다 구현하면 가능하겠죠? 😏 잘 생각해보면 자바도 필요가 없을 것 같네요 어셈블리어가 가능 하다면 자바를 안 쓰고도 가능합니다. 그렇다면 왜 작성자 분이나 많은 사람들이 자바나 스프링을 쓰며 스프링 시큐리티가 있는 것일까요 이미 답글을 작성하신 분의 말에 잘 적혀있지만 어떠한 기능이 필요하고 그 기능을 편리하고 이미 테스트 및 검증이 된 상태로 사용하기 위해서 입니다. 직접 구현이 가능하겠지만 보안 테스트, 에러검증 , 예외처리 등을 해서 스프링 시큐리티보다 퀄리티가 낮은 결과물이 나올 확율이 높을 뿐더러 시간과 돈 또한 엄청나게 들어간다면.. 굳이 직접 개발해서 리스크를 지는 게 좋을 것 같지는 않습니다. + 물론 직접 구현해보는 것 자체는 공부에 도움이 된다고 생각합니다 (상품성이나 가치유무를 떠나서)
null
PRADA 프론트엔드 개발자 • 2024년 05월 14일
일반 좋소기업에서 스프링시큐리티를 적용하는걸 보면 ㅋㅋ 그냥 jwt 인증/인가 그리고 메소드 또는 클래스별 접근 제어 뿐인데 ㅋㅋ 사실이거 인터셉터랑 커스텀 어노테이션으로 만들어보면 코드라인 많이 나오지도 않습니다 ㅎㅎ 스프링시큐리티? 동네 뒷산 산책가는데 에베레스트장비 차고 뒷산산책하는 거랑 똑같은거고. 엄청난 보안을 요구하는 그런 회사가 아닌이상 90%이상은 다 인증/인가가 전부인데ㅋㅋㅋㅋㅋㅋ 의존성오지게 얽혀서 100% 시큐리티를 알지못하면 피만보는 거대한 스프링시큐리티 안쓰는게 훨이득입니다. 100% 알지도 못하고 쓰는 오토컨피그 때문에 야근파티~ 좋소에서는 특히요~
백승훈
프론트 엔드 개발자 (FE) • 2024년 05월 14일
정말 그것만 사용할꺼면 따로 구현해도 별상관은 없을 것 같네요 둘 다 장단점이 있습니다 단점만 있는건 존제하지 않죠... 뭘 선택하냐는 상황에 따라 다르겠지만 저라면 굳이..? 일일히 커스텀해서 빼는것도 일이 아닐까 싶긴 합니다 😏 원래 동네 뒷산 가는데 딱 동네 뒷산 가는만큼만 챙기는게 어려운 일입니다. 그걸 컨트롤할 수 있는 능력자가 있다면 그분이 하는데로 따라가면 되는거구요 근데 A 뒷산용, B 뒷산용, C뒷산용 따로 다 셋팅해야되고 하다가 셋팅해주시는 분이 나가면 그걸 판별하기 힘들 경우는 어떨까요? 그냥 처음부터 풀패키지면 저 3개를 다 그냥 갈수도 있겠죠..? 물론 무겁고 처음 셋팅 시 그만큼 추가 리소스가 있겠지만요 A산용 셋팅을 만들어 갔는데 산이 어.. B였내? 하는 경우도 생길 것 같네요 물론 그거까지 대비를 미리 해둘 정도의 시니어 능력자가 "회사를 그만두지 않는다는" 가정하에 계속 컨트롤 해 준다면.. 당근 적제적소에 중요한 부분만 빼서 써도 좋을 것 같습니다. 아마 회사 입장에서는 그 능력자가 그만두면 만들어둔 최적화 A B C의 셋팅과 그걸 설정할 사람이 적절하게 구해질 것인지 그리고 그 경우 들어가는 리소스나 자원등을 고려하게 될거고.. 그래서 더더욱 그냥 풀패키지 하나 사는걸 더 좋아할 것 같긴 하내요 장비는 사두면 남는거고 개발도 셋팅해두면 그냥 쓰면 되니까요..? 😁
구나미
없음ㅁ 조까 • 2024년 12월 05일
뭐안다고 꼴같지도않게 인터셉터 필터나 제대로걸어보고 애기하는지모르겟는데 인터셉터로 처리하는게언제적 인지도모를 기본적인거가지고 그거로다처리된다고하는게웃기지도않네 인증인가만 해도 그거라도 명확하게잘되는거만해도 훌륭한거임 인증인가만해도 얼마나포괄적인건데 필터인터셉터로다 거세요 니멋대로 인터셉터만들어서지꼴리는대로구성하고하는거랑 이미남들이다아는 규칙에 구글찾아봐도나오는명확한 권한에 명확한 규약 에 정해지고검증된 시큐리티쓰는거랑 그거코드몇줄이면 같은기능한다고 지꼴리는대로 짜놓은 코드랑 비교가된다고 입터는게 기도안차네 왜 010101신호를보내지그러나..단축키잇는데 혼자 코드다쳐놓고 단축키쓰는놈을 우습게보는 소리하고잇네 ㅋ 본인이야말로 하는일이그래서 인증인가가고작이란 그런소리가나오겟지.좋소라도그렇지않아
삭제된 사용자
2024년 03월 20일
안써도 되죠 근데 스프링 쓸거면 쓰는게 편하긴 합니다..
두 다리 있는데 굳이 왜 차를 타느냐와 같은 문제인 것 같습니다. 실제로 걸어다니면 건강이 좋아지듯 직접 개발하면 실력이 향상되는 부작용이 있죠. 그러나 사장님은 싫어할꺼에요. 공짜 에르메스 가방 있는데 굳이 에코백을 돈 내고 사야하는가 라는 생각이 들겁니다.
보안에 대한 기능이 로그인 로그아웃을 통한 세션 관리만 있는 것은 아닙니다. 처음 학습이 어렵다고 해서 직접 구현을 하게 되면 초기에 예상 못한 다양한 이슈들에 대해서 직접 대응을 해야합니다. 나중에는 프레임워크의 학습비용보다 더욱 많은 리소스가 발생할 수 있습니다. 스프링 시큐리티는 프로퍼티 설정만으로 다양한 기능을 켜고 끌수도 있습니다. 또한 직접 만든 기능은 협업도 어렵습니다. 프레임워크에 대한 학습만 하면 다른 개발자도 충분히 유지관리가 가능하지만 직접 만들어놓은 기능은 별도의 명세를 제공해야 합니다. 그리고 코드가 노출 되어 있기 때문에 누구든 건드릴 수 있는 환경이란 것도 위험성이 있죠 하고자 하는 방향성이 맞지 않을때 사용하지 않는 것은 좋지만 학습이 어렵다고 해서 사용하지 않는 것은 좋은 태도는 아니라고 생각됩니다
null
PRADA 프론트엔드 개발자 • 2024년 05월 14일
좋소기업 현실은 인증/인가 메소드 또는 클래스별 접근제어 뿐ㅎ 그 이상으로 시큐리티 쓰는 회사 찾기 매우 힘든 대한민국 이게 팩트아닌가요 ㅎ 걍 인터셉터로 가시죠 코드라인 그렇게 많이 나오지도 않는데ㅎ!!
김도원
우아한형제들 서버개발일꾼 • 2024년 05월 14일
클래스 별 접근제어라는 표현이 적절한지 모르겠네요. 여튼 본인이 생각하는 대한민국 팩트가 팩트인지는 잘 모르겠구요. 개발자 개개인의 개성대로 중구난방으로 만들어놓은 인증/인가 기능을 쓰는것 보다는 스프링 시큐리티를 쓰라고 권장하고 싶네요
백승훈
프론트 엔드 개발자 (FE) • 2024년 05월 14일
코드 양이 많지 않다고 단순히 빼서 쓰셧으면 그 코드로 인해 발생되는 리스크는 개발자나 회사가 가져가야 합니다. 작성한 개발자가 회사를 나온다면? 레거시화 된다면? 모르는 문제가 생기거나 보안이 뚤린다면? 기능 추가를 여러개 해야되서 점점 분석 및 리펙토링 리스크가 크다면? 다른 사람이 그 코드를 받는다면? 여러 경우를 고려해보면.. 아무리봐도 도입 안할때의 리스크나 문제가 압도적으로 큰 것 같은데 굳이 빼시려는 이유가 궁금하긴 합니다 😅 저도 쓰라고 권장하고 싶네요 미니 프로젝트나 포폴용 혹은 간단한 서브 프로젝트에 빼고 하는건 기술 경험상 도움이 될 것 같지만 상업용, 프로덕트를 그렇게 관리하기는 좀 무섭내요 ..
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!