PDP와 PEP를 분리하여 Oracle Cloud에서 제로 트러스트 아키텍처 지원

지속적인 위협으로 인한 위험을 줄이기 위해 제로 트러스트 아키텍처는 PDP(정책 결정 지점)에 대해 별도의 제어 플레인을 사용하고 데이터 플레인에서 PEP(정책 적용 지점)를 구현해야 합니다. Oracle Cloud 서비스를 사용하여 제로 트러스트 아키텍처를 지원하고 PDP 및 PEP 구현을 위한 Oracle Cloud의 액세스 제어를 향상시킬 수 있습니다.

Oracle Cloud Infrastructure(OCI)는 미션 크리티컬 워크로드 및 민감한 데이터를 보호하기 위한 강력한 보안 기능 세트를 제공합니다. Oracle Cloud는 NIST(National Institute of Standards and Technology)에서 설립한 제로 트러스트 아키텍처를 통해 정보를 제공하는 제로 트러스트 보안 모델을 구현합니다. 이 모델을 사용하면 시스템, 네트워크 및 데이터에 액세스하려는 모든 사용자의 확인이 필요한 엄격한 보안 상태를 적용할 수 있습니다.

OCI Identity and Access ManagementOCI API 게이트웨이를 통합하여 PDP와 PEP를 분리할 수 있습니다.

Identity and Access Management (IAM)

Oracle Cloud는 OCI Identity and Access Management라는 엔터프라이즈급 서비스형 ID(IDaaS) 플랫폼을 제공합니다. OCI Identity and Access Management는 ID 도메인을 사용하여 클라우드 ID, 사용자 및 보안 애플리케이션을 프로비저닝합니다. OCI Identity and Access Management를 ID 도메인과 함께 PDP로 사용하여 세분화된 정책을 정의하여 다양한 클라우드 리소스 또는 서비스에 대한 액세스를 허용하거나 거부할 수 있습니다.

ID 플랫폼은 클라우드 서비스의 전면 도어 역할을 하며 엔터프라이즈 사용자와 소비자 모두를 위한 독립형 서비스형 ID(IDaaS) 플랫폼 역할을 합니다. 이 플랫폼은 Oracle Cloud, 타사 클라우드 및 온프레미스 데이터 센터에서 실행되는 애플리케이션 및 서비스에 대한 주요 ID 관리 기능을 제공합니다. OCI Identity and Access Management는 SaaS, 클라우드 호스팅 또는 온프레미스에 관계없이 Oracle Cloud 및 Oracle 및 비Oracle 애플리케이션에 대한 인증, SSO(Single Sign-On) 및 ID 수명 주기 관리를 제공합니다. IAM을 사용하면 유저 그룹이 어떤 유형의 액세스 권한을 가지며 어떤 특정 클라우드 리소스에 액세스할 수 있는지 제어할 수도 있습니다.

API 게이트웨이

Oracle Cloud는 보안 우선 설계 접근 방식으로 서비스를 구축합니다. 이 접근 방식을 사용하면 OCI API 게이트웨이와 같은 서비스를 통해 권한이 부여된 사용자 또는 애플리케이션만 전사적으로 데이터에 액세스할 수 있는 데이터 액세스 정책을 생성할 수 있습니다.

OCI API 게이트웨이 서비스를 사용하면 VPN 또는 OCI FastConnect를 통해 Oracle Cloud에 연결된 Oracle Cloud 서비스(예: OCI Load Balancing, OCI Functions, OCI Compute 인스턴스, 온프레미스 애플리케이션 등 여러 백엔드에 대한 제어 HTTP/S 인터페이스(API)를 생성할 수 있습니다. OCI API 게이트웨이는 HTTP/S 엔드포인트에 대한 속도 제한, ID 제공업체를 통한 인증, 클라우드 및 온프레미스 모두에서 여러 RESTful 서비스에 대한 액세스 등 정책 적용 기능을 제공합니다.

OCI API 게이트웨이는 게이트웨이에 연결된 백엔드를 익명으로 호출할 수 없도록 호출자가 인증되도록 합니다. OCI API 게이트웨이는 권한 부여를 확인하고 백엔드 서비스에 HTTP 및 HTTP/S URL을 추가하여 정책 적용으로 해당 서비스 프론트엔드 액세스 권한을 부여할 수도 있습니다. 백엔드 서비스에 대해 지정하는 HTTP/S URL은 다음 중 하나일 수 있습니다.

  • Oracle Cloud 서비스의 URL(예: OCI Functions 또는 OCI Object Storage)
  • 자체 전용 또는 내부 네트워크에서 VPN 또는 OCI FastConnect을 통해 OCI에 연결된 서비스의 URL

구조

이 아키텍처 설계는 OCI Identity and Access ManagementOCI API Gateway 간의 통합을 설명합니다. 이 아키텍처에서 OCI API 게이트웨이는 정책을 적용하여 PEP 역할을 하며, OCI ID 및 접근 관리는 토큰을 승인하고 승인된 사용자에 대한 접근 권한을 부여하여 PDP 역할을 합니다. 이 통합은 JWT 또는 JSON 웹 토큰(일반적으로 액세스 토큰이라고도 함)을 활용합니다. JWT는 다른 IAM 시스템과 통합할 수 있는 개방형 산업 표준입니다.

다음 다이어그램은 이 참조 아키텍처를 보여 줍니다.

다음은 제로 트러스트 pdp-pep-oci.png에 대한 설명입니다.
그림 제로 트러스트 pdp-pep-oci.png에 대한 설명

제로 트러스트 pdp-pep-oci-oracle.zip

다음 단계에서는 OCI API 게이트웨이OCI Identity and Access Management를 사용한 아키텍처 권한 부여 플로우에 대해 설명합니다.
  1. 액세스 토큰 생성

    일반 사용자의 클라이언트 애플리케이션은 IAM API를 사용하여 OCI Identity and Access Management(PDP)에서 JWT 액세스 토큰을 생성합니다.

  2. 액세스 토큰으로 호출(JWT)

    JWT 액세스 토큰은 모든 API 호출의 HTTP 요청 헤더의 일부로 OCI API 게이트웨이로 전송됩니다. 선택적으로 토큰에는 리소스에 대해 특별히 정의된 범위가 포함될 수 있습니다.

  3. IAM을 통한 정책 검증 및 JWT 검증

    OCI API 게이트웨이(PEP)는 IAM 권한 부여 API를 호출하고 클라이언트에서 수신한 액세스 토큰을 전달합니다.

  4. 정책 결정

    OCI ID 및 액세스 관리 서비스(PDP)는 토큰을 평가하고 허용 또는 거부 결정을 반환합니다.

  5. 백엔드에 대한 액세스 권한 부여

    OCI API 게이트웨이(PEP)는 IAM 정책 결정 결과를 기반으로 백엔드 서비스(예: Oracle Cloud Infrastructure Container Engine for Kubernetes(OKE), OCI Functions, OCI Object Storage 또는 VM에서 실행되는 애플리케이션이 노출하는 서비스 엔드포인트)에 대한 액세스 권한을 부여하거나 거부합니다.

  6. 응답(200 OK/403 금지됨)

    OCI API 게이트웨이(PEP)는 200 OK(허용) 또는 403 Forbidden(거부) 상태를 호출자에게 다시 반환합니다.

OCI 콘솔 또는 GUI 및 REST 호출을 사용하여 이 통합의 구현을 구성할 수 있습니다.

아키텍처의 구성 요소는 다음과 같습니다.

  • API 게이트웨이

    OCI API 게이트웨이 서비스를 사용하면 네트워크 내에서 액세스할 수 있고 필요한 경우 공용 인터넷에 노출할 수 있는 전용 끝점이 있는 API를 게시할 수 있습니다. 엔드포인트는 API 검증, 요청 및 응답 변환, CORS, 인증 및 권한 부여, 요청 제한을 지원합니다.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management(IAM)는 Oracle Cloud Infrastructure(OCI) 및 Oracle Cloud Applications용 액세스 제어 플레인입니다. IAM API 및 사용자 인터페이스를 통해 ID 도메인 및 ID 도메인 내의 리소스를 관리할 수 있습니다. 각 OCI IAM ID 도메인은 독립형 ID 및 액세스 관리 솔루션 또는 다른 사용자 모집단을 나타냅니다.

    IAM을 사용하면 OCI의 리소스에 액세스할 수 있는 사용자와 해당 리소스에서 수행할 수 있는 작업을 제어할 수 있습니다.

  • 정책

    Oracle Cloud Infrastructure Identity and Access Management 정책은 어떤 리소스에 액세스할 수 있는지와 방법을 지정합니다. 액세스는 그룹 및 구획 수준에서 부여됩니다. 즉, 특정 구획 또는 테넌시 내에서 그룹에 특정 유형의 액세스 권한을 부여하는 정책을 작성할 수 있습니다.

  • Kubernetes용 컨테이너 엔진

    Oracle Cloud Infrastructure Container Engine for Kubernetes(OKE)는 확장 가능한 완전 관리형 고가용성 서비스로, 컨테이너형 애플리케이션을 클라우드에 배치하는 데 사용할 수 있습니다. 애플리케이션에 필요한 컴퓨트 리소스를 지정하면 Container Engine for Kubernetes가 기존 테넌시의 Oracle Cloud Infrastructure에서 프로비저닝합니다. Container Engine for Kubernetes는 Kubernetes를 사용하여 호스트 클러스터 전반에서 컨테이너화된 애플리케이션의 배포, 확장 및 관리를 자동화합니다.

  • 함수

    Oracle Cloud Infrastructure Functions는 확장성이 뛰어난 완전 관리형 멀티테넌트, 온디맨드 FaaS(Functions-as-a-Service) 플랫폼입니다(FaaS). 그것은 Fn 프로젝트 오픈 소스 엔진에 의해 구동 됩니다. 함수를 사용하면 코드를 배치하고 직접 호출하거나 이벤트에 대한 응답으로 트리거할 수 있습니다. Oracle Functions는 Oracle Cloud Infrastructure Registry에서 호스팅되는 Docker 컨테이너를 사용합니다.

  • 객체 스토리지

    오브젝트 스토리지를 사용하면 데이터베이스 백업, 분석 데이터, 이미지 및 비디오와 같은 리치 콘텐츠 등 모든 콘텐츠 유형의 대량의 정형 및 비정형 데이터에 빠르게 액세스할 수 있습니다. 인터넷 또는 클라우드 플랫폼 내에서 직접 안전하고 안전하게 데이터를 저장하고 검색할 수 있습니다. 성능 또는 서비스 안정성의 저하 없이 스토리지를 원활하게 확장할 수 있습니다. 빠르고 즉각적이며 자주 액세스하는 데 필요한 "핫" 스토리지에 표준 스토리지를 사용합니다. 장기간 보관하고 거의 액세스하지 않는 "콜드" 스토리지에는 아카이브 스토리지를 사용합니다.

권장사항

다음 권장 사항을 시작점으로 사용합니다. 요구 사항은 여기에 설명된 아키텍처와 다를 수 있습니다.
  • 보안

    Oracle Cloud Guard를 사용하여 사전에 Oracle Cloud Infrastructure(OCI)에서 리소스의 보안을 모니터링하고 유지 관리할 수 있습니다. Oracle Cloud Guard는 정의 가능한 감지기 레시피를 사용하여 리소스의 보안 약점을 검사하고 운영자 및 사용자의 위험한 작업을 모니터합니다. 잘못된 구성이나 안전하지 않은 작업이 감지되면 Oracle Cloud Guard는 사용자가 정의할 수 있는 응답기 레시피를 기반으로 수정 조치를 권장하고 해당 작업을 수행하는 데 도움을 줍니다.

    최대 보안이 필요한 리소스의 경우 Oracle은 보안 영역을 사용할 것을 권장합니다. 보안 영역은 모범 사례를 기반으로 하는 Oracle에서 정의한 보안 정책 레시피와 연관된 구획입니다. 예를 들어, 보안 영역의 리소스는 공용 인터넷에서 액세스할 수 없어야 하며 고객 관리 키를 사용하여 암호화해야 합니다. 보안 영역에서 리소스를 생성하고 업데이트할 때 OCI는 보안 영역 레시피의 정책에 대해 작업을 검증하고 정책을 위반하는 작업을 거부합니다.

  • Cloud Guard

    Oracle에서 제공하는 기본 레시피를 복제하고 사용자정의하여 사용자정의 감지기 및 응답기 레시피를 생성합니다. 이러한 레시피를 사용하면 경고를 생성하는 보안 위반 유형과 경고에 대해 수행할 수 있는 작업을 지정할 수 있습니다. 예를 들어 가시성이 공용으로 설정된 OCI Object Storage 버킷을 감지할 수 있습니다.

    테넌시 레벨에서 Oracle Cloud Guard를 적용하여 가장 광범위한 범위를 적용하고 여러 구성을 유지 관리하는 관리 부담을 줄입니다.

    관리되는 목록 기능을 사용하여 감지기에 특정 구성을 적용할 수도 있습니다.

고려사항

이 참조 아키텍처를 구현하는 경우 다음 사항을 고려하십시오.

  • 사용자 프로비저닝 및 접근 제어

    고객에게 데이터 및 백엔드 서비스에 대한 액세스 권한이 부여되면 이를 인증하는 Oracle Cloud Infrastructure Identity and Access Management에 어떻게 프로비저닝됩니까? 액세스 권한을 취소할 때 프로비저닝을 해제하려면 어떻게 해야 합니까? 이러한 고려 사항은 수익화 데이터 제품을 사용할 수 있는 방법과 대상자에 대한 광범위한 논의의 일환으로 발생합니다.

  • 성능

    Oracle Cloud Infrastructure API Gateway는 백엔드 서비스에서 불필요한 로드를 방지하는 데 도움이 되는 외부 캐시 서버(예: Redis 또는 KeyDB 서버)와 통합하여 응답 캐싱을 지원합니다. 캐시된 응답의 경우 백엔드 서비스로 요청을 전송하는 대신 응답 캐시에서 데이터를 검색하여 유사한 요청을 완료합니다. 따라서 백엔드 서비스에 대한 로드가 줄어들어 성능이 향상되고 비용이 절감됩니다.

    또한 OCI API 게이트웨이는 TTL(활성 시간)을 기반으로 인증 토큰을 캐시하여 ID 제공자에 대한 로드를 줄이고 성능을 개선합니다.

  • 보안

    Oracle Cloud Infrastructure(OCI) 서비스는 OCI API 게이트웨이가 함수를 호출하도록 허용하는 등 OCI Identity and Access Management 정책을 사용합니다. OCI API 게이트웨이는 OAuth 인증 및 권한 부여를 사용하여 액세스를 제어할 수도 있습니다. 인증 및 권한 부여는 OCI Identity and Access Management를 통해 통합할 수 있습니다. 이를 통해 OCI API 게이트웨이는 다양한 서비스 및 인증 설정에 대해 인증할 수 있습니다.

  • 고가용성

    배포 요구사항 및 지역에 따라 고가용성 옵션을 사용하는 것이 좋습니다. 옵션은 한 지역의 여러 가용성 도메인에 리소스를 분배하고 가용성 도메인 내의 장애 도메인에 리소스를 분배하는 것을 포함합니다. 장애 도메인은 단일 가용성 도메인 내에 배포된 워크로드에 최고의 복원성을 제공합니다. 애플리케이션 계층에서 고가용성을 얻으려면 서로 다른 장애 도메인에 애플리케이션 서버를 배치하고 로드 밸런서를 사용하여 애플리케이션 서버 간에 클라이언트 트래픽을 분산합니다.

확인

작성자:

  • Subba Bhamidipati