본문 바로가기

IT for researcher/Security

Role-based Domain Discovery in Decentralized Secure Interoperations


초록
최근 인터넷 기반 엔터프라이즈 애플리케이션에서 볼 수 있는 것처럼 멀티 도메인 협업 환경은 현실이 되고 있다. 그러한 멀티 도메인 환경에서 안전한 상호작용을 보장하기 위하여 접근제어는 중요한 도전과제이다.  집중화된 권리의 필요성이 없어지고  매우 커다란 협업을 제공할 수 있은 후로 분산된 안전한 상호작용 접근법이 유망해지고 있다. 분산된 안전한 상호작용 접근법에서는 중압집중된 관리 도메인이 없으므로 리소스 요청 도메인은  우선 요청된 리소스들을 포함하는 특정 도메인을 식별하는 것이 필요하다. 그러한 문제는 리소스에 퍼미션이 롤로써 캡슐화되고 최소 권한 원칙이 보장되어야만 하기 때문에 RBAC가 채택되면 좀더 많은 도전을 가진다. 이 논문에서 , 역할 기반 도메인 발견 문제로써 이러한 문제를 정의하고 이를 처리하기 위한 효과적인 해결책을 제시한다. 특히, 우리는 최소 권한 원칙을 보장하기 위한 롤 매핑 알고리즘을 사용하고 요청받은 리소스들을 포함하고 있는 도메인들을 식별하기 위한 세가지 발견 접근법을 제안한다. Linear Propagation Approach, (LPA), Broadcasting Approach (BA), and Hybrid Approach (HA)


Introduction

이전 방식들은 중악 집중적인 관리 - 참여하고 있는 도메인들의 모든 개별 접근 제어 정책을 글로벌 정책으로 통합~

아주 큰 분산 환경에서는 여러 한계가 있다. 복잡성, 확장성, 융통성없음, 공정함 부족.
그러한 한계를 처리하기 위하여 분산된 안전한 상호작용 접근법들이 제안됨.

리소스 제공자와 요청자가 직접 상호작용해야만 한다. 
예전 방식들은 리소스 제공자 도메인의 정책에 기반한 특정 상호작용 요청을 어떻게 승인결정할 것인지에 대해 집중함.

리소스를 요청하는 도메인을 위해 요청된 리소스들을 포함하고 있는 도메인들 식별하기가 정확히 기술되어 있지 않음.

중앙집중적인 관리없이 요청된 리소스들을 포함하고 있는 도메인들을 식별하는 것이 간단하지 않다.  RBAC에서는 좀더 복잡하다.

오직 요청된 퍼미션을 포함하고 있는 롤만이 리소스 요청 도메인에서 얻어질 수 있어야만한다. 예를 들어 도메인 d1은 r1롤 (p1, p2 퍼미션 포함)을 가지고 있고 d2 도메인 밖이 p1에의해 표현된 리소스들을 요청한다. 그런 경우 p1이 이 정책에 있더라도  d1은 p1을 제공할 수 없다. r1을 통해 p1을 제공하여 다른 요청되지 않은 퍼미션 p2 또한 d2에서 이용될 수 있기 때문에 최소 권한 원칙에 위배된다.

이 논문에서, 우리는 역할 기반 도메인 발견 문제로써 문제를 정의하고 이를 처리하기 위한 효과적인 해결책을 제안한다. 각 참여 도메인들은 혼합 계층을 가진 RBAC 를  채택한다고 추정한다.

주요 공헌
1. 역할 기반 도메인 발견 문제를 해결하는 방향으로 최소 권한 원칙을 보장하기 위하여 롤 매핑 알고리즘을 사용한다.
2. 요청된 리소스를 포함하고 있는 도메인을 식별하기위하여 세가지 발견 접근법을 제안한다.
3. 복잡성, 최적화, 효과성에 권하여 비교한다.

2. PRELIMINARIES

2.1. RBAC and Hybrid Hierarchy

RBAC에서, 리소스에 대한 접근은 대상에 오퍼리이션에 의해 정의된 퍼미션에 의해 모델화된다. 퍼미션은 롤안에 그룹화되고 상요자들은 퍼미션들을 얻기 위하여 롤안에 멤버가 된다. RBAC는 비집중화된 안전한 상호작용을 위해 적절하다. [5, 7]
RBAC의 롤들 간의 관계를 정의하는 롤 계층은 구별되는 특징 중에 하나이다.
하이브리드 계층은 표준 롤 계층의 한계를 극복하기 위하여 제한됨 Temporal hierarchies and inheritance semantics for GTRBAC
하이브리드 계층에서 다음고 같은 3가지 롤 계층 타입이 존재한다.
퍼미션-상속-계층 . I-hierarchy
활성화-상속-계층, A-hierarchy
통합된 퍼미션-상속 과 활성화 계층, IA-hierarchy
x ≥i y : y를 통해 얻을 수 있는 퍼미션은 x를 통해서도 얻을 수 있다. (x는 y의 I-senior이다.)
x ≥a y: x를 활성화 할 수 있는 사용자는 y 또한 활성화 할 수 있다. (x는 y의 A-senior이다.)
x ≥ y : x를 활성화 할 수 있는 사용자는 y 또한 활성화 할 수 있고 y를 통해 얻을 수 있는 퍼미션은 x를 통해서도 얻을 수 있다. (x는 y의 IA-senior이다.)

2.2. Role Based Domain Discovery
단일 RBAC 시스템에서, 사용자들은 전형적으로 그들이 어느 롤에 할당되어야하는지 안다. 결과적으로, 단일 RBAC 시스템에서 접근 요청은 어떤 롤들을 활성화위한 사용자의 요청에 의해 모델화된다. 그러나 멀티 도메인 환경에서 사용자들은 요청받은 퍼미션을 포함하고 있는 바깥 도메인의 롤 구조를 알지 못한다. (사용자가 퍼미션을 획득하려면 결국 롤에 할당이 되어야하는데 멀티 도메인인 경우 어떤 롤에 할당이 되어야 하는지 알지 못한다.) 그래서, 멀티 도메인 환경에서 접근 제어 요청은 요청받은 리소스들을 표현하는 퍼미션에 의해 모델화 되어야만 한다고 주장한다. 예를 들어, 은행 도메인에서 직원은 설령 신용도메인이 밖에 있더라도 엘리스의 신용기록을 얻기 원한다. 이는 <read, 앨리스의 신용 리포트>와 같이 퍼미션면에서 접근 요청을 명시하는 것이 쉽다. 반대로 은행에 사용자가 신용 도메인의 롤 구조를 알지 못하기 때문에 <신용 리포트를 보기 위한 권리를 가진 점원의 롤을 활성화하기>와 같이 롤의 면에서 접근 요청을 명시하기는  매우 어렵다. 우리는 롤 기반 멀티 도메인 환경에서 접근 요청을 다음과 같이 공식적으로 정의한다.

정의 1 (접근 요청): 접근 요청  rq는  <u, P> 튜플이다. 
u:  접근 요청을 생성하는 사용자
P:  사용자가 획득하기 원하는 퍼미션의 집합

주어진 접근 요청 rq에서 엘리먼트를 참조하기 위하여 dot 개념을 사용한다. 예) rq.u, rq.p . 사용자 u가  rq의 요청하는 도메인으로써 속한다는 것을 정의한다.
그러한 접근 요청이 주어지면, 요청하는 도메인은 요청받은 퍼미션들을 포함하고 있는 특정 도메인을 식별할 필요가 있다.
RBAC가 각 도메인에 채택되기 때문에 요청하는 도메인은 식별된 도메인들이 요청받은 퍼미션을 정확히 포함하고 있는 적당한 롤들을 가지고 있어서 최소 권한이 보존된다는 보장을 할 필요가 있다. 
롤 집합 R이 주어지면
Pau(R): R에서 얻을 수 있는 모든 퍼미션. (롤-퍼미션 할당 또는 I-계층을 통해)

Pau(r) = {p|∃r1 such that p is assigned to r1 and r ≥i r1 }
r1이 존재해서 퍼미션 p가 r1에 할당되고 r이 r1의 I-senior이다.

Pau(R) =∪Pau(ri) where ri∈R


정의 2 (롤 기반 도메인 발견 문제):
도메인 do로 부터 접근 요청 q가 주어지면. 관여된 도메인 Dinvl의 집합을 결정해서 rq.P = ∪ Pprov(di→d0) where di∈Dinvl
(결국 각 도메인에서 요청된 퍼미션의 집합을 합해서 접근요청의 퍼미션을 구해야한다.)
Pprov(di→d0) : di이 d0에 제공할 수 있는 요청된 퍼미션의 부분 집합

다시말해서, 
Pprov(di→d0)⊆rq.P and ∃Ri in di such that Pprov(di→d0)=Pau(Ri).
멀티 도메인 환경에 5가지 도메인들이 있다.

d1 에 u가 rq=<u, {p1, p2,p3,p4} 이슈.
{d2, d3}
Pprov(d3→d1) = Pau(r6)={p4},
Pprov(d2→d1) = Pau(r1) ={p1,p2, p3}

r1은 r3의 A-senior이기 때문에 p8은 얻어 질 수 없다. 그러므로 만족한다.

3. ROLE-MAPPING ALGORITHM
 정의 2에 의하면 롤 기반 도메인 발견에서 중대한 문제는 요청된 퍼미션의 부분 집합을 포함하고 있는 롤들의 집합을 찾는 것이다.

단일 도메인 RBAC 시스템에서 사용자-권한-쿼리 문제를 용이하게 하기 위해 롤 매핑 문제 집합을 제안해오고 있다.[]

제안된 롤 매핑 알고리즘중 하나는 

Greedy-Search 3: 롤 R 집합을 리턴한다. 롤의 연관된 퍼미션 Pau(R)는 입력 퍼미션을 최대 부분집합이다.
Greedy-Search 3에 의해 리턴되는 롤 집합에서 얻을 수 있는 모든 퍼미션들은 최소 권한 원칙을 위반없이 도메인에 의해 제공될 수 있다.

di에서 Greedy-search를 실행하고 비어있지 않은 출력 Ri를 얻는다면, Pprov(di→d0) = Pau(Ri) ⊆ rq.P를 만들어서 di는 Dinvl에 포함될 수 있다고 결론낸다.

그러한 롤 매핑 알고리즘이 주어지면, 롤기반 도메인 발견에서 중대한 도전은 어떻게 다른 도메인들로 부터 Greedy-search3의 출력을 효율적으로 모으고 연관죈 도멩인의 다중 집합들이 존재한다면 관련 도메인의 최적 집합을 어떻게 찾을 수 있을까?