정보처리기사 - 데이터 입출력 구현 #55~57
2023. 8. 19. 11:29ㆍ자격증/정보처리기사
55. 데이터베이스 보안
55.1 데이터베이스 보안
데이터베이스의 일부 또는 전체에 대해서 권한이 없는 사용자가 액세스하는 것을 금지하기 위해 사용되는 기술
- 보안을 위한 데이터 단위는 테이블 전체로부터 특정 테이블의 특정 행과 열에 있는 데이터 값에 이르기까지 다양함
55.2 암호화(Encryption)
데이터를 보낼 때 송신자가 지정한 수신자 이외에는 그 내용을 알 수 없도록 평문을 암호문으로 변환하는 것
- 암호화(Encryption) 과정 : 암호화되지 않은 평문을 암호문으로 바꾸는 과정
- 복호화(Decryption) 과정 : 암호문을 원래의 평문으로 바꾸는 과정
- 암호화 기법
- 개인키 암호 방식(Private Key Encryption)
- 공개키 암호 방식(Public Key Encryption)
55.3 접근통제
데이터가 저장된 객체와 이를 사용하려는 주체 사이의 정보 흐름을 제한하는 것
- 객체 : 테이블, 컬럼 등과 같은 데이터베이스 개체들을 의미
- 주체 : 일반적으로 객체를 사용하기 위해 접근을 시도하는 사용자를 의미
- 데이터베이스에 대한 사용자들의 접근을 통제함으로써 데이터를 보호하는 방법
- 접근통제 3요소
- 접근통제 정책
- 접근통제 매커니즘
- 접근통제 보안모델
55.3.1 접근통제 기술
정책 | 특징 |
---|---|
임의 접근통제 (DAC, Discretionary Access Control) |
- 데이터에 접근하는 사용자의 신원에 따라 접근 권한을 부여하는 방식 - 데이터 소유자가 접근통제 권한을 지정하고 제어 - 객체를 생성한 사용자가 생성된 객체에 대한 모든 권한을 부여받고, 부여된 권한을 다른 사용자에게 허가할 수도 있음 |
강제 접근통제 (MAC, Mandatory Access Control) |
- 주체와 객체의 등급을 비교하여 접근 권한을 부여하는 방식 - 시스템이 접근통제 권한을 지정 - 데이터베이스 객체별로 보안 등급을 부여할 수 있음 - 사용자별로 인가 등급을 부여할 수 있음 |
역할기반 접근통제 (RBAC, Role Based Access Control) |
- 사용자의 역할에 따라 접근 권한을 부여하는 방식 - 중앙 관리자가 접근통제 권한을 지정 - 임의 접근통제와 강제 접근통제의 단점을 보완 - 다중 프로그래밍 환경에 최적화된 방식 |
55.4 접근통제 정책
어떤 주체(Who)가 언제(When), 어디서(Where), 어떤 객체(What)에게, 어떤 행위(How)에 대한 허용 여부를 정의하는 것
- 접근통제 정책의 종류
종류 | 특징 |
---|---|
신분 기반 정책 | - 주체나 그룹의 신분에 근거하여 객체의 접근을 제한하는 방법으로, IBP와 GBP가 존재 - IBP(Individual-Based Policy) : 최소 권한 정책으로, 단일 주체에게 하나의 객체에 대한 허가를 부여 - GBP(Group-Based Policy) : 복수 주체에 하나의 객체에 대한 허가를 부여 |
규칙 기반 정책 | - 주체가 갖는 권한에 근거하여 객체의 접근을 제한하는 방법으로, MLP와 CBP가 존재 - MLP(Multi-Level Policy) : 사용자나 객체별로 지정된 기밀 분류에 따른 정책 - CBP(Compartment-Based Policy) : 집단별로 지정된 기밀 허가에 따른 정책 |
역할 기반 정책 | GBP의 변형된 정책으로, 주체의 신분이 아니라 주체가 맡은 역할에 근거하여 객체의 접근을 제한하는 방법 |
55.5 접근통제 매커니즘
정의된 접근통제 정책을 구현하는 기술적인 방법
- 접근통제 매커니즘에는 접근통제 목록, 능력 리스트, 보안 등급, 패스워드, 암호화 등이 존재
- 접근통제 목록(Access Control List) : 객체를 기준으로 특정 객체에 대해 어떤 주체가 어떤 행위를 할 수 있는지를 기록한 목록
- 능력 리스트(Capability List) : 주체를 기준으로 주체에게 허가된 자원 및 권한을 기록한 목록
55.6 접근통제 보안 모델
보안 정책을 구현하기 위한 정형화된 모델
- 접근통제 보안 모델의 종류
종류 | 특징 |
---|---|
기밀성 모델 | - 군사적인 목적으로 개발된 최초의 수학적 모델 - 기밀성 보장이 최우선 - 군대 시스템 등 특수 환경에서 주로 사용 |
무결성 모델 | 기밀성 모델에서 발생하는 불법적인 정보 변경을 방지하기 위해 무결성을 기반으로 개발된 모델 |
접근통제 모델 | - 접근통제 매커니즘을 보안 모델로 발전시킨 것 - 대표적으로 접근통제 행렬(Access Control Matrix)가 존재 - 접근통제 행렬 : 임의적인 접근통제를 관리하기 위한 보안 모델로, 행은 주체, 열은 객체, 즉 행과 열로 주체와 객체의 권한 유형을 나타냄 |
55.7 접근통제 조건
접근통제 매커니즘의 취약점을 보완하기 위해 접근통제 정책에 부가하여 적용할 수 있는 조건
종류 | 특징 |
---|---|
값 종속 통제 (Value-Dependent Control) |
일반적으로는 객체에 저장된 값에 상관없이 접근통제를 동일하게 허용하지만, 값 종속 통제는 객체에 저장된 값에 따라 다르게 접근통제를 허용해야 하는 경우에 사용 |
다중 사용자 통제 (Multi-User Control) |
지정된 객체에 다수의 사용자가 동시에 접근을 요구하는 경우에 사용 |
컨텍스트 기반 통제 (Context-Based Control) |
- 특정 시간, 네트워크 주소, 접근 경로, 인증 수준 등에 근거하여 접근을 제어하는 방법 - 다른 보안 정책과 결합하여 보안 시스템의 취약점을 보완할 때 사용 |
55.8 감사 추적
사용자나 애플리케이션이 데이터베이스에 접근하여 수행한 모든 활동을 기록하는 기능
- 오류가 발생한 데이터베이스를 복구하거나 부적절한 데이터 조작을 파악하기 위해 사용
56. 데이터베이스 백업
56.1 데이터베이스 백업
전산 장비의 장애에 대비하여 데이터베이스에 저장된 데이터를 보호하고 복구하기 위한 작업
- 치명적인 데이터 손실을 막기 위해서는 데이터베이스를 정기적으로 백업해야 함
56.2 로그 파일
데이터베이스의 처리 내용이나 이용 상황 등 상태 변화를 시간의 흐름에 따라 모두 기록한 파일
- 데이터베이스의 복구를 위해 필요한 가장 기본적인 자료
- 로그 파일을 기반으로 데이터베이스를 과거로 복귀(UNDO)시키거나 현재 상태로 재생(REDO)시켜 데이터베이스 상태를 일관성 있게 유지할 수 있음
- 로그 파일 기록 시점
- 트랜잭션 시작 지점
- Rollback 시점
- 데이터 입력, 수저 삭제 시점
56.3 데이터베이스 복구 알고리즘
종류 | 특징 |
---|---|
NO-UNDO/REDO | - 데이터베이스 버퍼의 내용을 비동기적으로 갱신한 경우의 복구 알고리즘 - NO-UNDO : 트랜잭션 완료 전에는 변경 내용이 데이터베이스에 기록되지 않으므로 취소할 필요가 없음 - REDO : 트랜잭션 완료 후 데이터베이스 버퍼에는 기록되어 있고, 저장매체에는 기록되지 않았으므로 트랜잭션 내용을 다시 실행해야 함 |
UNDO/NO-REDO | - 데이터베이스 버퍼의 내용을 동기적으로 갱신한 경우의 복구 알고리즘 - UNDO : 트랜잭션 완료 전에 시스템이 파손되었다면 변경된 내용을 취소 - NO-REDO : 트랜잭션 완료 전에 데이터베이스 버퍼 내용을 이미 저장 매채에 기록했으므로 트랜잭션 내용을 다시 실행할 필요가 없음 |
UNDO/REDO | - 데이터베이스 버퍼의 내용을 동기/비동기적으로 갱신한 경우의 복구 알고리즘 - 데이터베이스 기록 전에 트랜잭션이 완료될 수 있으므로 완료된 트랜잭션이 데이터베이스에 기록되지 못했다면 다시 실행해야 함 |
NO-UNDO/NO-REDO | - 데이터베이스 버퍼의 내용을 동기적으로 저장 매체에 기록하지만 데이터베이스와는 다른 영역에 기록한 경우의 복구 알고리즘 - NO-UNDO : 변경 내용은 데이터베이스와 다른 영역에 기록도어 있으므로 취소할 필요가 없음 - NO-REDO : 다른 영역에 이미 기록되어 있으므로 트랜잭션을 다시 실행할 필요가 없음 |
- 비동기적 갱신(Asynchronous I/O) : 트랜잭션이 완료된 내용을 일정 주기나 작업량에 따라 시간 차이를 두고 저장매체에 기록하는 것
- 동기적 갱신(Synchronous I/O) : 트랜잭션이 완료되기 전에 데이터베이스 버퍼 내용을 동시적으로 저장매체에 기록하는 것
56.4 백업 종류
복구 수준에 따라서 운영체제를 이용하는 물리 백업과 DBMS 유틸리티를 이용하는 논리 백업으로 나뉨
종류 | 특징 |
---|---|
물리 백업 | - 데이터베이스 파일을 백업하는 방법 - 백업 속도가 빠르고 작업이 단순하지만 문제 발생 시 원인 파악 및 문제 해결이 어려움 |
논리 백업 | - DB 내의 논리적 객체들을 백업하는 방법 - 복원 시 데이터 손상을 막고 문제 발생 시 원인 파악 및 해결이 수월하지만 백업/복원 시 시간이 많이 소요됨 |
57. 스토리지(Storage)
57.1 스토리지(Storage)
단일 디스크로 처리할 수 없는 대용량의 데이터를 저장하기 위해 서버와 저장장치를 연결하는 기술
- 스토리지의 종류
- DAS
- NAS
- SAN
57.2 DAS(Direct Attached Storage)
서버와 저장장치를 전용 케이블로 직접 연결하는 방식
- 일반 가정에서 컴퓨터에 외장하드를 연결하는 것이 여기에 해당
구분 | 내용 |
---|---|
장점 | - 저장장치를 직접 연결하므로 속도가 빠르고 설치 및 운영이 쉬움 - 초기 구축 비용 및 유지보수 비용이 저렴 |
단점 | - 직접 연결 방식이므로 다른 서버에서 접근할 수 없고 파일을 공유할 수 없음 - 확장성 및 유연성이 떨어짐 |
57.3 NAS(Network Attached Storage)
서버와 저장장치를 네트워크를 통해 연결하는 방식
- 별도의 파일 관리 기능이 있는 NAS Storage가 내장된 저장장치를 직접 관리
- Ethernat 스위치를 통해 다른 서버에서도 스토리지에 접근할 수 있어 파일 공유가 가능
- 장소에 구애받지 않고 저장장치에 쉽게 접근할 수 있음
- DAS에 비해 확장성 및 유연성이 우수
57.4 SAN(Storage Area Network)
DAS의 빠른 처리와 NAS의 파일 공유 장점을 혼합한 방식으로, 서버와 저장장치를 연결하는 전용 네트워크를 별도로 구성하는 방식
- 파이버 채널(FC) 스위치를 이용하여 네트워크를 구성
- 파이버 채널 스위치는 서버와 저장장치를 광케이블로 연결하므로 처리 속도가 빠름
- 서버들이 저장장치 및 파일을 공유할 수 있음
- 확장성, 유연성, 가용성이 뛰어남
'자격증 > 정보처리기사' 카테고리의 다른 글
정보처리기사 - 데이터 입출력 구현 #61~63 (0) | 2023.08.19 |
---|---|
정보처리기사 - 데이터 입출력 구현 #58~60 (0) | 2023.08.19 |
정보처리기사 - 데이터 입출력 구현 #50~54 (0) | 2023.08.19 |
정보처리기사 - 데이터 입출력 구현 #46~49 (0) | 2023.08.19 |
정보처리기사 - 데이터 입출력 구현 #44~45 (0) | 2023.08.19 |