bwbw-kim

JavaScript Client side 코드 사용자가 절대 디버깅 하지 못하게 하기

사용자가 개발자 도구로 디버깅하기 어려운 JS 코드 만들기 우리 플랫폼이 개발자 커뮤니티다 보니까 간혹 프론트 엔드 개발자분들이 있어서 우리 Q&A플랫폼을 디버깅 하는 경우를 몇 차례 목격한적이 있다. 그렇게 되면 api문서가 없이도 알 수 있게 되기도 하고 비즈니스 로직을 알게 될 수도 있으며 취약점이 노출이 될 수도 있다. 물론 이런...

Controller Advice, exceptionHandler 로 Spring에서 에러 발생시 이동하는 페이지 만들어 보기

스프링에서 에러 발생시 이동하는 페이지를 만들어보자 개발을 하다보면 사용자는 항상 내가 생각하는 방향으로 움직이지 않는다! 절대로 내가 생각하지 못한 방식으로 행동하고 그것을 모두 커버 하기는 불가능이라고 생각한다! 우리 플랫폼도 에러가 발생했을때 white label page가 뜨면서 spring 자체 코드의 stacktrace가 보이게 되는 ...

spring 에서 random endpoint 만들어서 보안 유지해보기

마치 endpoint가 랜덤하게 매번 바뀌는것 같은 페이지를 만들어보자! 계속해서 이벤트 준비를 하고 있는데 처음에는 비밀번호만 맞추면 내가 원하는 비밀 페이지 (/1d7ec9fq 이런식)로 redirect 하도록 하려고 했는데 이렇게 하면 사실 그 페이지의 url만 알게되면 누구든지 들어올수가 있다! 따라서 조금 더 생각해 보았다. 비밀번호를 ...

Password가 맞는지 아닌지 확인해 보자 (Bcrypt0)

특정 패스워드를 입력한 사람만 들어 올수 있는 페이지를 만들어보자! 이번 컨퍼런스 행사때 부스를 운영하기로 했다! 부스에서 할 이벤트를 기획하는데 운영중인 Q&A플랫폼에 게임을 하나 심어서 랭킹을 저장하고 3위까지 치킨 상품을 주기로했다! 하지만 우리 플랫폼은 부스에 방문하지 않은 사람도 들어 올 수 있기 때문에 행사장에서만 비밀번호를 입력...

Geolocation 으로 내 페이지에 접속한 사람의 위치를 대략적으로 가져와보자

Geolocation 으로 client의 경도 위도 가져오기 최근에 혼자 버스 알림 서비스를 간단하게 만들어 보고 싶어서 토이 프로젝트 처럼 만들어 본게 있다. 어떤 사람이 들어와서 본인의 위치를 중심으로한 지도를 보게 되고 정류장을 클릭하고 버스를 누르면 2정거장 전에 알림을 받을 수 있게 한 서비스 인데 이 기능을 구현하기 위해서는 사용자의 현...

어떤 툴, 기능 등이 제대로 설치 되어있는지 python 으로 확인하기: help option으로 꼼수

어떤 툴이 제대로 설치되어있는지 확인하는 방법은 뭐가 있을까? python, java, c 와 같은 언어들의 스타일을 교정, 취약점 분석 등을 해주는 자동 파이썬 스크립트를 간단하게 개발해 본적이 있다. 그 여러가지 언어들을 교정해주는 다양한 Tool 이 이미 설치가 되어있어야 우리의 스크립트를 자유롭게 사용이 가능했다. 그런데 그 tool 을 사...

전체 유저 공지 개선: Broadcast Alarm을 활용한 성능 향상

전체 공지 개선하기 Q&A 플랫폼 회원수가 계속해서 늘어남에 따라 예전에 작성해 두었던 코드들이 문제를 일으키는 경우가 종종 생겼다. 그중 회원수가 4천명도 채 되지 않았을때 만들었던 공지 알림 기능이 문제가 생겼다. 회원마다 각자의 Alarm 이 있다. 누군가 나의 글에 댓글을 달거나 나를 mention 하거나 알림을 줘야하는 상황이 오...

© 병욱. Some rights reserved.