본문 바로가기

전체 글83

운영체제 - 프로세스와 스레드 프로젝트 상태생성 상태(new)준비 상태(ready)지금 당장 cpu를 할당받아서 실행할 수 있는 싱태실행 상태(running)대기 상태(blocked)지금 당장 실행할 수 없는 상태(이벤트를 기다리고 있는 상태)주로 입출력 장치 사용을 요청했을 때 일어남입출력 작업이 완료됐을 때까지 대기상태임.종료 상태(terminated) [실습:리눅스 환경]$top > S (프로세스 상태)R (Running)실행 상태S (Sleeping)대기 상태W (Waiting)준비 상태S (Stopped)종료 상태Z (Zombie)프로세스 종료 후 자원이 반환되었지만 커널 영역에 프로세스가 남아있는 상태 프로세스의 계층적 구조 [ 실습 명령어 : pstree ]계층적 구조로 프로세스가 생성되는 원리 : fork-execfor.. 2025. 3. 10.
컴퓨터 구조 - 기본, 명령어 컴퓨터 구조란 무엇일까?모든 프로그램은 컴퓨터 부품이 실행한다. : 성능&용량&비용프로그램을 이루는 두 정보(0과 1로 이루어진 정보) : 명령어, 데이터명령어 : 컴퓨터를 동작시키는 실질적인 정보데이터 : 명령어의 대상(재료)컴퓨터 네 가지 핵심 부품CPU : 명령어 해석, 실행 담당하는 장치내부 구성 : 레지스터(저장장치, 여러개), ALU(계산기 회로), 제어 장치(명령어 해석, 제어 신호)메인 메모리 & 캐시 메모리 : 실행 중인 프로그램 저장하는 장치(전원이 꺼지면 삭제)주소보조기억장치 : 보관할 프로그램 저장하는 장치(전원이 꺼져도 저장 유지)HDD, SSD, ...입출력장치 : 컴퓨터 내외부와 정보를 주고받는 장치모니터, 키보드, 스피커, ... 명령어고급 언어로 작성된 소스 코드는 내부적으.. 2025. 3. 2.
HTTP Basic 인증 방식 HTTP Basic 구성인증 프로세스가 실패했을 때, 특정 비즈니스 로직을 수행하도록 구현하려면 어떻게 해야 할까?인증 과정에서 클라이언트로 반환하는 값의 일부를 설정하기 위해서는 어떻게 해야 할까?[SecurityFilterChain을 설정]HttpSecurity를 파라미터로 받음HttpSecurity의 httpBasic을 설정이 방식을 활용하면 인증 방식과 관련된 일부 구성을 설정할 수 있음 HttpSecurity기본 HTTP Basic 설정을 하기 위해서는 Customizer.withDefaults()를 사용하면 됨만약 realm 이라고 하는 인증 영역을 설정하고 싶은 경우에는 httpBasic의 속성을 활용하면 됨.        => 401 Unauthorized가 되게끔 API를 호출하면 Bas.. 2025. 1. 1.
PasswordEncoder 와 암호처리 PasswordEncoder 인터페이스PasswordEncoder 인터페이스를 통해 스프링 시큐리티에서 사용자 암호를 검증하는 방법을 알 수 있음인증 프로세스에서 암호가 유효한지 확인하는 과정을 거침암호에 대한 인코딩을 수행할 수 있음인터페이스에는 두 개의 메소드과 하나의 default 메소드가 정의되어 있음 encode(CharSequence rawPassword)주어진 암호의 해시를 제공암호화를 수행matches(CharSequence rawPassword, String encodedPassword)인코딩된 문자열이 원시 암호와 일치하는지 검증upgradeEncoding(CharSequence encodedPassword)기본적으로 false를 반환true를 반환하도록 메소드를 재정의하면 보안 향상을.. 2024. 12. 31.
UserDetails 사용자 관리를 위한 인터페이스 소개UserDetailsService와 UserDetailsManager 인터페이스를 이용하여 사용자 관리를 수행함(CRUD 기능)UserDetailsService는 사용자 이름으로 사용자를 검색함(Read)UserDetailsManager는 사용자 추가, 수정, 삭제 작업을 수행함(Create, Update, Delete)두 인터페이스의 분리는 5대 객체 지향 프로그래밍 원칙(SOLID) 중 I에 해당하는 Interface Segregation Principle에 해당함인터페이스 분리 원칙 : 사용하지 않는 인터페이스에 강제로 의존해서는 안됨따라서, read와 write 관련 인터페이스를 분리햐두었기 때문에 프레임워크의 유연성이 향상됨사용자를 인증하는 기능한 필요하면 Us.. 2024. 12. 31.
Spring Security 기본 구성 - 전반적인 스프링 시큐리티의 아키텍처에 대해 알아보고 커스텀하게 사용해보자!- 인증 프로세스를 구현하기 위해 스프링 시큐리티는 여러 컴포넌트로 구성되어 있음(인증 필터, 인증 관리자, 인증 공급자, 암호 인코더, 사용자 세부 정보 서비스, 보안 컨텍스트) 스프링 시큐리티 아키텍쳐(1) 큰 관점에서는 클라이언트는 요청을 서버로 전달함(2) 인증필터가 요청을 가로챔(intercept)인증 필터는 인증 요청을 가로채 인증 관리자에게 위임(3) 인증 관리자는 인증 논리를 구현하는 인증 공급자를 이용하여 인증을 처리(4) 인증 공급자는 사용자 관리 책임을 구현하는 사용자 세부 정보 서비스를 인증 논리에 이용함 ( 사용자 검증 )인증 공급자는 암호 관리를 구현하는 암호 인코더를 인증 논리에 이용 (비밀번호 검증).. 2024. 12. 29.