IAM ( AWS )
·
☁️ AWS
AWS Identity and Access Management( IAM )은 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다 쉽게말해 AWS 서비스를 이용하기 위해 하나의 계정에 여러개의 하위 계정을 만들수 있게 해주는 서비스 입니다. Root 계정은 모든 권한이 열려있기 때문에 이를 공유하여 같이 사용하면 사용자들 간의 작업 범위를 제한하기 힘들어집니다. IAM > 사용자 그룹 으로 들어가면 아래와 같은 화면이 나옵니다. Root 계정에 포함된 사용자들의 그룹을 만들기 위한 화면입니다. 그룹 생성을 클릭하면 아래처럼 그룹을 생성할 수 있는 화면이 나옵니다. 그룹에 사용자 추가 섹션을 보면 미리 만들어둔 사용자를 추가할 수 있는 UI가 있습니다. 사용자를 미리 만들어 두었다면 여기..
운영체제
·
💻 Computer Science
운영체제에 대해 학습한 내용을 정리한 글입니다. 운영체제(OS, Operating System)는 컴퓨터 하드웨어와 사용자 간의 인터페이스로 기능하는 소프트웨어입니다. 컴퓨터 시스템의 가장 기본적인 소프트웨어로서, 시스템 리소스 관리, 파일 관리, 사용자 인터페이스 제공, 그리고 응용 프로그램을 실행하는 데 필요한 기본적인 서비스를 제공합니다. 운영체제의 기능과 역할 리소스 관리: 운영체제의 가장 중요한 기능 중 하나는 컴퓨터 리소스(하드웨어)의 관리입니다. 이는 CPU, 메모리, 디스크 공간, 프린터 등의 자원을 효율적으로 할당하고 관리합니다. 파일 시스템 관리: 운영체제는 파일 시스템을 통해 데이터를 저장하고 접근합니다. 사용자와 프로그램이 파일을 쉽게 저장, 찾기, 이동, 복사할 수 있도록 관리합니..
Spring
·
💻 Computer Science
Spring 이란 JAVA 어플리케이션을 개발하기 위한 프로그래밍 구성과, 모듈을 제공하는 광범위하고 "포괄적인 생태계" 입니다. Spring과 Spring framwork에 대해 그동안 혼동하고 있었습니다. 생각해보면 Spring 에는 Spring framwork, Spring Security, Spring Boot 등 여러 요소가 포함되어있습니다. 편의를 위해 Spring 이라고 칭하고 있지만 개념에 대해 정리하고 가려 합니다. Spring framwork JAVA 어플리케이션을 개발하기 위한 core 기능들의 집합체 라고 보면 될 것 같습니다. Spring boot Spring framework의 복잡한 설정을 쉽게 할 수 있도록 도움을 주는 개발 스타터팩 입니다. Spring security Sp..
Call By Value & Call By Reference
·
💻 Computer Science
함수가 인자로 받은 값을 처리하는 매커니즘에 관한 개념 입니다. Call By Value 함수가 특정 자료형의 인자로 받은 값을 복사 해서 처리하는 방식입니다. 기본 자료형: Boolean Type, Numberic Type 참조 자료형: Class Type, Array Type 등 기본 자료형 이외의 자료형 기본 자료형은 대부분의 프로그래밍 언어에서 아래와 같이 Call By Value로 처리됩니다. plus라는 메서드 ( 함수 ) 에서 num 이라는 인자에 9를 더해도 원본 값은 1로 변함이 없는 모습을 보입니다. public class main { public static void main(String[] args) { int num = 1; System.out.prinfln(plus(num)); ..
가상 자산의 프리미엄
·
🔍 Sector Insights/Finance
가상 자산에서 "프리미엄이 붙었다" 라는 말은 특정 거래소의 가상자산의 가격이 다른 거래소의 가격보다 비싼 상황을 설명할 때 주로 사용하는 말입니다. 예를들어 국내 가상자산 거래소 A에 비트코인이 1억 이라고 가정하고, 해외 거래소에서는 비트코인이 70000 달러라고 가정하겠습니다. 해외 거래소 가격을 환율을 고려하여 원화로 환산해보면 91,000,000 입니다. 대략 9,000,000 정도 차이나는 상황입니다. 이때 한국 거래소에서 프리미엄이 붙었기 때문에 가상자산 투자자들은 이를 "김치 프리미엄이 붙었다" 라고 말합니다. 이런 상황이 왜 생기는가? 국내의 높은 수요 폐쇄적인 외국인 정책 이외에 원/달러 환율 등 고려할 요소가 많지만 대표적인 원인은 위 두가지 정도입니다. 국내의 높은수요 국내에서 암호..
Core Banking
·
🔍 Sector Insights/Finance
코어뱅킹과 금융에 대해 공부하며 작성한 글입니다. 코어뱅킹이란? 금융 거래의 핵심 부분을 관리하고 처리하기 위한 아키텍처 혹은 시스템을 의미합니다. 현대의 은행 시스템 현대시대의 은행 시스템은 채널계와 코어뱅킹 ( 계정계 )로 이루어져 있습니다. 채널계는 고객들의 트래픽을 처리하고 코어뱅킹에 전달하는 역할이고, 코어뱅킹은 핵심적인 비즈니스 로직처리하는 역할 입니다. 여기서 코어뱅크는 대부분 은행에서 몸집이 거대한 모놀리식 아키텍처로 이루어져 있습니다. 모놀리식 아키텍처는 하나의 코드 베이스를 사용하여 여러 비즈니스 기능을 수행하는 전통적인 소프트웨어 개발 모델 잠시 모놀리식 아키텍처에 대해 설명하고 넘어가도록 하겠습니다 모놀리식 아키텍처 서비스 혹은 애플리케이션이 하나의 거대한 아키텍처를 가질 때 이를 ..
데이터 구조
·
🗃️ Database
DB를 설계하고 부하에 대해 고민한 내용을 정리한 글입니다. https://www.voxels.com/play In-world | Voxels Visit this Voxels Parcel! www.voxels.com 위 링크는 온라인 기반의 건축 게임 사이트의 링크 입니다. 마인크래프트 같은 형태로 블록들을 배치하고 디자인 하는 게임입니다. 위 게임을 둘러보던 중 궁금한 점이 생겼습니다. 게임내 월드에는 수많은 블록들이 있을 텐데 이를 데이터베이스에 어떻게 저장하고 있을까 하는 궁금증 이였습니다. 관계형 데이터베이스 블록하나를 하나의 ROW로 처리 우선 흔히들 사용하는 관계형 데이터베이스의 입장에서 생각 해봤습니다. 생성한 블록 하나당 하나의 Row를 가지고, 해당 블록의 xyz 위치를 기록하는 형태입니..
Spring Security + JWT
·
⚙️ BE
Security와 JWT를 연동하고, Global Exception을 처리하며 학습했던 내용을 정리한 글입니다. Spring Security Spring Security는 Spring 기반의 애플리케이션의 보안(인증과 권한, 인가 등)을 담당하는 스프링 하위 프레임워크입니다. '인증'과 '권한'을 Filter 라는 것으로 처리합니다. 단어의 뜻 그대로 필터링 한다고 생각하면 좋을 것 같습니다. Security with JWT Spring Security 에서는 Session 방식 뿐만 아니라 JWT도 지원합니다. 기존 5.7 미만 버전에서는 WebSecurityConfigurerAdapter 를 상속받아서 사용했는데 deprecated 되었습니다. 이후 버전 부터는 아래 방식 처럼 사용합니다. @Conf..
구독기반 비즈니스 모델
·
🔍 Sector Insights/Dev
구독기반 비즈니스 모델에 대해 개인적인 생각과 학습 내용을 정리한 글 입니다. 구독기반 비즈니스 모델은 정기적으로 사용자에게 요금을 청구하는 비즈니스 모델입니다. 넷플릭스 같은 OTT 서비스를 예로 들 수 있습니다. 베이직, 스탠다드, 프리미엄 과 같이 등급을 나누고 등급별 가격 차등을 두어 구독하게 하는 모습입니다. 장점 사용자입장 사용자 입장에서는 서비스가 마음에들지 않으면 언제든 구독을 취소할 수 있습니다. 손쉬운 구독해지로 인해 마음에 안들면 다른 플랫폼으로 갈아타기가 쉽습니다. 매번 결제 기간을 신경쓰지 않아도 자동으로 결제가 되서 편리합니다. 서비스 제공자 입장 3달결제, 1년결제 등 이런방식은 해당 기간내에는 확실한 수입이 보장되지만 기간이 끝나면 사람들이 까먹거나 이탈하는 경우가 있습니다...
SaaS 에서 권한 처리
·
🔍 Sector Insights/Dev
SaaS 에서 권한 처리 SaaS 관련하여 공부하며 느낀점과 생각을 정리한 글입니다. SaaS(Software as a Service)는 클라우드 기반의 소프트웨어 제공 모델입니다. 재고관리 솔루션, 인사관리 솔루션 등 고객에게 소프트웨어로 서비스를 제공하는 사업 운영 방식을 말합니다. 이는 이전에 쓴 멀티테넌시 모델과도 직접적으로 관련이 있는 주제입니다. 하나의 소프트 웨어를 함께 사용 SaaS 에서는 하나의 기반 소프트웨어를 여러 고객들이 같이 사용합니다. 각 사용자들이 사용할 데이터는 여러가지 방법으로 나누어 관리합니다. 특정 사용자 혹은 업체에 관리 소프트웨어를 직접 맞춤형으로 제작 해주는 모습이랑은 조금 다른 모습입니다. SaaS 에서도 고객 맞춤형으로 서비스를 제공할 수는 있지만 관리가 어려워..
멀티테넌시 모델
·
🔍 Sector Insights/Dev
멀티네넌시 모델 ( Multi Tenancy Model) 테이블을 설계하던 중 고민해본 내용을 정리한 글입니다. ERP 솔루션 서비스를 기획하고 테이블을 설계하던 중 아래와 같은 고민거리가 생겼습니다. 기획중인 내용 중 "각 고객별로 맞춤화된 환경을 제공합니다" 라는 내용이 있는데 이게 가능할지 의문이 들었습니다. 고객별 맞춤화된 환경을 제공한다는 말에 의미는 아래와 같습니다. [ 예) "발주목록" ] 과 같은 기본으로 제공하는 테이블에 컬럼을 추가하거나 컬럼을 삭제할 수 있습니다. 솔루션을 사용하는 유저들의 권한 ( 사내 직원들의 세부 권한 ) 을 설정할 수 있습니다. 예를들어 기본 제공하는 3단계의 권한 이외에 세부적인 권한을 추가할 수 있습니다. 이러한 문제상황을 어떤식으로 처리할지 고민이 생겼습니..