전체 글 (43) 썸네일형 리스트형 외부에서 local로 접속하기 (포트포워드) 안녕하세요! 키크니 개발자 입니다. 🦒 toss 가상계좌 API를 연동하면서 생긴 문제에 대해서 작성해보려고 합니다. 웹훅 API를 구현한 후 토스페이먼츠 개발자센터에 가상계좌 웹훅 URL을 등록했음에도 불구하고 local PC로 웹훅 요청이 들어오지 않았습니다. 웹훅(Webhook)이란? 특정 이벤트가 발생하였을 때 타 서비스나 응용프로그램으로 알림을 보내는 기능입니다. 토스페이먼츠 API 문서를 확인해보니 아래와 같이 작성되어있었는데요. 여기서 방화벽 설정에서 웹훅 URL에 지정된 포트번호에 대한 인바운드 트래픽을 허용해주란말이 있었는데 이에대한 말이 이해가 되지 않았습니다. 그러다 옆에 계신 개발자분께서 설명해주셨는데, 외부 IP에서 내 컴퓨터로 접속하기 위해서는 반드시 필요한 과정중에 하나가 공유.. RequestBody 에서 enum의 속성(요소)으로 data 받아 enum 상수값으로 변환하기 안녕하세요! 키크니 개발자 입니다. 🦒 문제상황 RequestBody를 사용하면서 dto 로 data를 받기 위해 Enum을 사용하였습니다. 상수값으로 data를 전달하면 바로 받을 수 있지만, 이번 상황은 상수값에 대한 속성을 JSON에 포함시켜 data를 받아와야하는 상황이었습니다. Fruit enum class @Getter public enum Fruit { APPLE("사과"), BANANA("바나나"), GRAPE("포도"), ORANGE("오렌지"); private final String name; Fruit(String name) { this.name = name; } } FruitController @PostMapping("/fruit") public String saveFruit(@Re.. [CI/CD] GitHub Actions ECS 구성하기 안녕하세요! 키크니 개발자 입니다. 🦒 회사에서 AWS ECS로 배포를 진행하고 있는데 하나하나 커맨드를 입력하면서 배포하기에는 너무 번거로워서 간편하게 배포하기 위해 Github Actions를 적용하였습니다. GitHub Action 이란? github에서 제공하는 CI(Continuous Integration, 지속적 통합)/CD(Continuous Deployment, 지속적 배포) 서비스 입니다. Github Action Core 개념 깃허브 액션을 이해하기 위해서 알아야 하는 개념은 workflow, event, job, step, action, runner 등이 있습니다. Workflow 여러 Job으로 구성되고, Event에 의해 트리거 될 수 있는 자동화 된 프로세스를 의미합니다. 깃허브.. [AWS] 이미지 AWS S3에 업로드하기 💡 코드가 보이지 않으시다면 드래그 혹은 오른쪽 아래 🌜 아이콘을 눌러 테마 색을 변경해주세요. 안녕하세요! 키크니 개발자 입니다. 🦒 이미지를 AWS S3에 업로드하는 기능을 맡아서 구현한 김에 기록삼아 작성하였습니다! DB 저장 로직을 제외한 S3에 이미지 업로드하는 예시입니다. (DB 저장을 할 경우에는 이미지 업로드 후 데이터를 저장해주면 됩니다.) 아무나 S3에 파일을 업로드 하지 못하게 막으려면 IAM에서 accessKey와 secretKey를 발급 받아야 합니다.만약 누구나 업로드가 가능하게 하려면 S3 권한 > 버킷 정책에서 해당 정책을 생성한 후 적용해 주어야 합니다. application.properties # S3 Bucket cloud.aws.credentials.accessKey=.. The AWS Access Key Id you provided does not exist in our records 해결 💡 코드가 보이지 않으시다면 드래그 혹은 오른쪽 아래 🌜 아이콘을 눌러 테마 색을 변경해주세요. 안녕하세요! 키크니 개발자 입니다. 🦒 S3에 이미지 업로드 로직을 짠 후 테스트를 할 때 에러가 발생하였습니다. The AWS Access Key Id you provided does not exist in our records ... 위와 같은 에러는 aws accesskey, secretkey가 configure에 등록되지 않아 셍기는 에러 였습니다. 프로필을 등록하면서 aws configure에 accessKey와 secretKey를 등록하려면 아래와 같은 명령어를 사용해야 합니다. aws configure --profile username 그러면 아래와 같이 accessKey와 secretKey를 작.. [DynamoDB] DyanamoDB의 기본 개념 💡 코드가 보이지 않으시다면 드래그 혹은 오른쪽 아래 🌜 아이콘을 눌러 테마 색을 변경해주세요. 안녕하세요! 키크니 개발자 입니다. 🦒 다이나모 개념에 대해서 다시 복습하고자 정리하려고 합니다. DynamoDB란? NoSQL(Not Only SQL) 데이터베이스 매우 빠른 쿼리 속도 Auto-Scaling 기능 탑재 (중요한 특징입니다. 처음 데이터베이스를 만들면 크기가 정해지는데, Auto-Scaling의 경우는 데이터 크기 초과/축소 될 때 테이블이 알아서 늘어나고 줄어듭니다. 이는 비용에 대한 이점이 있습니다.) key-value 데이터 모델 지원 테이블 생성시 스키마 생성 필요 없음 (실시간으로 들어오는 데이터를 보관하는데 탁월합니다.) 모바일, 웹, loT데이터 사용시 추천 SSD 스토리지 사용.. [Spring] Swagger API 연동하기 💡 코드가 보이지 않으시다면 드래그 혹은 오른쪽 아래 🌜 아이콘을 눌러 테마 색을 변경해주세요. 안녕하세요! 키크니 개발자 입니다. 🦒 기존 프로젝트에서는 API 문서를 Spring Rest Doc으로 진행하다가, 이번에는 Swagger로 진행하였습니다. 진행하면서 참고 될 만한 것들을 적어보았습니다! Swagger란? Open Api Specification(OAS)를 위한 프레임워크이다. API들이 가지고 있는 스펙(spec)을 명세, 관리할 수 있는 프로젝트/문서 API 사용 방법을 사용자에게 알려주는 문서 Springboot에서 Swagger를 사용하면, 컨트롤러에 명시된 어노테이션을 해석하여 API문서를 자동으로 만들어준다. 참고로 Swagger는 Java에 종속된 라이브러리가 아니다. URL에.. [WEB] CSRF란? 💡 코드가 보이지 않으시다면 드래그 혹은 오른쪽 아래 🌜 아이콘을 눌러 테마 색을 변경해주세요. 안녕하세요! 키크니 개발자 입니다. 🦒 강의를 보다가 CSRF라는 개념이 나오길래 다시 한번 정리하고자 합니다. CSRF란? Cross-Site Request Forgery로 사이트 간 요청 위조를 의미합니다. 웹 애플리케이션 취약점 중 하나로 사용자가 자신의 의지와 무관하게 공격자가 의도한 행동을 하여 특정 웹 페이지를 보안에 취약하게 한다거나 수정, 삭제 등의 작업을 하게 만드는 공격방법을 의미합니다. XSS 공격과 차이 XSS 공격(Cross Site Scripting, 사이트간 스크립팅) 은 사용자가 웹사이트를 신용하여 악성 스크립트가 실행된다면, CSRF 공격은 반대로 특정 웹사이트가 사용자의 브라우.. 이전 1 2 3 4 5 6 다음