전체 글151 도메인 등록하기, 네임서버 백엔드 서버의 SSL인증서 발급을 위해 도메인이 필요했다. 제일 저렴하게 구매했다. 그렇게 되면 이렇게 네임서버를 받을 수 있다. (다른곳의 네임서버 서비스를 이용해도 무관) 이제 아래의 요청 순서로 나의 IPv4 값을 얻어낸다. 나의 최상단 도메인은 shop이다. ICANN에서 shop 최상단 등록소의 서버 주소를 받아온다. DNS서버가 shop이라는 최상단 도메인에 example.shop을 물어보면 위의 네임서버를 알려준다. 그러면 네임서버에서는 나의 IPv4주소를 갖고있다가 이를 알려준다. 나의 주소 등록하기 내가 해야할것은 해당 네임서버로 접속했을 때, 나의 IPv4주소를 알려줘야한다는 것이다. 이를 위해 등록이 필요하다. DNS 관리 사이트별로 구성은 조금씩 다르지만, 맥락은 비슷하다. 해당 레.. 2023. 11. 8. [트러블] 서버 배포하기 - 쿠키가 생성되지 않는 이슈. (Same-site : none 설정) 문제발생 문제분석 1. 백엔드에서 jwt를 발급은 문제 없다. 2. 클라이언트에 Set-Cookie헤더가 잘 담겼다. 3. SameSite이슈로 Set-Cookie가 막혔다. 원인 분석 기존 로컬환경에서 백엔드 서버를 AWS EC2상에 올리자 클라이언트가 이를 Same-site로 인식하지 않게되어 쿠키 생성이 되지 않는다. 왜냐하면 Same-site=Lax로 기본값인데 이는 'safe'한 요청인 Get 메소드, , 의 접근만 허용한다. 그래서 이제 Cross-site로 인식되는 백엔드 서버로 오는 Set-Cookie가 작동하지 않음. 해결방법 응답을 Same-Site : None으로 설정해준다. 그러기 위해선, Secure를 설정해줘야한다. 그러기 위해선, SSL 인증서를 발급받아야 한다. 그러기 위해선.. 2023. 11. 6. React 8 : PUT 메소드 이후 게시글 이동시 수정전 게시글이 불러와진다. (비동기 처리 주의) 현재 id번호에 맞게 한 개 게시글을 GET메소드를 통해 가져오고 있다. 현재 quiz객체 안에 replies 배열이 있는데, replies배열을 포함한 quiz객체와 replies객체를 따로 다루고 있어 개선이 필요해보인다. 수정 페이지로 넘어갈때 기존 quiz객체 넘겨주기 수정버튼을 눌렀을 때, navigate가 실행된다. 이때 state로 quiz를 넘겨준다. 넘겨받은 state를 통해 기존의 상태에서 수정할 수 있게 초기값을 세팅했다. 이제 이렇게 수정후에 수정하기 버튼을 누르면 PUT메소드가 동작하고 navigate를 통해 다시 기존 게시글로 이동하도록 되어있다. 문제점 : 수정 전 게시글이 가져와진다. 서버에는 분명히 수정이 완료되었는데, 퀴즈페이지를 이동하며 처음 가져온 퀴즈객체는 수정전이다.. 2023. 11. 2. 연관관계를 설정하기 위해 필요한 id값을 알고 있다면 객체를 굳이 select할 필요가 있나? (쿼리 줄이기, getReferenceById) 고민기존 구현 사항Reply객체를 생성하기 위해 필요한 외래키는 User, Quiz이다.User : @AuthenticationPrincipal 을 통해 이미 가져온 User객체를 바로 활용 가능하다.Quiz : PathVariable을 통해 Id값은 이미 알고 있는 상황. 고민점위 코드처럼 퀴즈 객체를 불러와서 Reply에 넣어줘야 연관관계가 적용이 될텐데, 이후 Quiz객체는 사용되는 곳이 없다.실제로 위 코드대로 Reply를 Create하는 api를 실행해보면 실행된 쿼리는 아래와 같다. 이는 이미 알고있는 id값을 이용해 굳이 퀴즈 객체를 가져와 id 값만 쓰는 느낌이다.Quiz객체가 존재하는 지 체크를 해주는 의미가 있다한들, Select 쿼리가 낭비되는 느낌이다. 개선 점getOne메소.. 2023. 10. 24. 개인프로젝트 - 하하하 3 : 기본적인 보안. 쿠키, 로컬스토리지. + 리액트 렌더링 방식 1. 로그인 상태 유지 완료사항 유저정보를 로컬스토리지에 저장하여 헤더에 활용하는 등 이후에도 활용 예상. jwt를 쿠키로 저장해둠. (Access / Refresh) 고민하는 점 jwt vs Session 자체도 현재 의견이 많이 갈리는 듯하다. jwt를 쿠키 혹은 로컬스토리지에 저장하는 지도 의견이 많이 갈린다. 각각의 장단점이 다 있어보인다. jwt를 쿠키에 저장하고 RefreshToken을 httpOnly로 xss공격으로부터 기본적인 방어가 되어보이긴 하지만 이 역시도 완벽치는 않다. 우선은 jwt를 쿠키에 저장하고 RefreshToken을 rotation하는 방식으로 우선 개선해보려 한다. 2. 리액트 렌더링 App.js에 로컬스토리지로 부터 recoil atom에 값을 추가하는 코드를 useE.. 2023. 10. 23. 이전 1 ··· 6 7 8 9 10 11 12 ··· 31 다음