일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- aws #아키텍트 #과정 #vpc #인프라 구축 #sqs #message #queue #sns구독
- aws #아키텍트 #과정 #vpc #인프라 구축 #db #장애조치 #reand only #replica #events
- aws #아키텍트 #과정 #vpc #인프라 구축 #aurora #database #rds #rdbs #load #balancer #web #page #haproxy
- 썸네일 #이미지
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #딥러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스
- aws #아키텍트 #과정 #vpc #인프라 구축 #php #alb #application #load #balancer #security #group #igw #ec2 #vpc #virtual #private #cloud
- aws #아키텍트 #과정 #vpc #인프라 구축 #amazon sns #server #less #architecture
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #딥러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #DBMS #Oracle #MongoDB #아키텍쳐 #DB
- aws #아키텍트 #과정 #vpc #인프라 구축 #t.g #target group #alb #application #load #balancer #web #server
- 업로드 #lambda #함수 #모바일 이미지 #썸네일 이미지
- aws #아키텍트 #과정 #vpc #인프라 구축 #s3 #bucket #객체 #스토리지 #isci #이미지 #업로드
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스
- 비트 #바이트 #이진수
- 공간복잡도 #공간자원 #캐시메모리 #SRAM #DRAM #시간복잡도
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #웹개발
- 프로세스 #CPU #시공유 #커널
- aws #아키텍트 #과정 #vpc #인프라 구축 #alb #load balancer #t.g #target #group #haproxy #high ability #db #replica #region
- 쓰레드 #쓰레드풀 #프로세스
- aws #아키텍트 #과정 #vpc #인프라 구축 #sqs #trigger #python3.9 #패키지 #
- aws #아키텍트 #과정 #vpc #인프라 구축 #rds #replica #복제본 #aurora #database #고가용성
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #KDT #기본문법 #데이터베이스 #Computer #Science #CPU #메모리
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #OSI #ISO #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #DBMS #Oracle #MongoDB #아키텍쳐 #DB
- aws #아키텍트 #과정 #vpc #인프라 구축 #haproxy #고가용성 #테스트 #alb #application #load balancer #application
- aws #아키텍트 #과정 #vpc #인프라 구축 #auto scailling #lauch template #ec2 instace #private #subnet
- aws #아키텍트 #과정 #vpc #인프라 구축 #rds #endpoint #cloudwatch #monitoring
- aws #아키텍트 #과정 #vpc #인프라 구축 #ec2 #instance #launch #template #생성 #ami #amazone #machine #image
- aws #아키텍트 #과정 #vpc #인프라 구축 #s3 #bucket #객체 스토리지 #objects storage #events #upload #알림
- aws #아키텍트 #과정 #vpc #인프라 구축 #haproxy #round robin #process #high ability #auto scailling #app server #launch template
- aws #아키텍트 #과정 #vpc #인프라 구축 #second nat #gateway #routing table #route53 #고가용성 #private subnet #
- aws #아키텍트 #과정 #vpc #인프라 구축
- Today
- Total
목록Spring (56)
요리사에서 IT개발자로
1대 1관계 @OneToOne (1대 1 관계를 맺어주는 역할) Entity에서 외래키의 주인은일반적으로 N(다수)의 관계 Entity이지만 1대1관계 에서는 외래키의 주인을 직접 지정해야한다. 외래키를 가지고있는 클래스만이외래키를 등록, 수정, 삭제할 수 있고 아닌쪽은 읽는 것만 가능하다.@JoinColumn() 은외래 키의 주인이 활용하는 에너테이션이다.컬럼명, Null여부, Unique여부 등 지정할 수 있다.@OneToOne@JoinColumn(name = "user_id")private User user; Food Entity가 외래키의 주인인 경우@Entity@Getter@Setter@Table(name = "food")public class Food { @Id @Generat..
Spring Security 사용 전 Spring Security 사용 후 Client의 요청은 모두 Spring Security를 거친다. Spring Security의 역할인증 / 인가 성공시 Controller로 Client 요청 을 전달한다.Client 요청 + 사용자 정보(UserDetails) 실패시Controller로 Client 요청을 전달하지않는다 (Error Response) 로그인 처리 과정 Client가 로그인을 시도한다로그인 시도할 username과 password정보를 HTTP body로 전달한다(POST) 인증 관리자(Authentication Manager)는UserDetailsService에게 username을 전달하고회원상세 정보를 요청한다.@Beanpublic Secur..
Spring Security 프레임워크 코드// Securityimplementation 'org.springframework.boot:spring-boot-starter-security'Spring Security 프레임워크란 Spring 서버에 필요한 인증 및 인가를 위해 많은 기능을 제공한다.웹서버 구현에 편의를 제공해준다. CSRF(Cross-site request forgery)란 공격자가 인증된 브라우저에 저장된 쿠키의 세션정보를 활용하여웹서버에 사용자가 의도하지 않은 요청을 전달한다. CSRF 설정이 되어있다면 HTML에 CSRF 토큰 값을 넘겨주어야 수신이 가능하다. 쿠키 기반의 취약점을 이용한 공격이기에REST 방식의 API에서는 Disable이 가능하다. Spring Security ..
Filter란 Web 애플리케이션에서 관리되는 영역이다.Client로 부터 오는 요청과 응답에 대해 최초/ 최종 단계의 위치한다 이를 통해서 요청과 응답의 정보를 변경하거나부가적인 기능을 추가를 할 수 있다.주로 범용적으로 처리해야하는 작업들로깅 및 보안처리에 활용된다.인증, 인가와 관련된 로직들을 처리할 수 있다. Filter를 사용하면 인증, 인가와 관련된 로직을 비즈니스 로직과 분리하여 관리할 수 있는 장점이 있다.Filter ChainFilter는 한 개만 존재하는 것이 아닌Chain형식으로 묶어서 처리 될 수 있다.
회원 가입 시 사용자가 입력한 비밀번호는 정보통신망법, 개인정보보호법에 의해서 비밀번호 암호화(Encryption)가 의무 아이디와 비밀번호를 입력한 문자열 그대로 저장되어 DB에 저장된다면유출의 위험이 굉장히 높으며 해커뿐만 아니라DB조회가 가능한 내부 관계자들도 회원가입정보를 기억할 수 있다. 그래서 암호화 후 패스워드 저장이 필요하다.평문 -> 암호화 알고리즘 -> 암호문위처럼 해커가 DB에 저장되있는 회원이 입력한 패스워드 정보를 갈취하더라도 실제 암호를 알 수 없고 내부관계자들도 알수 없다.그래서 복호화가 불가능한 '단방향' 암호 알고리즘 사용이 필요하다. 양방향 암호 알고리즘암호화 평문 -> 암호화 알고리즘 -> 암호문복호화암호문 -> 암호화 알고리즘 -> 평문단방향 암호 알고리즘암호화평문 -..
쿠키란클라이언트에 저장될 목적으로 생성한 작은 정보를 담은 파일이다. 구성요소Name(이름) : 쿠키를 구별할 때 사용되는 키( 중복x)Value(값) : 쿠키의 값Domain(도메인): 쿠키가 저장된 도메인Path(경로) : 쿠키가 사용되는 경로Expires(만료기한 ) : 쿠키의 만료기한(만료기한 지나면 삭제된다)세션이란서버에서 일정시간 동안 클라이언트 상태를 유지하기위해 사용된다. 서버에서 클라이언트 별 유일무이한 세션 ID를 부여하고클라이언트 별로 필요한 정보를 서버에 저장한다. 서버에서 생성한 세션ID는 클라이언트의 쿠키값(세션쿠키)으로 저장되어 클라이언트 식별에 사용된다.세션 동작 방식(서버는 세션ID를 사용하여 세션을 유지)클라이언트가 서버에 1번요청을하면서버가 세션ID를 생성하고 쿠키에 ..
인증(Authentication)해당 유저가 실제 유저인지 인증하는 개념인가(Authorization)해당 유저가 특정 리소스에 접근이 가능한지 허가를 확인하는 개념웹 애플리케이션 인증서버와 클라이언트 구조로 되어있으며이 요소들은 멀리 떨어져있다. 통신방식은Http프로토콜(통신규약)을 지키며 통신을 하는데통신은 비연결성(Connectionless) 무상태(Stateless)로 이루어진다. 비연결성(Connectionless)이란서버와 클라이언트가 서로 연결되어 있지 않다.실제로 우리는 서버에게 요청을 하면 요청을 응답하고 연결을 끊어내고 있다. 무상태(Stateless)란서버가 클라이언트의 상태를 저장하지 않는다.실제로 서버는 클라이언트가 어떠한 요청을 보냈는지 관심이없고 알지 못한다. 결국 비연..
초기설정Food Interfacepublic interface Food { void eat();}Chicken @Componentpublic class Pizza implements Food { @Override public void eat() { System.out.println("피자를 먹습니다."); }}Pizza@Componentpublic class Pizza implements Food { @Override public void eat() { System.out.println("피자를 먹습니다."); }}테스트 코드@SpringBootTestpublic class BeanTest { @Autowired Food food;..
초기 설정build.gradle// Securityimplementation 'org.springframework.boot:spring-boot-starter-security'secuirity 기능제한import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;@SpringBootApplication(exclude = SecurityAutoConfiguration.class) // Spring Sec..
영속성 컨텍스트는 Entity객체를 효율적으로 쉽게 관리하기 위해 만들어진 공간https://hs-backend.tistory.com/126 스파르타 부트캠프 Spring Master 2강 영속성 컨텍스트영속성 컨텍스트란 지속성을 의미한다(persistence) Persisten를 객체의 관점으로 해석해보았을 경우객체가 생명(객체가 유지되는 시간)이나공간(객체의 위치)을 자유롭게 유지하고이동할 수 있는hs-backend.tistory.com 영속성 컨텍스트는 내부적으로 캐시 저장소를 갖고있다.캐시 저장소는 Map자료 구조형태로 되어있다. Key => @Id로 매핑한 기본키(식별자)값을 저장Value => 해당 Entity클래스의 객체를 저장영속성 컨텍스트는 캐시 저장소의 Key에 저장한 식별자 값을 사용..