썸네일 회고 | 코드숨 핸즈온 후기 | 실습으로 마스터하는 OAuth 2.0: 기본부터 보안 위험까지 1. 실습으로 마스터하는 OAuth 2.0 란? 코드숨 인스타를 통해 OAuth2.0 핸즈온 세션을 알게 되어 신청했다. 자세한 설명은 코드숨 링크를 참고! https://www.codesoom.com/courses/handson 핸즈온 : OAuth 2.0 | 코드숨 올바른 공부 방법으로 깊이있는 개발 지식과 기술을 배워보세요. www.codesoom.com 2. 어떤 것을 기대하며 이 과정을 신청했을까? 2-1. 직접 실습해보며 OAuth와 가까워지기 2-2. 인증, 인가에 대한 막연한 두려움 없애기 3. 새롭게 알게된 건 무엇일까? 3-1. OAuth란? OAuth2.0은 인가 프레임워크이다. (인증 프로토콜이 아님) 아닌 이유 : Github 토큰을 가져왔다고 해서 그 사람이 “김성은”인건 아니..
썸네일 [Github] OAuth 앱 권한 부여 방법 Github Docs https://docs.github.com/ko/apps/oauth-apps/building-oauth-apps/creating-an-oauth-app OAuth 앱 만들기 - GitHub Docs 개인 계정에서 또는 관리자 액세스 권한이 있는 조직에서 OAuth app을(를) 만들고 등록할 수 있습니다. OAuth app을(를) 만드는 동안 퍼블릭으로 간주되는 정보만 사용하여 개인 정보를 보호해야 합니 docs.github.com 1) 우측 상단 프로필 클릭 > Settings 2) Developer settings 3) OAuth Apps 4) New OAuth application 아래 이미지와 같이 입력 (* Authorization callback URL은 인가를 끝낸 후..
썸네일 DBeaver - docker mysql Connection Fail (Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.) docker로 각기 다른 포트의 mysql를 띄우고 싶었다. 어찌어찌 띄우는 건 성공했는데, DBeaver에서 접속하려고 하니 에러가 발생했다. 울지말고 확인해보자.. Version Version OS mac m1 Docker 25.0.3 Docker Desktop 4.27.2 (137060) Mysql 8.3.0 DBeaver 23.3.4. ERROR Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost. Mysql의 Global Port를 확인해 보자 확인 방법 1. mysql DB 접속 터미널에서 아래 명령어를 입력하면 mysql DB에 접속할 수 있다. docker exec -it {컨테이너명} mysql -..
썸네일 [GitHub] default branch 변경하기 현상 다른 개발 블로그 보면 Setting > Branches에서 default branch를 변경할 수 있었다. 해결 방법 1. General > Default branch > 수정할 브랜치 선택 > Update 2. Update 클릭하면 다음과 같은 팝업이 뜨는데 I understand, update the default branch. 클릭 3. default 브랜치 변경 확인
썸네일 회고 | 2023년 - 지고 싶지 않다면 이길 때까지 계속하면 된다. 💪🏻 내가 한 것과 잘한 것 1. 일 1-1. 금융권 CI/CD 프로젝트 오픈 2023년 7월부터 12월까지 숨 가쁘게 달려왔던 금융권 CI/CD 프로젝트를 오픈했다. 나는 소스코드점검 파트에 배정 받았고, 간단하게 설명하자면 배포 전 소스코드를 사전에 점검하여 사용자에게 취약점 분석 결과를 전달하는 업무이다. 소스코드 분석을 위해 소나큐브 오픈소스를 활용했고, 효율적인 운영 관리를 위해 소나큐브에서 제공하는 룰셋, 룰 옵션 기능을 추가적으로 개발하였다. 지난 5개월 동안 정말 많은 것들을 경험할 수 있었는데 다음과 같다. 1. SI 프로젝트를 경험할 수 있었다. 2. MSA로 백엔드 개발을 할 수 있었다. 3. 화면 기획부터 DB 설계까지 참여할 수 있어 다양한 직무의 일들을 체험할 수 있었다. 4. ..
썸네일 [SonarQube] Webhook Additional parameters (소나큐브 비동기 호출 사용자 정의 파라미터 추가) OS : Window SonarQube Ver : sonarqube-8.9.10.6 플로우를 간단하게 설명하면 다음과 같다. 1.BE 서버에서 소나스캐너를 실행함 2. 소나스캐너 호출이 완료되면 소나스캐너가 소나큐브 서버로 데이터를 보냄 3. 소나큐브는 Webhook에서 설정한 BE 서버를 비동기 호출한다. 4. 호출받은 BE 서버는 소나큐브 Payload를 가지고 이후 로직 처리 진행 내가 하고 싶었던 것 - 4번 절차에서 소나큐브의 응답받은 데이터를 DB 적재하고 싶음 - 응답 데이터마다 각기 다른 컬럼에 적재되어야 하기 때문에 서비스단에서 분기 처리가 필요함 그래서 어떻게 했는가 결론 : 소나스캐너 파라미터를 이고지고 BE서버까지 가지고 오면 된다. 즉, 1번 절차에서 소나스캐너를 실행하는 시점에 ..
썸네일 [Mybatis] foreach insert duplicate update 처리(Upsert) Upsert란 UPDATE + INSERT를 합친 단어이다. 중복되는 값이 있으면 UPDATE, 없으면 INSERT 하는 쿼리라고 생각하면 된다. Mybatis에서 다중 INSERT 하는 방법은 다음과 같다. INSERT 테이블명 ( name, age ) VALUES ( #{alias.name} , #{alias.age}) 만약, INSERT 시 PK(=name)가 중복된 경우에 특정 칼럼만 UPDATE 하고 싶다면 ON DUPLICATE KEY UPDATE를 사용하면 된다. INSERT 테이블명 ( name, age ) VALUES ( #{alias.name} , #{alias.age} ) ON DUPLICATE KEY UPDATE age = VALUES (age) ON DUPLICATE KEY UPD..
썸네일 [SonarQube] SonarQube 내장 DB (H2) 접속방법 OS : Window SonarQube Ver : sonarqube-8.9.10.6 소나큐브는 Default 로 H2를 사용하고 있다. 이걸 디비 접속 툴을 사용하지 않고 cli 명령어를 통해 접속하고 싶었다. 접속 방법 1. cmd창으로 SonarQube의 H2 경로로 이동 cd {소나큐브 설치경로}\sonarqube-8.9.10.61524\sonarqube-8.9.10.61524\lib\jdbc\h2 2. 아래 명령어 실행 java -cp h2-1.4.199.jar org.h2.tools.Server -web -webAllowOthers -tcp -tcpAllowOthers -ifNotExists (*h2-1.4.199.jar는 각자 버전에 맞게 수정) 3.아래 URL로 접속 4. 다음과 같이 설정 ..
썸네일 [SonarQube] Window cmd에서 소나큐브 프로젝트 바인딩 명령어 입력 윈도우에서 아래 명령어 실행하려면 \가 아닌 ^를 사용하면 된다. (\ 사용하면 단일 명령어로 인식됨) mvn sonar:sonar ^ -Dsonar.projectKey=test ^ -Dsonar.host.url=http://localhost:9000 ^ -Dsonar.login=사용자토큰
썸네일 SonarQube flood stage disk watermark [95%] exceeded on 로컬 환경에서 SonarQube 실행했는데, 웹이 뜨기도 전에 바로 죽어버렸다. 도대체 왜.. http://localhost:9000 접속도 못해보고 바로 실행창이 닫혀버렸다..ㅋ sonarqube-{sonarqube-version}\logs\es.log 확인하니까 다음과 같은 에러가 보인다. SonarQube flood stage disk watermark [95%] exceeded on 구글링 해보니 다음과 같은 글을 발견했다. https://github.com/vanderby/SonarQube-AzureAppService/issues/40 SonarQube flood stage disk watermark [95%] exceeded on · Issue #40 · vanderby/SonarQube-Az..
썸네일 [SonarQube] Local 환경에서 정적분석 돌려보기 (SonarQube 설치 및 구동) 로컬 환경에서 사이드 프로젝트 소스코드를 검증하고 싶어서 SonarQube를 사용해 봤다. 개발 환경 및 프로그램 버전 OS : M1 Java : openjdk 11.0.11 Apache Maven 3.9.3 SonarQube : 10.0 (build 68432) VSCode :1.79.2 SonarLint : 3.19.2 1. 로컬 PC에서 sonarqube 설치 및 실행 https://formulae.brew.sh/formula/sonarqube sonarqube Homebrew’s package index formulae.brew.sh 실행 관련 명령어 brew services homebrew service 목록 조회 brew services start sonarqube sonarqube start..
썸네일 회고 | 그리고 누구나 두려워하면서 창작을 하는구나. 벌써 2분기가 끝났다. 만족스러웠던 2분기를 마무리 해보고자 한다. 💪🏻 내가 한 것과 잘한 것1. 회사1-1. 퇴직금 적립 벌써 입사한 지 200일이 넘었다! 시간 정말 빨리 가는 거 같다. 입사 1주년 선물 미리 고르는 사람 바로 나야 나..~ 1-2. 포트폴리오 이력서 업데이트 지인분께 포폴 이력서 피드백을 요청드렸다. 더 이상 신입이 아니기 때문에 경력 포트폴리오로 업데이트할 필요가 있다. 피드백받은 부분을 수정해서 업데이트했다. 한꺼번에 다 바꾸려고 하지 말고, 조금씩 차근차근 바꿔가는 게 목표이다. 다음 분기에는 인턴 3차 과제 프로젝트를 포트폴리오에 녹여야겠다. 1-3. 1인분 개발자올해 초에는 1인분 몫을 하는 개발자가 되고 싶었는데, 조금씩 목표를 이뤄가고 있는 거 같아서 뿌듯하다. 조금..