Golang Google Oauth Signin 인증 방법

2019년 1월에 Google+ API가 종료 됬습니다. 그래서 찾아보는데… 찾았습니다. 물론 너무 짧은 시간동안 서치하고 사용한거라 원래 공유되있는 내용 일수도 있습니다. 여기로 가면 쉽게 로그인을 사용할수 있는 방법이 있는데요. 저는 또 사용하지 않았습니다. 그래서 찾은 방법은 우선 Golang Google OAuth 사용 하기와 겹치는 내용이 있기 때문에 그부분은 스킵하고 바로 진행하겠습니다. 그부분 이해하시고 참고하여 따라 하시면 됩니다. 다만 저 포스트에 나와있는 내용중 code를 발급받을때 scope를 https://www.googleapis.com/auth/userinfo.email로 잡아 주시면 됩니다. <a href=" https://accounts.google.com/o/oauth2/v2/auth? scope=https://www....

December 12, 2019

Java serialVersionUID에 대하여

serialVersionUID serialVersionUID에 란 무엇인가? 객체를 직렬화 하여 역직렬화를 할때 사용한다. 직렬화 외에도 보안등의 용도에 사용됬다. 객체에 대한 고유번호(?)으로 생각하면 된다. serialization가 사용되는 클래스의 경우에 명시적으로 선언해 주는것을 권유한다. 어떻게 사용하는가? serialVersionUID를 사용하기 위해서는 static, final, long 타입이여야 한다. private을 추천함. example) private static final long serialVersionUID = 11L; 선언을 하지 않을 경우에는? 선언을 하지 않은 경우에는 실행하는 시점에서 serialization을 담당하는 모듈을 통해 자동생성되어 디폴트값이 만들어진다....

December 10, 2019

Golang Google OAuth 사용 하기

Golang에서 google photo를 사용하기 위해서 찾았던 내용을 정리 하려고 한다. 이건 내 방법이고 다른 방법이 있을 수 있음. Google OAuth 2.0 for Web Server Applications 우선 위에 있는 사이트를 참조해 정리 한다. 위 사이트에서는 Go는 라이브러리가 지원 한다고 적혀 있다. 하지만 쓰지 않았다. ㅋㅋ 내가 사용한 방법은 resty라는 http 라이브러리를 사용했다. resty는 spring으로 보면 resttemplate 같은? 나는 같은 용도로 사용한다. resty설치를 위해 다과 같이 입력해 준다. go get -u github.com/go-resty/resty/v2 설치가 끝나면 라이브러리를 사용할수 있다....

November 21, 2019

Kubernetes Minikube 설치

맥북에서 kubernetes 설치를 위해 상단바에 있는 도커를 클릭후 Preferences… 를 클릭후 kubernetes 버튼을 눌러 Enable Kubernetes를 체크 후 apply를 눌러 쿠버네티스를 활성화 시킨다. 활성화가 되는 도중에는 오른쪽 하단에 Kubernetes is starting 이란 문구가 나오고 활성화가 끝나면 오른쪽 하단에 Kubernetes is running 으로 나온다. 다음으로 kubectl을 설치해 주자 kubernetes cli 툴이다. curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl" chmod +x ./kubectl sudo mv ./kubectl /usr/local/bin/kubectl 설치가 끝나면 version 체크로 확인을 해준다. kubectl version Kubectl 설치가 끝나면 Minikube 설치를 해준다....

November 18, 2019

생성자나 열거 탕비으로 싱클턴임을 보증하라

Effective Java 3/E 2장 생성자나 열거 탕비으로 싱클턴임을 보증하라 싱글턴은 인스턴스를 하나만 만들수 있는 패턴이다. 하지만 클래스를 싱글턴으로 만들면 싱글턴 인스턴스를 Mock 구현으로 대체 할 수가 없다 그렇게 되면 이를 사용하는 클라이언트를 테스트하기가 어려워지게 된다. 아주 복잡한 직렬화 상황이나 리플렉션 공격에서도 제2의 인스턴스가 생기는 일을 완벽히 막아준다. 대부분의 상황에서는 원소가 하나뿐인 열거 타입이 싱글턴을 만드는 가장 좋은 방법이다. 하지만 만약에 싱글턴이 Enum 외의 클래스를 상속해야 한다면 이 방법은 사용할 수 없다....

June 21, 2019