일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- net
- M8200
- MFC
- C/C++
- Font
- 설치제거
- VS2008
- phpmailer
- API
- protobuf-c
- PDA
- Antialiasing
- crashlog
- 자바스크립트
- self-signed ssl
- C#
- .net
- 데이터 전달
- 와이브로
- php
- ClickOnce
- 한 번만 실행
- 기념일관리
- EUC-KR
- JavaScript
- docker
- plcrashreporter
- GDI
- 크래시로그
- 블루투스 헤드셋
- Today
- Total
목록SpringBoot (35)
~☆~ 우하하!!~ 개발블로그
일단, 제목에 1차 시도라고 굳이 밝히고 있는 이유는 Naver 계정을 이용한 로그인 구현이 완료될 수 없는 지경임을 확인했기 때문이다.이번 포스트에서는 Naver 계정으로 로그인하는 기본 절차만 확인하고, 그 결과에 따라 회원정보 테이블 구조를 변경하는 작업을 수행한 후에 완료지을 예정이다.네이버 계정 로그인을 위한 네이버 개발자센터 설정내용은 https://iwoohaha.tistory.com/336 을 참고하자.로그인 폼에 네이버 계정 로그인을 위한 버튼을 추가한다. 별다른 설명없이 로그인폼에 배치한 구글 로그인 버튼의 스타일을 변경해봤는데, https://iwoohaha.tistory.com/333 에서 설명하는 css scanner 확장 프로그램의 도움을 받았다. --..
https://iwoohaha.tistory.com/320 에서 Google 계정을 이용하여 로그인하는 과정을 살펴보았는데, 회원ID를 email 주소로 관리하고 있기 때문에 Google 로부터 전달받은 이메일 주소와 동일한 이메일 주소로 회원이 등록되어 있는 경우에 간단하게 로그인이 가능하게 되었다.이번에는 회원가입되지 않은 이메일 주소의 구글 계정 정보가 들어온 경우에 해당 이메일 주소로 회원가입을 진행한 후에 로그인시키도록 기능을 변경해보려고 한다.수정해야 할 주요 부분은 CustomOAuth2UserService 의 loadUser 함수 부분이다. @Override public OAuth2User loadUser(OAuth2UserRequest userRequest) throws OAu..
현재 diary 웹 프로그램은 세션 방식의 로그인을 사용하고 있어. 이번 포스트에서는 토큰 방식의 로그인으로 변경해보려고 해.세션 방식의 로그인은 세션이 유지되는 동안 로그인이 유지되는 특징이 있어. 세션이 끊어지면 로그인을 다시 해주어야 하지. 그래서 remember-me 라는 쿠키를 사용해서 세션이 끊어지더라도 다시 로그인없이 웹 프로그램을 사용할 수 있게 하는 방법을 사용했었지. ☞ SpringBoot: study.diary – Spring Security remember-me, logout 처리 재정리토큰 방식의 로그인은 로그인에 성공하면 토큰을 발급받는데, 이 토큰을 이용해서 사용자 인증을 확인하기 때문에 세션과는 무관해. 웹 프로그램에서는 이 토큰을 쿠키로 저장해두었다가 사용하는 방법으로 재사..
diary 프로그램에서 사용중인 로그인 폼은 Boot Strap 예시에서 가져온거야.가운데에 Remember me 라는 체크박스가 있는데, 이번 포스트에서는 이 체크박스에 기능을 연결해보려고 해.Remember me 라는 체크박스를 체크해두면 일단 한번 로그인한 후에 일정시간 동안에는 별도로 로그인을 하지 않고도 백그라운드에서 로그인처리되게 해서 매번 로그인하지 않고도 이용할 수 있어. 지금은 이 기능이 구현되어 있지 않기 때문에 로그인을 한 후에 브라우저를 종료시켰다가 다시 접속하면 다시 로그인을 해야 하지.Spring Security 는 RememberMe 기능을 포함하고 있는데, 우선 아래 코드를 볼께.SecurityConfig.java...@Beanpublic SecurityFilterChain ..
일기 프로그램에 무슨 역할이 필요있겠어? 개인이 로그인해서 일기를 작성하고, 내가 작성한 일기를 볼 수 있으면 되었지. 그런데, 가만 생각해보니 회원 관리 기능을 넣는다면 역할 관리가 필요하겠더라고.권한과 역할은 엄밀히 말해서 다른거야. 이 포스트에서는 권한이 아닌 역할(ROLE)을 관리하는 방법에 대해서 알아보는거야.그래서 이번 포스트에서는 diary 프로그램에 역할 관리 기능을 넣어보려고 해.역할 관리 기반 구조 작성기존의 사용자정보 저장 테이블인 member 는 아래와 같이 구성되어 있었어.역할 관리를 하기 위해서는 역할 정보를 넣어주어야 하니까, 아래와 같은 스크립트를 이용해서 역할 컬럼(role)을 추가했어.--PostgreSQL QueryALTER TABLE public."member" ADD..
diary 프로젝트에서 @RestController 애노테이션을 붙여서 작성한 클래스는 DiaryController 하나뿐이야.이 클래스에서 정의한 5개의 함수 리턴값을 보면 void 이거나 Diary, List 로 이루어져 있지.DiaryController.java@RestControllerpublic class DiaryController { private final DiaryService diaryService; @Autowired public DiaryController(DiaryService diaryService) { this.diaryService = diaryService; } // Create @PostMapping("/diary") pu..
오늘은 주고받을 데이터에 객체를 사용하는 방법에 대해서 알아볼까 해.Spring Boot: study.diary : json 형식으로 Rest API 에게 전송 포스트에서는 클라이언트에서 올린 json 형식의 데이터를 Map 형식으로 수신받았어.DiaryController.java// Update@PutMapping(value = "/diary/{id}")public void UpdateDiary(@PathVariable("id") Integer id, @RequestBody Map map) { System.out.println("id=" + id); System.out.println(map); diaryService.UpdateDiary(id, map.get("diary_date").t..
Spring Boot: study.diary : ajax 를 이용한 Rest API 호출로 view 와 data 분리 에서 최종적으로 만든 코드는 Rest API 를 호출할 때 application/x-www-form-urlencoded 형식의 content-type 으로 전송하는 예제였어.application/x-www-form-urlencoded 형식의 데이터는 _csrf=26906007-6d4e-4470-b76f-189dc827fa2d&_method=PUT&diary_date=2024-03-05&diary_content=4444 와 같이 key=value&key=value 형식으로 데이터가 이루어졌어.반면에 application/json 형식의 데이터는 {_csrf: ‘49543209-c640-4c..