오라클 클라우드

오라클 조건부 정책 - Conditional Policy

트리스탄1234 2022. 7. 15. 08:32
728x90
반응형

조건 부 정책은 정책을 좀더 세밀하게 조절을 가능하게 해 줍니다. 아래 그림에서 처럼 where 구문 뒤에 조건부 정책 구문이 위치를 하게 됩니다.

- 정책 구문

allow == Subject == to == Action == in = placement == where == condition

조건부 정책은 그 결과 값이 참, 거짓, 해당 없을을 판단하고 선언된 조건문 대로 동작을 조정 하게 됩니다.

조건부 정책은 변수와 함께 target, request라는 속성값과 함께 정책에 적용이 됩니다.

A) request : 요청한 사용자나 요청 내역 그 자체의 속성값을 정의 합니다.

B) target: 조건부 정책이 적용이 되는 리소스나 대상에 대한 속성값을 저장 합니다.

조건 정책은 아래의 판단식을 가지고 결과값이 참인지 거짓인지를 판단 합니다.

A) =|!= value 형식으로 사용되고, 결과 값은 참또는 거짓으로 돌려 준다.

B) !=: 결과값의 반대값을 돌려 준다.

조건 구문은 한개의 라인에 여러개의 조건절을 사용 할수 있는데요, 이때 사용 하는 것이 any/all 입니다.

: any|all{<condition>,<condition>,,,,,} 형식으로 사용

A) any : 논리적 OR연산을 수행, 여러개의 조건 중에서 하나만 참이면 참을 결과값으로 돌려줌

B) all : 논리적 AND 연산을 수행, 여러개의 조건 모두가 참이어야 참을 결과값으로 돌려줌

그럼 조건 구문을 사용하여 예제를 몇개 살펴 보도록 하겠 습니다.

A) US WEST지역의 모든 리소스의 관리를 위한 권한을 PHX 관리자에게 허용

allow group PHX-Admin to manage all-resource in tenancy where request.region='phx'

B) NetworkAdmin 그룹에게 특정 한개의 compartmnet를 제외하고 나머지 모든 Compartment의 관리

권한 허용

allow group NetworkAdmin to manage virtual-network-family in tenancy where

target.compartment.id !='ocid1'

C) adb관리자를 특정 workload type의 db접근만 허용할 경우

allow group ADB-Admin to manage autonomous-database in tenancy where

taeget.wrokloadType = 'workload_type'

 

728x90
반응형