분류 전체보기219 [01] 프로젝트 환경구축 환경구축 이전 장에서 STS에서 작업환경을 만들어놓는 일까지 마쳤다. 이번장에서는 프로젝트를 만들고 환경을 구축하는 일을 해본다. 진행순서 STS 스프링 프로젝트 만들기 메이븐을 통한 라이브러리 수정 및 추가 config와 mapper파일 만들기 JDBC관련 Bean 등록하기 프로젝트 만들기 스프링 프레임워크를 하기 위한 프로젝트를 만들어보자 프로젝트 생성하기 오른클릭-[New]-[Spring Lagacy Project] Project name을 입력해주고 Template에서 Spring MVC Project선택 - [Next] 팝업뜨는것은 yes 선택 top-level package를 입력하는 텍스트 상자가 나오는데, 세번째 레벨까지 작성해야 한다. 관례적으로는 두번째 레벨까지는 도메인의 역순이고 세번.. 2023. 2. 20. [00] 스프링프레임워크란? / Maven, STS 설치 스프링 프레임워크스프링 프레임워크에 대해 알아보고 환경구축을 해보자Spring Framework란?자바플랫폼을 위한 오픈소스 애플리케이션 프레임워크로 간단하게 스프링(Spring)이라고도 불린다동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있다대한민국 공공기관의 웹 서비스 개발시 사용을 권장하고 있는 전자정부 표준프레임워크의 기반 기술로서 쓰이고 있다공식문서https://docs.spring.io/spring-framework/reference/https://spring.io/ Spring Framework 특징IOC (Inversion of Control) 제어반전- 컨트롤의 제어권이 개발자가 아니라 프레임워크에 있다는 뜻으로 객체의 생성부터 모든 생명주기의 관리까지 프레임워크가 주도하.. 2023. 2. 17. [03] SQL문 응용태그 : 동적 SQL, <association>, <collection> SQL문 심화활용 Mybatis에서는 sql문과 java간의 상호작용을 돕는 태그들이 많다. 그중 동적SQL에 활용되는 태그들과 HasOne관계에 쓸 수 있는 태그, HasMany관계에 쓸 수 있는 태그를 공부해보자. 동적SQL Mybatis는 동적 sql을 만들수 있는 태그를 지원한다. 검색기능에 검색조건이 있다면 동적 sql을 유용하게 활용할 수 있다. 동적SQL 공식사이트 - 왼쪽 메뉴 [동적SQL] >>동적 SQL에 사용 가능한 태그들에 대한 설명이 나와있다. - 조건을 만족시킬경우 안의 구문을 쿼리에 포함시킨다. - 다중 if문은 if구문을 여러개 사용하면 된다. - test 속성 : " " 안에 조건을 입력한다. 이때 습관적으로 EL구문을 쓰지 않도록 유의한다. " " 안에서는 마치 자바언어를.. 2023. 2. 15. [02] 페이징처리 : RowBounds 페이징처리 이전 레거시 방식에서는 페이징처리된 목록을 조회해올때 rownum으로 정렬하기위해 인라인 안에 인라인을 넣어야만 했었다. 해당 과정을 Mybatis에서 제공하는 RowBounds을 사용하면 간단하게 처리할 수 있다. 또한 페이징 데이터들을 구할때 모듈화(메소드로 정리하는것)를 활용해보자. 코드 리펙토링/ 코드모듈화 페이징처리에 필요한 데이터들은 다음과 같다 listCount : 총게시글 수 (select문으로 조회 필요) currentPage : 요청한 페이지 번호 (클라이언트의요청에 따름) pageLimit : 페이징바의 페이지갯수 (설계자가 정한다) boardLimit : 한페이지에 보이는 게시글 갯수 (설계자가 정한다) maxPage : 총 페이지 수 startPage : 페이징바의 시작.. 2023. 2. 14. [01] Mybatis의 CRUD 방식 변화되는 프로세스 이전 레거시방식에서는 사용자의 요청을 처리하기 위해 jsp(화면단) > Controller(서블릿클래스) > Service(클래스) > Dao(클래스) > mapper(xml) 의 로직을 거쳤다. Mybatis를 사용했을때도 기본 로직은 동일하나 조금씩 변화되는 코드들이 있다. Controller에서 달라지는 부분 sql문이 전달받을 수 있는 객체는 1개이기 때문에(페이징용 제외) 데이터가 단 2개라 하더라도 한곳에 담아야 한다. 이런 경우 vo클래스를 만들수도 있지만 보다 간결하게 HashMap을 활용할수도 있다. >>mapper단에서는 #{키값}으로 뽑으면 된다. //Vo객체 대신 활용할 수 있는 HashMap HashMap map = new HashMap(); map.put("co.. 2023. 2. 13. [00] 프레임워크 개념 / mybatis 준비 / Filter 활용 프레임워크 이전의 레거시방식에서 벗어나 프레임 워크를 적용해보자. Framework 란? 개발자가 소프트웨어를 개발함에 있어 코드를 구현에 드는 시간을 줄이고, 코드의 재사용성을 증가 시키기 위해 일련의 클래스 묶음이나 뼈대 틀을 제공하는 라이브러리를 구현해 놓은 것 프로젝트의 규모가 커질수록 개발자들이 많아짐 >> 다양해진 스타일들로 인해 한계에 부딫힘 >> 통일성 있게 개발할 수 있는 틀을 만들고자 프레임워크 탄생 프레임워크의 등장으로 정형화 됨 >> 개발 당사자가 아니어도 유지보수 가능해짐 >> 유지보수 전문업체들(SM)이 생겨나남 Framework 의 특징 개발자가 따라야 하는 가이드를 제공한다 => 자유롭게 설계하고 프로그래밍하는것이 불가능하다 개발할 수 있는 범위가 정해져 있다 =>단 범위는 .. 2023. 2. 13. [07] JSP 응용 : JSTL 커스텀액션태그 커스액션태그(JSTL) 이전장에서 배웠던 표준액션태그에 이어서 커스텀 액션태그에 대해서 알아보자. JSTL이란? JSP Standard Tag Library의 약자로 JSP에서 사용되는 커스텀 액션태그 공통적이고 자주 사용되는 코드들을 쉽게 사용할 수 있도록 태그화 한 후 표준으로 제공하고 있는 라이브러리 사용준비하기 라이브러리 다운로드 아파치 톰캣 사이트 들어가기 >>왼쪽 메뉴바 다운로드 하단 Taglibs 클릭 >>4개의 라이브러리 (.jar파일) 다운로드 >>WEB-INF/lib/ 에 추가 JSTL 선언하기 - JSTL을 사용하고자하는 jsp 페이지 상단에 taglib 지시어를 사용해서 선언 : JSTL 라이브러리 종류 JSTL Core Library - 변수선언, 조건문, 반복문 등 자바로직과 관.. 2023. 2. 10. [06] JSP 응용 : 표준액션태그 JSP의 액션태그 액션태그에 대해 배우기 전에 JSP를 복습해본다. JSP를 이루는 구성인자(복습) 스크립팅 원소 : - JSP페이지에서 자바코드를 직접 기술할 수 있게하는 기능 - ex) 스크립틀릿, 표현식(출력식), 선언문, .. 지시어 : a) JSP페이지 정보에 대한 내용을 표현한다거나 (page지시어) b) 또다른 페이지를 포함하고자 할때 (include지시어) c) JSP기능을 확장시키는 라이브러리를 등록할 때 사용(taglib지시어) 액션태그 : - xml기술을 이용해서 기존의 jsp문법을 확장하는 기능을 제공하는 태그 xml의 ml은 markup language를 의미하며 마크업언어는 형태의 태그를 사용한다. >> 액션태그도 를 사용한다! 액션태그 종류 표준액션태그 (Standard Act.. 2023. 2. 9. [05] JSP 응용 : EL EL Expression Language(표현언어) 를 통해 JSP코드를 간단하게 줄일 수 있다. EL이란? Expression Language(표현언어) JSP 내장객체(Scope)에 담긴 데이터(Attribute)를 뽑아 화면에 출력하는 과정을 간략화시켜준다. (기존의 스크립틀릿 + 출력식을 대신해서 쓸 수 있음) [표현법] $ { 변수, 키 등 출력값 } >>이때 {} 안에서 조건식, 메소드 등 자바 문법을 쓸 수 있다. ${ name } JSP 내장객체 종류(복습) ServletContext (applicationScope) >>가장 큰 범위 - request.getServletContext() 으로 객체를 생성할 수 있다. - 한 어플리케이션당 단 1개만 존재하는 객체 - 여기에 담은 데이터는 .. 2023. 2. 9. [Java Script] 유용한 라이브러리 모음 유용한 라이브러리 모음Java Script의 유용한 라이브러리들을 보아본다.목록Alertify : 알람창 꾸미기Timepicker : input으로 시간 받기*포스팅은 최신순이다(목록의 역순)Timepicker제이쿼리 라이브러리특징 :시간을 input으로 입력받을때 형식을 조정할 수 있다.보통 24시간 표기가 필요할때 활용한다.공식사이트 : https://timepicker.co/ element of your page: --> tag: --> Alertify알람창을 이쁘게 꾸며준다.공식사이트 : https://alertifyjs.com/공식사이트 [Component]-[Getting Started]CDN은 아래 5줄만 복사해온다공식사이트 [Component]-[Alert]에서 코드와 효과 등을 볼 수 .. 2023. 1. 28. [14] 댓글기능 : Ajax, json, gson을 활용 댓글기능 댓글 조회와 댓글입력 기능을 구현해보자(수정 삭제 생략) 이때, 1초마다 댓글목록이 리로드되어 갱신된다. 댓글조회 일반 게시글 목록에서 게시글을 클릭하면 조회되는 상세페이지가 있다. 해당 상세페이지가 로딩되면 해당 게시글의 댓글을 가져오도록 로직을 짜보자. STEP1) Reply.java 생성위치 : com.br.board.model.vo 댓글정보를 보관할 vo 클래스를 만든다. 작성자 번호는 숫자와 문자 둘다 넣을수 있으므로 String 타입으로 지정. 날짜는 왠만하면 그냥 Date타입 말고 String 타입으로 한다. STEP2) board-mapper.xml (수정) 게시글의 댓글을 조회하는데 필요한 sql문을 작성하면서 필요한 데이터를 확인해본다. SELECT REPLY_NO , REPL.. 2023. 1. 20. [04] JSON, GSON 기초 / 실습 JSON과 GSON Ajax의 경우 서블릿에서 여러개의 응답 데이터를 담는것이 어렵다. 이때 활용할 수 있는 JSON에 대해 알아보고 JSON을 더 쉽게 사용할수 있도록 도와주는 GSON에 대해서도 알아보자. JSON 이란? JavaScript Object Notation : 자바스크립트 객체 표기법 ajax 통신 시 데이터 전송에 자주 사용되는 포맷형식 중 하나 서블릿에서 여러개의 데이터를 담을때 활용한다. JSON 라이브러리 설치하기 1) https://code.google.com/archive/p/json-simple/downloads 2) [ json-simple-1.1.1.jar ] 다운받기 3) WEB-INF/lib 폴더에 붙여넣기 JSON 사용하기 response.setContentType(.. 2023. 1. 20. [13] 아이디 중복체크 : Ajax 활용 아이디 중복체크 비동기식 통신방식으로 페이지 리로딩 없는 아이디 중복체크 기능을 만들어보자 Ajax 공부하러가기 타사이트의 아이디중복확인 네이버 회원가입 페이지에서 F12의 네트워크 탭을 열어둔 채로 임의의 아이디를 입력해보자. 입력창에서 포커스 아웃되는 순간 아이디 중복확인을 하는 joinAjax 처리가 1줄 생김 확인 >> 클릭 상세창의 응답탭에서 NNNNN(중복있을경우)과 NNNNY(중복없을경우)으로 응답데이터를 넘기는것을 확인할수 있음NNNN일경우 중복아이디가 있음 , NNNNY일 경우 멋진아이디네요 라고 프린트함을 확인할 수 있다. 해당 로직을 적용해서 아이디 중복확인 기능을 넣어보자 STEP1) memberEnrollForm.jsp (수정) 회원가입버튼을 비활성화 시킨다.(아이디 중복확인후 활.. 2023. 1. 18. [03] Ajax 기초, 실습 Ajax 개요 Ajax의 특성을 알아보고 간단한 실습을 통해 이해를 다져보자. Ajax란? Asychronous JavaScript and XML의 약자 JavaScript를 이용하여 비동기식으로 클라이언트와 서버가 데이터(XML)를 주고받는(통신) 방식 >> 데이터 형식은 XML뿐만 아닌 Text, HTML, JSON 등 다양한 형식 가능 비동기식 Ajax 동기식과 대비되는 비동기식의 특징을 알아보자 동기식 요청 vs 비동기식 요청 동기식 요청 : - 응답페이지가 돌아와야만 이어서 작업을 할 수 있다. - a, form submit, location.href, redirect 등을 이용해서 url을 요청한 경우 ** 특징 1) 사용자의 요청처리 후 그에 해당하는 응답페이지가 돌아와야만 그 이후의 작업 .. 2023. 1. 18. [12] 게시판심화2 : 상세보기(+첨부된 이미지 띄우기) 사진게시글 상세보기 일반게시글 상세보기를 복습해보면서 사진을 뛰우는 기능을 구현해보자 > 기능 url요청 요청시 전달값 응답페이지 또는 url재요청 /web index.jsp 로그인요청 /login.me userId=?&userPwd=? 실패시 views/common/errorPage.jsp 성공시 /web url재요청=> index.jsp 로그아웃요청 /logout.me /web url재요청=> index.jsp 회원가입페이지 /enrollForm.me views/member/memberEnrollForm.jsp 회원가입요청 /insert.me userId=? ... 등 실패시 views/common/errorPage.jsp 성공시 /web url재요청 => index.jsp 마이페이지요청 /myPag.. 2023. 1. 18. [11] 게시판심화2 : 썸네일목록, 글작성(+첨부파일 미리보기) 사진게시판 파일첨부 기능을 활용하여 파일 첨부시 미리보기가 되는 글쓰기 페이지와 첨부된 파일을 썸네일로 활용하는 목록 페이지를 만들어보자 > 기능 url요청 요청시 전달값 응답페이지 또는 url재요청 /web index.jsp 로그인요청 /login.me userId=?&userPwd=? 실패시 views/common/errorPage.jsp 성공시 /web url재요청=> index.jsp 로그아웃요청 /logout.me /web url재요청=> index.jsp 회원가입페이지 /enrollForm.me views/member/memberEnrollForm.jsp 회원가입요청 /insert.me userId=? ... 등 실패시 views/common/errorPage.jsp 성공시 /web url재요.. 2023. 1. 16. [10] 게시판심화1 : 상세보기(+첨부파일 조회 및 다운로드) 첨부파일 게시글 첨부파일이 있을 수도 있는 게시글을 조회하면서 첨부된 파일을 다운로드할 수 있는 페이지를 구성해보자 > 기능 url요청 요청시 전달값 응답페이지 또는 url재요청 /web index.jsp 로그인요청 /login.me userId=?&userPwd=? 실패시 views/common/errorPage.jsp 성공시 /web url재요청=> index.jsp 로그아웃요청 /logout.me /web url재요청=> index.jsp 회원가입페이지 /enrollForm.me views/member/memberEnrollForm.jsp 회원가입요청 /insert.me userId=? ... 등 실패시 views/common/errorPage.jsp 성공시 /web url재요청 => index.j.. 2023. 1. 12. [09] 게시판심화1 : 글쓰기(+파일첨부) 게시판 글쓰기 추가기능 일반게시판을 만들면서, 글쓸때에 카테고리를 선택하고, 파일을 첨부하는 기능을 추가해보자 > 기능 url요청 요청시 전달값 응답페이지 또는 url재요청 /web index.jsp 로그인요청 /login.me userId=?&userPwd=? 실패시 views/common/errorPage.jsp 성공시 /web url재요청=> index.jsp 로그아웃요청 /logout.me /web url재요청=> index.jsp 회원가입페이지 /enrollForm.me views/member/memberEnrollForm.jsp 회원가입요청 /insert.me userId=? ... 등 실패시 views/common/errorPage.jsp 성공시 /web url재요청 => index.jsp .. 2023. 1. 11. [08] 게시판심화1 : 페이징처리 페이징처리 샘플데이터를 다량으로 만들어서 하단에 페이징 처리를 해보자 > 기능 url요청 요청시 전달값 응답페이지 또는 url재요청 /web index.jsp 로그인요청 /login.me userId=?&userPwd=? 실패시 views/common/errorPage.jsp 성공시 /web url재요청=> index.jsp 로그아웃요청 /logout.me /web url재요청=> index.jsp 회원가입페이지 /enrollForm.me views/member/memberEnrollForm.jsp 회원가입요청 /insert.me userId=? ... 등 실패시 views/common/errorPage.jsp 성공시 /web url재요청 => index.jsp 마이페이지요청 /myPage.me 로그인전.. 2023. 1. 11. [토막정보] 다양한 딥러닝 용어들 다양한 딥러닝 용어들별도의 포스팅으로 분류되지 못하는 토막 용어들을 정리한다 포스팅순서멀티모달(multimodal) 멀티모달(multimodal) AI여러 가지 다른 종류의 데이터를 결합하여 처리하는 기술모달(modal)이란?- AI에서의 - 텍스트, 이미지, 음성, 비디오 등의 데이터 형예시- 텍스트를 입력받아 그에 맞는 이미지를 생성하는 모델(DALL-E 등)- 이미지 입력을 통해 이미지에 대한 분석이나 설명이 가능한 모델(chatGPT 등) 2023. 1. 10. [IAM] 자격 증명 유형 / 정책을 통한 권한 제어 IAM IAM이란?AWS 리소스에 대한 액세스 제어 서비스- Identity and Access Management- AWS 계정에서 누가(사용자, 그룹, 서비스) 무엇을(AWS 리소스에 대한 작업) 할 수 있는지 결정- 특정 작업 단위까지 세세하게 권한을 제어할 수 있고 활동 로그를 통해 모니터링도 가능하다.- 보편적 서비스이며, 지역(Region)에 특정되지 않는다.루트 계정을 통해 IAM 계정 관리- 루트 계정(AWS에 가입하면서 생성되는, 결제 정보를 관리를 포함하는 최상위 권한 계정)으로 다양한 권한의 IAM 계정(유저)를 생성할 수 있다.- 루트계정은 보안리스크가 높기 때문에 관리자 역할의 iam 유저를 만들어 사용할것이 권장된다.- IAM 계정 id/pw 외에도 숫자로된 Account ID를.. 2023. 1. 10. [프로바이더] TLS : 키페어/인증서 생성, TLS 프로토콜 프로바이더 TLS테라폼에서 TLS를 사용하게끔 하는 프로바이더 TLS에 대해 톺아본다. TLS란?데이터 보안을 위한 프로토콜- Transport Layer Security* 이 프로토콜은 아래 세가지 주요 요소를 달성한다. 1. 키페어 암호화 : 데이터를 암호화하여 전송 중에 도청이나 데이터 유출을 방지. 2. 인증 : 서버(그리고 필요하면 클라이언트)의 신원을 확인하여 신뢰할 수 있는 통신만 가능하도록 보장. 3. 데이터 무결성 : 데이터가 전송 중에 변경되거나 위조되지 않았음을 보장.다양한 프로토콜, 구현체에서 활용1. HTTPS를 구현 - HTTP가 TLS 위에서 동작하도록 하는 프로토콜2. 스프링부트, NginX 등의 프로그램 - 어플리케이션에서 간단하게 보안 프로토콜을 적용할 수 있.. 2023. 1. 10. [HCL] 테라폼을 작성하는 언어 HCL테라폼을 작성하기 위한 언어인 HCL(HashiCorp Configuration Language)에 대해서 톺아본다. HCL이란?테라폼 도메인 특화 언어- 인프라 정의를 더 간단하고 명확하게 선언적 방식으로 표현할 수 있다- 기존의 구성언어의 단점을 개선함 YAML : 가독성은 좋으나 복잡한 논리 표현 부적합 JSON : 구조적이지만 파일이 길면 가독성 떨어짐튜링 완전한 언어이다- 조건문과 반복문을 표현할 수 있다- 임의의 메모리 사용이 가능하다 (변수에 값을 저장하고, 필요시 참조 및 수정이 가능함)# main.tf == HCL 사용한 경우resource "aws_instance" "example" { ami = "ami-12345678" instance_type = .. 2023. 1. 10. [Image] buildx : 멀티 플랫폼 빌드 buildxDocker에서 제공하는 확장기능인 buildx에 대해서 톺아본다. 관련 CS 지식OS와 CPU 아키텍처- 운영체제는 추상화를 통해 애플리케이션을 하드웨어 세부사항과 무관하게 실행할 수 있게 함- But 커널 자체는 CPU 아키텍처에 종속- Docker는 기본 커널에 의존하여 가상화를 하므로 OS 및 CPU 아키텍처에 종속된 이미지가 필요멀티 플랫폼 빌드 - 다양한 플랫폼에서 실행 가능한 애플리케이션을 하나의 빌드 프로세스에서 생성 하는것 buildx도커의 멀티 플랫폼 빌드 도구- 동일한 Dockerfile로 여러 아키텍처나 운영체제에 대한 이미지를 빌드할 수 있다- 다양한 기능 지원- DockerHub에 이미지 업로드- BuildKit(빌드 엔진) 기본 사용으로 고속 빌드와 효율적인 캐.. 2023. 1. 10. [ERD cloud] 데이터 베이스 설계 프로그램 https://www.erdcloud.com/무료로 데이터설계를 해볼 수 있고 생성구문까지 제공해주는 웹페이지이다. 사용방법 해당 아이콘 클릭시 엔티티 한개를 만들 수 있다. (테이블하나가 하나의 엔티티)이때 Untitled로 이름을 지을 수 있는 칸이 두개가 나오는데,왼쪽이 논리설계용 이름, 오른쪽이 물리설계용 이름이다.논리설계는 자유롭게 한글을 사용해서 구조를 설계해보는 용도이며,물리설계는 실제로 사용될 컬럼명을 영문으로 지정하는 용도이다.엔티티는 초기설정에서는 도메인과 타입이 지정되어있다.설정버튼으로 들어가서 도메인은 체크해제를 하고타입, Null허용, 기본값, 코멘트를 체크해서 표시가 되도록 한다.L/P : 논리설계명, 물리설계명 둘다보기 L : 논리만보기 P : 물리만보기 노란색+ : 프.. 2023. 1. 10. [Image] 도커 이미지 / Dockerfile / CLI 명령어 Docker Image도커 이미지에 대해 톺아본다 CS에서 이미지(Image)란?실제 파일이나 시스템의 상태를 복제하거나 스냅샷처럼 특정 상태를 캡처해둔 템플릿이를 기반으로 나중에 동일한 환경을 복원하거나 실행할 수 있게 한다사용예- 시스템 이미지 : 운영 체제와 그 위에 설치된 소프트웨어, 설정 등을 포함한 전체 시스템의 상태를 압축된 파일 형태로 저장한 것. 백업 및 복구에 사용된다.- 디스크 이미지 : 물리적 디스크의 전체 내용을 그대로 복사한 파일. 원본 디스크의 구조, 데이터, 파일 시스템 등을 그대로 포함하고 있어 백업 및 복구에 사용된다. 도커 이미지 (Docker Image)컨테이너를 실행하기 위한 템플릿- 실행할 애플리케이션의 코드, 그 코드가 의존하는 라이브러리, 환경 변수, 실행 명.. 2023. 1. 10. [개요] 컨테이너 개념 / 설치(윈도우, 우분투) Docker 개념docker에 연관된 개념들을 알아보고 각 OS에 설치해본다. 가상화란?하드웨어 리소스(예: 프로세서, 메모리, 스토리지)를 여러 개의 독립적인 가상 환경으로 나누는 기술격리된 공간에서 프로세스가 동작하게 한다.효율적으로 리소스를 활용할 수 있게 되고 어플리케이션의 이식성이 좋아진다. 컨테이너란?가상화 기술 중 하나OS 커널 공유- 호스트와 동일한 운영체제 커널을 공유하고 시스템의 나머지 부분으로부터 애플리케이션 프로세스를 격리- 운영체제를 공유하기 때문에 설치용량도 적게 차지하고 실행속도도 높다일관성 있는 환경- 애플리케이션과 필요한 모든 의존성을 하나의 패키지로 묶어, 어느 환경에서든 일관성 있게 동작할 수 있도록 한다.리눅스 기반- 리눅스는 컨테이너 기술을 구현하기 위한 네임스페이.. 2023. 1. 10. [개요] 클라우드 보안 이론 / VirtualBox 실습 환경 구축 클라우드 보안 시작하기24/11/18~21에 진행된 클라우드 보안 강의에 대한 개요를 정리한다. 보안 관련 CS정보 보안- IT에서의 보안은 정보 보호(데이터 보호)를 의미- 데이터를 다루는 모든 과정(수집, 저장, 검색, 가공, 전송)에서 취약점을 식별해야함- 보통 네트워크에서 탈취하거나 저장된 스토리지에서 탈취함 >> 네트워크보안(통신), 인프라보안(암호화)이 최우선 되어야함정보 보안의 3요소 : CIA- 기밀성 (Confidentiality) : 인가된 사용자만 정보자산에 접근하는 것- 무결성 (Integrity) : 데이터가 악의적으로 변경되지 않는 것- 가용성 (Availability) : 인가된 사용자가 원하는 시간에 데이터에 접근 가능한것 DDos등의 공격으로 가용성이 침해당하면 큰 피.. 2023. 1. 10. [EC2] 실습 : 스트레스 상황 / Scale UP & OUT Scalability 실습 Scalability란?시스템, 네트워크, 프로세스 또는 애플리케이션이 증가하는 부하나 확장된 자원 요구사항에 따라 성능을 유지하거나 향상할 수 있는 능력클라우드 컴퓨팅(AWS의 EC2)은 가상화와 종량제로 Scalability를 효과적으로 구현할 수 있도록 한다종류- Scale Up (단일컴퓨터의 사양 높이는것)- Sale Down (단일컴퓨터의 사양을 낮추는것)- Scale Out (여러개의 컴퓨터가 협력해서 트래픽을 담당) 실습 : 수요 증가 스트레스 상황만들기시뮬레이션을 위해 서버역할과 유저역할의 인스턴스 총 2개를 생성한다서버역할 인스턴스 터미널에 top 입력>> 컴퓨터 자원 현황이 실시간으로 출력된다유저역할 인스턴스에서 부하발생기 ab 사용하기 :1. sudo a.. 2023. 1. 10. [gh] CLI를 통한 원격 저장소 제어 gh gh란?터미널에서 관리하는 GitHub- 깃헙 레파지토리 및 관련 기능을 터미널에서 직접 관리할 수 있게 한다- 브라우저를 사용할 수 없는 환경에서 특히 유용하다 (CICD에서 인터렉션 처리 등)설치방법(윈도우)winget install --id GitHub.cli * winget 첫 사용시 원본 사용 약관 동의 뜸(y선택)설치확인(설치후 IDE 재시작 해야함)gh --version 명령어 : 로그인 관련gh auth login- 로그인을 진행한다- 터미널 로그인 옵션 선택 : 1. 깃허브 사용 위치 : 일반 사용자는 Github.com을 선택한다 2. 프로토콜 선택 : 보안이 다소 약해도 설정이 단순한 HTTPS를 선택한다 3. git과 github 로그인을 통합할지 질문에는 개인적.. 2023. 1. 10. 이전 1 2 3 4 5 6 7 8 다음