자격증/정보처리기사

[정보처리기사] 데이터베이스 보안

IT록흐 2021. 10. 4. 10:27
반응형

▷ 데이터베이스 보안

 

권한이 없는 사용자가 액세스하는 것을 금지하기 위해 사용되는 기술

보안은 테이블의 특정 행부터 값에도 적용할 수 있다.

 

1. 암호화(Encryption)

 

평문을 암호문으로 변환하는 것

 

암호화 과정(Encryption) : 암호화 되지 않은 평문을 암호문으로 바꾸는 과정

복호화 과정(Decryption) : 암호문을 원래 평문으로 바꾸는 과정

 

암호화 기법

- 개인키 암호 방식

- 공유키 암호 방식

 

2. 접근통제

 

데이터를 사용하려는 주체와 데이터가 저장된 객체 사이의 정보의 흐름을 제한하는 것

 

- 접근통제 기술

 

임의 접근 통제(DAC, Discreationary Access Control) : 주체의 신원에 따라 접근 권한을 부여, 객체 생성자(데이터 소유주)가 모든 권한을 부여받고 다른 사람에게 권한 부여도 가능 

 

강제 접근 통제(MAC, Mandatory Access Control) : 주체와 객체의 등급을 비교하여 접근 권한을 부여하는 방식

객체별로 보안등급, 주체별로 인가등급을 부여, 시스템이 접근통제 권한을 가짐

 

역할 기반 통제(RBAC, Role Based Access Control) : 사용자의 역할에 따라 접근 권한을 부여, 임의와 강제 통제 방식의 단점을 보완하고 다중 프로그래밍 환경에 최적화된 방식

 

- 접근통제 정책

 

어떤 주체(WHO)가 언제(WHEN), 어디서(WHERE), 어떤 객체(WHAT)에게, 어떤 행위(HOW)에 대한 허용 여부를 정의

 

신분 기반 정책 : 주체의 신분에 근거하여 객체 접근 제한

1) IBP(Individual-Based Policy) : 최소 권한 정책, 단일 주체에게 하나의 객체에 대한 허가

2) GBP(Group-Based Policy) : 복수 주체(그룹)에 하나의 객체에 대한 허가

 

규칙 기반 정책 : 주체가 갖는 권한에 근거하여 객체의 접근을 제한하는 방법

1) MLP(Multi - Level Policy) : 사용자나 객체별로 지정된 기밀 분류(규칙)에 따른 정책

2) CBP(Compartment-Based Policy) : 집단별로 지정된 기밀 허가(규칙)에 따른 정책

 

역할 기반 정책 : GBP의 변형된 정책, 신분이 아닌 주체의 역할에 근거하여 객체에 접근을 제한하는 방법

 

- 접근 통제 매커니즘

 

정의된 접근통제 정책을 구현하는 기술적인 방법

*접근통제 목록(Access Control List) : 특정 객체(WHAT)에 대해 어떤 주체(WHO)가 어떤 행위(HOW)를 할 수 있는지 기록하는 문서

*능력리스트(Capability List) : 주체를 기준으로 주체에 허가된 자원 및 권한을 기록한 목록

 

- 접근통제 보안 모델

 

보안 정책 구현을 위한 정형화된 모델

 

기밀성 모델 : 기밀성 보장이 최우선, 군사적인 목적으로 개발된 최초의 수학적 모델

무결성 모델 : 기밀성 모델에서 발생하는 불법적인 정보 변경을 방지하기 위한 무결성 기반 모델

접근통제 모델 : 접근통제 매커니즘을 보안모델로 발전

ex)접근통제 행렬(Access Control Matrix) : 임의적인 접근통제를 관리하기 위한 보안 모델, 행은 주체, 열은 객체, 행과 열로 주체와 객체의 권한을 유형으로 나타냄

 

- 접근통제 조건

 

접근 통제 매커니즘의 취약점을 보완하기 위한 부가적인 적용 조건

 

값 종속 통제(Value-Dependent Control) : 객체에 저장된 값에 따라 다르게 접근통제를 허용

다중 사용자 통제(Multi-User Control) : 다수의 사용자가 특정 객체에 동시에 접근을 요구하는 경우

컨텍스트 기반 통제 (Context-Based Control) : 특정 시간, 네트워크 주소, 접근 경로, 인증 수준에 근거하여 접근을 제어하는 방법

 

-감사 추적

 

사용자나 애플리케이션이 데이터베이스에 접근하여 수행한 모든 활동을 기록하는 기능, 기록을 통해 복구 및 부적절한 데이터 조작 정황 포착에 사용됨

 

 

 데이터베이스 백업

 

전산 장비의 장애에 대비하여 데이터베이스에 저장된 데이터를 보호하고 복구하기 위한 작업

 

로그 파일

 

데이터베이스의 상태변화를 시간의 흐름에 따라 모두 기록한 파일

로그파일을 기반으로 과거 상태로 UNDO(복귀)하거나 현재 상태로(REDO)시켜 데이터베이스 상태를 일관성있게 유지할 수 있다.

 

데이터베이스 버퍼 -> 데이터베이스 저장장치

 

UNDO : 저장장치에 저장된 작업자가 한 DO를 없애는 것

REDO : 저장장치에 저장된 작업자가 한 DO를 다시 하는 것

 

데이터베이스 복구 알고리즘

 

NO-UNDO/REDO : 데이터베이스 버퍼의 내용을 비동기적으로 갱신한 경우 복구 알고리즘

* 비동기적 갱신 ( Asynchronous I/O ) : 트랜잭션이 완료된 내용을 일정 주기나 작업량에 따라 시간차이를 두고 저장매체에 기록

 

- NO-UNDO : 트랜잭션이 완료되기 전에는 변경내용이 데이터베이스에 기록되지 않았으므로 취소할 필요없음 

- REDO : 트랜잭션 완료 후 데이터베이스 버퍼에 기록되지만 저장매체에 기록되지 않았으므로 장애 발생시 REDO하여 저장매체에 저장해야 함.

 

UNDO/ NO-REDO : 데이터베이스 버퍼의 내용을 동기적으로 갱신한 경우 복구 알고리즘

 

* 동기적 갱신 (Synchronous I/O ) : 트랜잭션이 완료되기 전에 데이터베이스 버퍼 내용을 동시적으로 저장매체에 기록

 

- UNDO : 트랜 잭션이 완료 전에 시스템이 파손되었다면 변경된 내용을 취소함 (동시에 진행되기 때문에 )

- NO-REDO :  버퍼 내용을 이미 저장매체에 기록했으므로 다시 할 필요 없음

 

UNDO/REDO : 동기/ 비동기적으로 갱신한 경우

 

NO-UNDO/NO-REDO : 버퍼 내용을 동기적으로 저장매체에 기록하지만 데이터베이스와는 다른 영역에 기록한 경우

- NO-UNDO : 다른 영역이므로 UNDO 할 필요 X

- NO-REDO : 다른 영역에 기록했으므로 REDO 할 필요 X

 

 

백업 종류

 

물리백업 : 데이터베이스 파일을 백업하는 방법

논리백업 : DB내 논리적인 객체들을 백업하는 방법

 

 


 

 

참고자료

 

2021 시나공 정보처리기사 실기

수험생들의 궁금증을 100% 반영시험에 나올만한 내용만 구성시나공 정보처리기사 실기는 NCS 학습 모듈을 가이드 삼아 자세한 설명과 충분한 예제를 더한 후 교재에 수록된 문제나 이론은 하나도

book.naver.com

 

 

 

 

 

반응형