[AWS] MFA(Multi-Factor Authentication)로 보안 강화하기
·
Cloud/AWS
MFA(Multi-Factor Authentication, 다중 인증)란?MFA(Multi-Factor Authentication)는 사용자에게 암호 이외의 추가 정보를 입력하도록 요구하는 다중 단계 계정 로그인 과정으로, AWS 계정의 보안을 강화하는 중요한 도구이다.  - 루트 계정과 IAM 사용자를 보호하는 방법비밀번호기본적인 보호 수단으로, 비밀번호 정책을 설정하여 최소 길이, 문자 조합 등을 요구할 수 있다. IAM 사용자들이 비밀번호를 변경하거나 변경하지 못하도록 설정할 수 있고, 일정 시간이 지나면 비밀번호를 변경하도록 설정할 수 있다. MFA비밀번호 외에 추가적인 인증 장치를 사용하여 보안을 강화한다. 비밀번호와 사용자의 모바일 장치에서 생성된 일회용 코드를 사용하여 로그인할 수 있다.MF..
[AWS] AWS IAM 이해하기: 사용자 관리, 정책 설정, IAM Role, 보안 도구
·
Cloud/AWS
1. IAM(Identity and Access Management)이란?IAM에서는 사용자를 생성하고 그룹에 배치하여 관리하는 글로벌 서비스이다. 처음 AWS 계정 생성할 때 생성되는 루트 계정 또한 IAM을 사용한 것이다.그러나 보안 상의 이유로, 루트 계정은 계정을 생성할 때만 사용하고 이후에는 IAM에서 사용자를 생성하여 사용하는 것이 좋다.  IAM에서는 개별 사용자를 생성하고, 그룹으로 묶어 관리할 수 있다.사용자는 한 개 이상의 그룹에 속할 수 있다.ex. A, B, C는 개발자 그룹, D, E는 운영자 그룹, F는 그룹에 속하지 않는 사용자가 될 수 있다.      C, E는 감사팀 그룹으로 묶일 수 있다.단, 그룹에는 오직 사용자만 속할 수 있다. (그룹 안에 그룹을 포함할 수 없다. )..
[AWS] AWS 글로벌 인프라: 리전, 가용 영역, 엣지 로케이션
·
Cloud/AWS
글로벌 서비스를 제공하는 AWSAWS는 전 세계에 여러 리전을 통해 글로벌 서비스를 제공한다. 각각의 리전은 AWS의 사설 네트워크를 통해 연결되어 있으며, 각 리전 내에 가용 영역이 존재한다.   AWS 리전 (Regions)리전은 여러 데이터 센터의 집합으로 구성되어 있다. (ex. 오하이오, 싱가포르, 시드니, 도쿄 등)리전을 선택하는 방법은 상황에 따라 다르지만, AWS 리전 선택에 영향을 미치는 요인들이 있다.  AWS 리전 선택에 영향을 미치는 요인법률 준수데이터 저장 및 처리에 대한 규제는 국가마다 다르다. 특정 국가에서는 데이터를 해당 국가 내에서만 저장하도록 요구할 수 있다.지연 시간대부분의 사용자가 미국에 있는 경우, 애플리케이션도 사용자와 가까이 있도록(지연 시간이 줄어들도록) 미국에..
[AWS] AWS EC2 기본 배포하기(2)
·
Cloud
[AWS] AWS EC2 기본 배포하기(1)0. EC2 서버 생성AWS에서 EC2 서버를 생성하고 탄력적 IP까지 연결해 주었다고 가정하고 진행하겠다.   1. 로컬에서 Github로 프로젝트 업로드배포하고자 하는 프로젝트를 Github에 업로드한다.   2.allyouredreaminof.tistory.com  1. nohub으로 백그라운드 실행빌드를 하면 실제로 실행할 jar 파일과 plain.jar 파일 총 2개의 파일이 생성된다. plain.jar 파일은 프로젝트가 의존하는 라이브러리를 포함하지 않고, 작성한 코드의 클래스 파일과 리소스 파일만을 포함한다. 따라서 build.gradle에 아래 코드를 추가하여 plain.jar 파일이 생성되지 않도록 하면,  java -jar *.jar 명령어를 ..
[AWS] AWS EC2 기본 배포하기(1)
·
Cloud
0. EC2 서버 생성AWS에서 EC2 서버를 생성하고 탄력적 IP까지 연결해 주었다고 가정하고 진행하겠다.   1. 로컬에서 Github로 프로젝트 업로드배포하고자 하는 프로젝트를 Github에 업로드한다.   2. EC2에서 Github 프로젝트 다운로드git clone [깃허브 리포 주소]  3. 프로젝트 테스트 및 빌드3-1. gradlew에 실행 권한 부여gradlew는 프로젝트를 빌드해주는 실행파일이다. gradle은 빌드 자동화 시스템이다.   (변경 전)ls -l 명령어로 gradlew의 권한을 확인한다.-rw-rw-r-- 로, 실행 권한(x)가 부여되어 있지 않다.  (변경 후)gradlew에 실행 권한을 부여하면, 다음과 같이 글자 색이 초록색으로 변한다. chmod u+x gradle..
Spring Security - 비밀번호 암호화하기
·
BackEnd/spring
1. Spring Security 의존성 추가- build.gradledependencies { implementation 'org.springframework.boot:spring-boot-starter-security'}   2. Config 설정- Security.java@Configurationpublic class SecurityConfig { @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); }}   3. 암호화 방법dto로 회원 정보를 받았고, SignUpDto에 password를 포함한 다른 회원 관련 필드가 정의되어있다고 가정하면 passwordEncoder...
[python] 입력 여러 개 받기
·
Python
- 기본 input() 사용법input()은 한 줄의 문자열을 입력받도록 해준다. # 문자열 입력받기str = input()str = input("문자열을 입력해주세요: ") # 메시지는 생략 가능하다.  - 숫자 입력받기입력받은 데이터를 정수형 데이터로 처리하려면 형변환이 필요하다. # 숫자 입력받기num = int(input())num = int(input("숫자를 입력해주세요: "))  - 여러 개의 값을 각각의 변수에 저장하기(공백으로 구분)# 문자열로a, b = input().split()# 정수형으로a, b = map(int, input().split())# 실수형으로a, b = map(float, input().split())   - 여러 개의 값을 하나의 변수에 리스트로 저장하기(1차원 정..
IntelliJ에서 yml 파일 관리하기: .gitignore와 환경변수
·
BackEnd/spring
application.yml에서 DB의 비밀번호, AWS 관련 정보와 같은 중요한 정보가 포함된다. 이 설정 파일을 그대로 깃허브에 올리면 중요한 설정 정보가 외부로 유출되는 위험이 있다.중요하고 민감한 정보가 유출되지 않도록 하는 두 가지 방법을 소개하고자 한다.  1. yml 파일을 추적하지 않도록 .gitignore 설정하기    -> .gitignore 파일에 코드 한 줄만 추가해주면 된다.       yml을 추적하지 않게 되어 .yml로 끝나는 모든 파일은 git push 해도 깃허브에 올라가지 않는다. .yml    2. IntelliJ에서 환경변수 사용하기1) Edit Configurations에 들어간다.    2) Environment variables가 화면에 보이지 않는다면 Modi..
Spring Boot에서 JSP 사용하기
·
BackEnd/spring
spring boot는 default로 thymleaf를 제공하기 때문에 jsp를 사용하려면 별도의 설정이 필요하다. 1. dependancy 설정// spring boot 3.0 버전 이상인 경우implementation 'jakarta.servlet.jsp.jstl:jakarta.servlet.jsp.jstl-api' implementation 'org.glassfish.web:jakarta.servlet.jsp.jstl' implementation 'org.apache.tomcat.embed:tomcat-embed-jasper' 2. application.yml 설정spring: mvc: view: prefix: /WEB-INF/views/ suffix: .jsp static-path-pattern..
[백준/Java] 1253번 - 좋다
·
코딩 테스트/백준
문제 N개의 수 중에서 어떤 수가 다른 수 두 개의 합으로 나타낼 수 있다면 그 수를 “좋다(GOOD)”고 한다. N개의 수가 주어지면 그 중에서 좋은 수의 개수는 몇 개인지 출력하라. 수의 위치가 다르면 값이 같아도 다른 수이다. 입력 첫째 줄에는 수의 개수 N(1 ≤ N ≤ 2,000), 두 번째 줄에는 i번째 수를 나타내는 Ai가 N개 주어진다. (|Ai| ≤ 1,000,000,000, Ai는 정수) 출력 좋은 수의 개수를 첫 번째 줄에 출력한다. - 문제 풀이 방법https://allyouredreaminof.tistory.com/57 [백준/Java] 1940번 - 주몽문제 주몽은 철기군을 양성하기 위한 프로젝트에 나섰다. 그래서 야철대장을 통해 철기군이 입을 갑옷을 만들게 하였다. 야철대장은 ..
yslle
allyouredreaminof