일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- REACT
- 에러
- 스프링
- vue.js
- Docker
- lightsail
- aws
- vue
- nginx
- spring
- Flutter
- jpa
- arraylist
- 인텔리제이
- 맥길대학교
- 자바스크립트
- 글로벌
- keycloak
- ES6
- jQuery
- gradle
- json
- JavaScript
- java
- 현장학습
- jsp
- Keycloak 17.0.1
- 메서드
- SpringBoot
- 알고리즘
- Today
- Total
목록전체 글 (112)
korean IT student
2022/04/19 기준 최신 버전 17.0.1을 설치하여 보자. 설치하기 앞서 OpenJDK 11 이상이 로컬에 설치되어 있어야 한다. 1. Keycloak 설치 2. 실행 오류 해결 3. PostgreSQL DB 연동 1. Keycloak 설치 Keycloak 17.0.1을 설치한다. 설치 wget https://github.com/keycloak/keycloak/releases/download/17.0.1/keycloak-17.0.1.tar.gz 압축 tar -zxf keycloak-17.0.1.tar.gz 2. Keycloak실행 오류 해결 설치 후 keycloak-17.0.1폴더 안에서 아래와 같이 명령어를 실행한다 bin/kc.sh start 실행 시 아래와 같이 운영 모드에서 hostname..
1. Keycloak 이란 오픈소스 ID 및 액세스 관리 쉽게 말해, 최소한의 노력으로 애플리케이션 및 보안 서비스에 인증을 추가합니다. 사용자를 저장하거나 사용자를 인증할 필요가 없습니다. Keycloak은 사용자 연합, 강력한 인증, 사용자 관리, 세분화된 권한 부여 등을 제공 그러므로 keycloak을 사용하면 인증 및 사용자 관리가 편하다. 2. Keycloak 기능 Single-Sign On : 사용자는 개별 애플리케이션이 아닌 Keycloak으로 인증합니다. 즉, 애플리케이션이 로그인 양식, 사용자 인증 및 사용자 저장을 처리할 필요가 없습니다. Keycloak에 로그인하면 사용자는 다른 애플리케이션에 액세스하기 위해 다시 로그인할 필요가 없습니다.이는 로그아웃에도 적용됩니다. Keycloak..
Bastion Host 란? public 네트워크에서 private 네트워크에 대한 엑세스를 제공하기 위한 목적을 가진 서버 쉽게 말해, 침입 차단 소프트웨어가 설치되어 내부와 외부 네트워크 사이에서 일종의 게이트 역할을 수행하는 호스트를 뜻합니다. 위 그럼 처럼 인스턴스에 접근하는 사용자들은 Bastion Host에 허가되어야만 내부 private 인스턴스에 접근 할 수 있다. 또한, Bastion Host는 인스턴스이므로 보안 강화 프로그램 등 설치하여 보안을 강화 할 수도 있다.( 사용자의 접근 이력 로깅, 수행 작업) Bastion Host 에 접근할 개발자 PC 의 IP 만 명시적으로 접근을 허용하고 SSH 포트는 22 번이 아닌 다른 포트를 사용하고 로그인시에 two factor 인증(OTP ..
Java 동적 프록시 기술을 알아보자. JDK 동적 프록시 CGLIB 먼저 JDK 동적 프록시, CGLIB 앞서 자바 리플렉션에 대해 알아보자. Reflection 이란? 리플렉션은 클래스나 메서드의 메타정보를 사용해서 동적으로 호출하는 메서드를 변경할 수 있다. 컴파일 시간이 아닌 실행 시간(Run Time)에 동적으로 특정 클래스의 정보를 추출해낼 수 있습니다. 아래의 예제를 보면서 이해를 해보자!! import java.lang.reflect.Method; public class Reflection { public static void main(String[] args) throws Exception { World target = new World(); // 기존 사용 예시 String city1 ..
목표 자바의 열거형에 대해 학습하세요. 학습할 것 (필수) enum 정의하는 방법 enum이 제공하는 메소드 (values()와 valueOf()) java.lang.Enum EnumSet Enum 이란? enum Fruit { APPLE, BANANA, PEAR } public class main { public static void main(String[] args) { System.out.println(Fruit.APPLE); System.out.println(Fruit.BANANA); System.out.println(Fruit.PEAR); } /*실행 결과 * APPLE * BANANA * PEAR * */ } enum(열거형)은 서로 관련된 상수를 편리하게 선언하기 위한 것으로 상수를 여러 개..
목표 자바의 멀티쓰레드 프로그래밍에 대해 학습하세요. 학습할 것 (필수) Thread 클래스와 Runnable 인터페이스 쓰레드의 상태 쓰레드의 우선순위 Main 쓰레드 동기화 데드락 Thread 클래스와 Runnable 인터페이스 Process란 실행 중인 프로그램 프로그램을 실행하면 OS로부터 실행에 필요한 자원(메모리)을 할당받아 프로세스가 된다. Thread란 프로세스 내에서 실행되고 있는 흐름의 단위 동일한 프로세스 내에 존재하며, 프로세스의 메모리 영역을 공유 두 개 이상의 쓰레드를 가지는 프로세스를 멀티 쓰레드 프로세스 Multi Thread란 두 개 이상의 쓰레드를 가지는 프로세스를 멀티 쓰레드 ex) 크롬 창을 여러개 실행하면 운영체제로부터 메모리를 할당받아 프로세스가 크롬창을 실행한 만..
목표 자바의 예외 처리에 대해 학습하세요. 학습할 것 (필수) 자바에서 예외 처리 방법 (try, catch, throw, throws, finally) 자바가 제공하는 예외 계층 구조 Exception과 Error의 차이는? RuntimeException과 RE가 아닌 것의 차이는? 커스텀한 예외 만드는 방법 예외(Exception)와 에러(Error) Exception 프로그램 실행 중 개발자가 구현한 로직에서 던져진 문제에 대한 정보를 담는 클래스를 말하며, 자바에서의 Exception은 컴파일 시점에서 컴파일러에게 발견되는 확인된 예외이다. 예외 처리를 통해 프로그램을 종료하지 않고 정상 실행 상태가 유지되도록 할 수 있다. Error 컴퓨터 하드웨어의 오동작 또는 고장으로 인해 응용프로그램 실행..
목표 자바의 인터페이스에 대해 학습하세요. 학습할 것 (필수) 인터페이스 정의하는 방법 인터페이스 구현하는 방법 인터페이스 레퍼런스를 통해 구현체를 사용하는 방법 인터페이스 상속 인터페이스의 기본 메소드 (Default Method), 자바 8 인터페이스의 static 메소드, 자바 8 인터페이스의 private 메소드, 자바 9 1. 인터페이스란? 인터페이스란 일종의 추상클래스이며, 추상클래스보다 추상화의 정도가 더 높다. 추상클래스는 추상메서드 이외에도 구현부가 있는 일반메서드나, 변수를 사용할 수 있는 반면, 인터페이스는 오직 추상메서드와, 상수만을 가질 수 있다. 2. 인터페이스 정의하는 방법 interface hello { public static final 타입 상수 = 값; // 추상 메소드..
16/09/04~16/09/12 (1주차) 1. 일요일(2016/09/04) 같이 합격한 전기과 형과 인천공항에 도착하여 인솔자 없이 표시간에 맞는 비행기를 탔다. 비행기는 10시간이상 벤쿠버를 거쳐 몬트리올로 가는 비행기였다. 벤쿠버에서 Study Permit과 Work Permit을 발급하여 몬트리올로 향하는 비행기를 타고 도착하여 인솔자를 만나 숙소에 도착하였다. (Study Permit과 Work Permit 발급을 몰랐는데 안내원이 알려줘서 발급장소에서 받고 갔는데 안내원이 알려주지 않았으면 다시 받으러 갔어야 했다.) 숙소는 아래와 같이 엄청 좋았다 헬스장도 있고 수영장도 있고... ㅎㅎ 2. 월요일(2016/09/05) 숙소에서 짐을 풀고 다른 한국인 학생들과 캐나다에서 지내고 계시는 한국인..
싱글톤 패턴(Singleton Pattern) 이란? 인스턴스를 오직 한개만 제공하는 클래스 시스템 런타임, 환경 세팅에 대한 정보 등, 인스턴스가 여러개 일 때 문제가 생길 수 있는 경우가 있다. 인스튼서를 오직 한개만 만들어 제공하는 클래스가 필요 즉, 하나의 인스턴스를 메모리에 등록해서 여러 스레드가 동시에 해당 인스턴스를 공유하여 사용하면 요청이 많은 곳에서 효율을 높일 수 있다. 싱글톤 패턴 예제 1. Thread-safe 하지 않은 코드(사용 x) public class Singleton { private static Singleton instance; // 생성자는 외부에서 호출하지 못하게 private으로 지정 private Singleton() {} // 예를 들어 쓰레드 두개가 동시에 ..