Upload
drake-schwartz
View
72
Download
1
Embed Size (px)
DESCRIPTION
Chapter 8 Authorization. Access control matrix Multilevel Security Multilateral security Covert channel Inference control CAPTCHA Firewalls IDS. 접근 제어의 기본 개념. 접근 제어는 보호 받아야 할 시스템의 데이터와 자원에 대해서 행해지는 동작을 규제한다 . 목적 은 데이터와 자원에 손상을 입히는 동작을 규제하기 위해서 주체가 실행하는 동작을 제어하는 것이다 . - PowerPoint PPT Presentation
Citation preview
Chapter 8Authorization
Access control matrixMultilevel Security
Multilateral securityCovert channel
Inference controlCAPTCHAFirewalls
IDS
접근 제어의 기본 개념
접근 제어는 보호 받아야 할 시스템의 데이터와 자원에 대해서 행해지는 동작을 규제한다 .
목적은 데이터와 자원에 손상을 입히는 동작을 규제하기 위해서 주체가 실행하는 동작을 제어하는 것이다 .
operating system 와 database management system (DBMS) 의 일부로서 접근 제어의 문제를 생각해 보자 .
Chapter 8 Authorization 2
접근 제어의 기본 개념
동작을 수행하는 주체 (subject) 와 수동적인 객체 (object) 가 있다 .
reference monitor 는 접근을 허락하거나 거부한다 .
Chapter 8 Authorization 3
주체 접근 요청
Reference monitor 객체
접근 제어의 기본 개념
Chapter 8 Authorization 4
주체 접근요청
Reference monitor 객체
AccessPermissions
접근 제어 정책
접근 제어 행렬(Access Control Matrix)
Chapter 8 Authorization 5
Lampson’s Access Control Matrix 주체 ( 사용자 ) 는 열에 표시한다 . 객체 ( 자원 ) 는 행에 표시한다 .
os Accounting program
Accounting data
Insurancedata
Payrolldata
Bob rx rx r --- ---
Alice rx rx r rw rw
Sam rwx rwx r rw rwAccounting program rx rx rw rw rw
Chapter 8 Authorization 6
어떻게 행렬을 관리하는가 ? 접근 제어 행렬은 모든 관련된 정보를 갖고 있
다 . 하지만 어떻게 커다란 행렬을 관리할 것인가 ?
수천명의 사용자와 수천개의 자원들 그러면 행렬은 수백만개의 원소를 갖는다 . 특정 자원에 접근하기 전에 이 행렬을 조사하여야
한다 : 비효율적 효율적인 사용을 위해서 , 행렬을 관리할 수
있는 부분으로 나눈다 ; 두가지 방법 : 행 (column) 으로 혹은 열 (row) 로
Chapter 8 Authorization 7
Access Control Lists (ACLs) ACL: 행 (column) 으로 보관 예 : insurance data 에 대한 ACL
Chapter 8 Authorization
os Accounting program
Accounting data
Insurancedata
Payrolldata
Bob rx rx r --- ---
Alice rx rx r rw rw
Sam rwx rwx r rw rwAccounting
program rx rx rw rw rw
8
ACL(insurance data) = {(Bob,---), (Alice,rw), (Sam,rw), (Acc prog, rw)}
권한 목록 (Capabilities or C-Lists) 열 (row) 로 보관 예 : Alice 에 대한 C-List
Chapter 8 Authorization
os Accounting program
Accounting data
Insurancedata
Payrolldata
Bob rx rx r --- ---Alice rx rx r rw rw
Sam rwx rwx r rw rwAccounting
program rx rx rw rw rw
9
C-list(Alice)= {(OS,rw), (Acct prog,rw), (Acct data,r), (Insur data,rw), (payroll data, rw)}
ACLs vs Capabilities
주요 차이점은 화살표의 방향이 반대라는 점이다 ! ACL 의 경우 여전히 사용자를 파일과 연관을 시키는 것이 필요하다 .
Chapter 8 Authorization
file1Alice
Bob
Fred
r---r
wr
---
rwrr
rwrw
---rr
r---r
Access Control List Capability
10
file2
file3
Alice
Bob
Fred
file1
file2
file3
권한 위임 혼돈 - 1/4 두 개의 자원과 한
명의 사용자 자원 : 컴파일러와
청구서 파일 (BILL) 사용자 : Alice
컴파일러는 청구서 파일에 쓸 수 있다 .
Alice 는 수정할 파일 이름을 컴파일러에게 넘겨줄 수 있다 .
Alice 는 청구서 파일에 쓸 수 없다 . Chapter 8 Authorization
Access control matrix
x ---
rx rw
Compiler BILLAlice
Compiler
11
권한 위임 혼돈 - 2/4
컴파일러는 Alice 의 대리인으로 동작한다 . 컴파일러는 혼란스럽다 .
Alice 는 청구서 파일에 쓰는 것이 허락되지 않았다 . 컴파일러는 자신의 권한과 Alice 의 권한을 혼동하게 된다 .
Chapter 8 Authorization
Alice BILL
Compiler
수정 파일 이름
“BILL”BILL
12
권한 위임 혼돈 - 3/4 Alice 을 대신해서 컴파일러가 행동을 할 때
자신의 권한에 따라서 행동을 하게 된다 . 하지만 그 행동은 Alice 의 권한에 따라야 한다 .
권한 (authority) 와 그것이 사용되는 목적 사이에 구분이 있다 .
ACL 은 이 문제를 피하는 것이 힘들다 . ACLs 는 권한이 위임되는 것을 표시하기 힘들다 . ACL(insurance data)
= {(Bob,---), (Alice,rw), (Sam,rw), (Acc prog, rw)}
Chapter 8 Authorization 13
권한 위임 혼돈 - 4/4 Capabilities 는 이 문제를 쉽게 피할 수 있다 .
권한과 그것이 의도하는 목적 간의 연관성을 유지해야 한다 .
Capabilities 는 권한이 위임되는 것을 나타내기 쉽다 .
C-list(Alice)= {(OS,rw), (Acct prog,rw), (Acct data,r), (Insur data,rw), (payroll data, rw)}
Chapter 8 Authorization 14
ACLs vs Capabilities ACLs
사용자들이 그들 자신의 파일들을 관리하는데 좋다 . 데이터 중심의 보호 자원에 대한 권리를 변경하기가 쉽다 .
Capabilities 위임 (delegation) 이 쉽다 . 사용자를 쉽게 추가 /삭제할 수 있다 . 대리 혼돈 (confused deputy) 을 피하는 것이 쉽다 . 구현하기가 더 힘들다 .
학계에서는 Capabilities 를 선호한다 .
Chapter 8 Authorization 15