[정처기 필기] 「3」 | 물리 데이터베이스 설계 - (2.4) 데이터베이스 보안 (접근통제)
「1」 소프트웨어 설계
「2」 소프트웨어 개발
> 「3」 데이터베이스 구축
- 논리 데이터베이스 설계, > 물리 데이터베이스 설계, SQL 응용, SQL 활용, 데이터 전환
「4」 프로그래밍 언어 활용
「5」 정보시스템 구축 관리
1 트랜잭션 분석 / CRUD 분석
2 인덱스 설계
3 뷰(View) 설계
4 파티션 설계
5 분산 데이터베이스 설계
6 데이터베이스 보안 / 암호화
> 7 데이터베이스 보안 - 접근통제
8 데이터베이스 백업
9 스토리지
7. 데이터베이스 보안 - 접근통제
접근통제
데이터가 저장된 객체와 이를 사용하려는 주제 사이 정보 흐름을 제한하는 것
- 자원의 불법적인 접근 / 파괴를 예방
: 비인가된 사용자 접근 감시
: 접근 요구자의 사용자 식별
: 접근 요구의 정당성 확인 / 기록
: 보안 정책에 근거한 접근의 승인 / 거부
접근통제 기술의 종류
임의 접근통제(DAC; Discretionary Access Control)
: 데이터에 접근하는 사용자 신원에 따라 접근 권한을 부여
: 데이터 소유자가 접근통제 권한 지정, 제어
: 객체를 생성한 사용자가 모든 권한 부여받고, 다른 사용자에게 허가도 할 수 있음
: SQL 명령어에는 GRANT, REVOKE
강제 접근통제(MAC; Mandatory Access Control)
: 주체와 객체의 등급 비교하여 접근 권한 부여
: 시스템이 접근통제 권한 지정
: 데이터베이스 객체별로 보안 등급 부여, 사용자별로 인가 등급 부여
: 주체는 자신보다 보안 등급이 높은 객체에 대해 읽기, 수정, 등록 불가, 보안 등급이 같은 객체에 대해 읽기, 수정, 등록 가능, 보안 등급이 낮은 객체에 대해 읽기만 가능
역할기반 접근통제(RBAC;Role Based Access Control)
: 사용자의 역할에 따라 접근 권한 부여
: 중앙관리자가 접근통제 권한 지정
: 다중 프로그래밍 환경에 적합
: 중앙관리자가 역할마다 권한 부여하면, 역할을 할당받은 사용자들은 해당하는 권한 사용
>강제 접근통제(MAC)의 보안 모델<
벨 라파둘라 모델(Bell-LaPadula Model)
: 군대의 보안 레벨처럼 정보의 기밀성에 따라 상하 관계가 구분된 정보를 보호하기 위해 사용
: 보안 취급자 등급을 기준으로 읽기, 쓰기 제한
: 자신의 보안 레벨 이상의 문서 작성 가능, 보안 레벨 이하의 문서 읽기 가능
ex) 자신의 보안 레벨 2급 : 2, 3급 읽기 가능, 1, 2급 작성 가능
비바 무결성 모델(Biba Integrity Model)
: 벨 라파듈라 모델을 보완한 수학적 모델, 무결성 보장하는 최초의 모델
: 비인가자에 의한 데이터 변형 방지
클락-윌슨 무결성 모델(Clark-Wilson Integrity)
: 무결성 중심의 상업용 모델, 사용자가 직접 객체에 접근할 수 없고, 프로그램에 의해 접근 가능
만리장성 모델(Chinese Wall Model)
: 서로 이해 충돌 관계에 있는 객체 간의 정보 접근을 통제하는 모델
- 접근통제 3요소 : 접근통제 정책, 접근통제 메커니즘,접근통제 보안모델
접근통제 정책
어떤 주체가, 언제, 어디서, 어떤 객체에게, 어떤 행위에 대한 허용 여부 정의
신분 기반 정책
: 주체나 그룹 신분에 근거하여 객체의 접근 제한
: IBP(Individual-Based Policy) - 최소 권한 정책, 단일 주체에게 하나의 객체에 대한 허가 부여
: GBP(Group-Based Policy) - 복수 주체에게 하나의 객체에 대한 허가 부여
규칙 기반 정책
: 주체가 갖는 권한에 근거하여 객체의 접근 제한
: MLP(Multi-Level Policy) - 사용자 및 객체별로 지정된 기밀 분류에 따른 정책
: CBP(Compartment-Based Policy) : 집단별로 지정된 기밀 허가에 따른 정책
역할 기반 정책
: GBP의 변형된 정책, 주체가 맡은 역할에 근거하여 객체의 접근 제한
접근통제 메커니즘
정의된 접근통제 정책을 구현하는 기술적인 방법
접근통제 목록(Access Control List)
: 객체를 기준으로 특정 객체에 대해 어떤 주체가 어떤 행위를 할 수 있는지 기록한 목록
능력 리스트(Capability List)
: 주체를 기준으로 주체에게 허가된 자원 / 권한을 기록한 목록
보안 등급(Security Level)
: 주체나 객체에 부여된 보안 속성의 집합, 등급을 기반으로 접근 승인 여부가 결정
패스워드
: 주체가 자신임을 증명할 때 사용하는 인증 방법
암호화
: 지정된 수신자 외에는 내용을 알 수 없도록 평문을 암호문으로 변환, 무단 도용 방지
접근통제 보안 모델
보안 정책을 구현하기 위한 정형화된 모델
기밀성 모델
: 군사적 목적으로 개발된 최초의 수학적 모델, 기밀성 보장이 최우선, 특수 환경에서 주로 사용, 인가된 사용자만 접근
: 제약 조건
- 단순 보안 규칙 : 주체는 자신보다 높은 등급의 객체 읽기 불가
ex) 자신의 보안 레벨 2급 : 1급 읽기 가능, 2급 읽기 가능, 3급 읽기 불가
- 스타 보안 규칙 : 주체는 자신보다 낮은 등급의 객체 작성 불가
ex) 자신의 보안 레벨 2급 : 1급 작성 불가, 2급 작성 가능, 3급 작성 가능
- 강한 스타 보안 규칙 : 주체는 자신과 등급이 다른 객체 읽기, 작성 불가
ex) 자신의 보안 레벨 2급 : 1급 읽기 / 쓰기 불가, 2급 읽기 / 쓰기 가능, 3급 읽기 / 쓰기 불가
무결성 모델
: 기밀성 모델에서 발생하는 불법적인 정보 변경 방지, 무결성을 기반으로 개발된 모델, 인가된 사용자만 수정
: 데이터의 일관성 유지에 중점, 주체 / 객체의 보안 등급을 기반
: 제약 조건
- 단순 무결성 규칙 : 주체는 자신보다 낮은 등급의 객체 읽기 불가
ex) 자신의 보안 레벨 2급 : 1급 읽기 불가, 2급 읽기 가능, 3급 읽기 가능
- 스타 무결성 규칙 : 주체는 자신보다 높은 등급의 객체 작성 불가
ex) 자신의 보안 레벨 2급 : 1급 작성 가능, 2급 작성 가능, 3급 작성 불가
접근통제 모델
: 접근통제 메커니즘을 보안모델로 발전, 접근통제 행렬(Access Control Matrix) 있음
: 접근통제 행렬(Access Control Martrix)
- 임의적 접근통제 관리를 위한 보안 모델, 행은 주체, 열은 객체로 주체와 객체의 권한 유형을 나타냄
- 행 : 주체, 객체에 접근 시도하는 사용자
- 열 : 객체, 접근통제가 이뤄지는 테이블, 칼럼, 뷰 등 데이터베이스 개체
- 규칙 : 주체가 객체에 대하여 수행하는 입력, 수정, 삭제 등 데이터베이스의 조작
접근통제 조건
접근통제 메커니즘의 취약점 보완하기 위해 접근통제 정책에 부가하여 적용하는 조건
값 종속 통제(Value-Dependent Control)
: 객체에 저장된 값에 따라 다르게 접근통제를 허용하는 경우
다중 사용자 통제(Multi-User Control)
: 다수의 사용자가 동시에 접근을 요구하는 경우
콘텍스트 기반 통제(Context-Based Control)
: 특정 시간, 네트워크 주소, 접근 경로, 인증 수준 등 근거하여 접근을 제어, 다른 보안 정책과 결합하여 취약점 보완해야 하는 경우
감사 추적
사용자나 애플리케이션이 데이터베이스에 접근하여 수행한 모든 활동을 기록
- 오류가 발생한 데이터베이스를 복구, 부적절한 데이터 조작 파악하기 위해 사용
- 실행한 프로그램, 사용자, 날짜 / 시간, 접근한 데이터의 이전 값 / 이후 값 등 저장
출처 | <시나공> 정보처리기사 필기 2024 기본서 (길벗알앤디)
'💠기타 > 자격증' 카테고리의 다른 글
[정처기 필기] 「3」 | SQL 응용 - (3.1) SQL 개념, DDL (1) | 2024.02.10 |
---|---|
[정처기 필기] 「3」 | 물리 데이터베이스 설계 - (2.5) 데이터베이스 백업, 스토리지 (0) | 2024.02.09 |
[정처기 필기] 「3」 | 물리 데이터베이스 설계 - (2.3) 분산 데이터베이스 설계, 데이터베이스 보안 / 암호화 (1) | 2024.02.09 |
[정처기 필기] 「3」 | 물리 데이터베이스 설계 - (2.2) 뷰, 파티션 설계 (2) | 2024.02.09 |
[정처기 필기] 「3」 | 물리 데이터베이스 설계 - (2.1) 트랜잭션, CRUD 분석 (1) | 2024.02.09 |