클라우드 및 온-프레미스 애플리케이션을 통합하고 자동화하기 위해 체인은 AWS(Amazon® Web Services) 보안 및 iPaaS 아키텍처를 활용하여 포괄적인 엔터프라이즈 아키텍처 표준과 엄격한 IT 보안 정책을 준수합니다. 체인 빌더 아키텍처의 각 계층은 클라이언트 데이터를 보호하며 다음과 같은 특성을 갖습니다.
- 상호 작용하는 민감한 시스템에 대한 액세스 제어를 제공합니다.
- 최신 아키텍처의 요구 사항을 해결합니다.
- SOC1 및 SOC2를 준수합니다.
- 종종 필요한 클라우드 인증을 초과합니다.
참조 아키텍처
웹 및 모바일 지원 장치로 HTTPS(TLS 1.2 이상) 프로토콜을 통해 안전하게 체인을 작성합니다. 호스트 서비스 내에서 실행되는 기본 애플리케이션은 원격 CloudRunner 및 GroundRunner 서비스 에이전트에서 통신 및 작업 실행을 관리하기 위한 메타데이터와 대기열을 안전하게 보관하는 AES(Advanced Encryption Standard) 지원 데이터베이스입니다.
요약하면 체인 빌더의 아키텍처에는 다음이 포함됩니다.
- 통합을 실행하고 관리하기 위한 안전한 브라우저 기반 사용자 인터페이스
- AWS(Amazon Web Services)에서 호스팅되는 중앙 멀티 테넌트 서비스
- 클라우드 및 온-프레미스 애플리케이션과 상호 작용하기 위한 원격 CloudRunner 및 GroundRunner 실행 에이전트
GroundRunner 및 CloudRunner
실행 에이전트(GroundRunner라고 함)는 온-프레미스에서 호스팅되며 클라이언트 네트워크 내부 및 외부의 애플리케이션과 상호 작용합니다. GroundRunner의 특성은 다음과 같습니다.
- 리소스 풋프린트가 작습니다.
- 물리적 및 가상 컴퓨팅 리소스에서 Microsoft Windows®, Linux®, macOS® 및 Oracle Solaris® 운영 체제를 지원합니다.
- 간단한 운영 체제 명령 실행에서 데이터 로드 또는 검색과 같은 기본 애플리케이션 작업에 이르기까지 필요한 모든 자동화 및 통합 작업을 수행합니다.
온-프레미스 시스템에 액세스하려면 호스트 서비스에 액세스할 수 있는 운영 환경에서 GroundRunner를 호스팅해야 합니다.
온-프레미스 시스템에 대한 액세스가 필요하지 않은 경우 Workiva에서 호스팅하는 기본 CloudRunner가 통합 작업을 실행합니다.
배포 고려 사항 | GroundRunner | CloudRunner |
---|---|---|
설치 | 포트 443을 통해 외부 호스트 서비스와 상호 작용할 수 있는 회사 방화벽 내부의 컴퓨팅 환경에 설치해야 합니다. 자세히 보기 | 없음 |
운영 체제 | Microsoft Windows, Linux, Oracle Solaris 또는 macOS. 실행 파일은 서비스로 실행되며 운영 체제 또는 기타 공유 리소스에 대한 적절한 권한이 있는 특정 서비스 계정으로 시작해야 합니다. | 해당 없음 |
서비스 책임 | 조직은 GroundRunner를 호스팅, 관리 및 설치할 책임이 있습니다. | 체인 빌더의 일부로 제공되는 기본 CloudRunner는 Workiva의 책임입니다. |
데이터 흐름 | GroundRunner를 사용하면 데이터가 호스트 서비스를 통해 전송되지 않습니다. | CloudRunner가 지원되는 클라우드 기술과 직접 상호 작용하는 경우 호스트 서비스를 통해 데이터를 전송합니다. |
온-프레미스 및 클라우드 통합 | 온-프레미스 및 클라우드 애플리케이션과의 완벽하고 원활한 통합 | 클라우드 애플리케이션 간의 통합만 해당 |
애플리케이션의 게시된 API의 기본 사용 | 온-프레미스 시스템에 따라 연결은 다양한 애플리케이션 프로그래밍 인터페이스(API)를 활용합니다. 클라우드 기술의 경우 연결은 HTTPS(TLS 1.2)를 통해 데이터를 안전하게 전송하는 게시된 REST API만 사용합니다. | 연결은 HTTPS(TLS 1.2)를 통해 데이터를 안전하게 전송하는 게시된 REST API만 사용합니다. |
GroundRunner는 주기적으로 새로운 업그레이드를 확인합니다. GroundRunner가 업그레이드를 감지하면 엄격한 보안 전송 계층을 사용하여 새 바이너리를 자동으로 다운로드합니다. 또는 바이너리를 수동으로 다운로드하여 배포할 수 있습니다. 중간자(man-in-the-middle) 공격을 방지하기 위해 새로운 바이너리를 서명 및 암호화합니다.
네트워크 보안
체인 빌더는 AWS에서 호스팅되며 네트워크는 VPC(Virtual Private Cloud) 내에서 작동합니다. Workiva는 이 가상 방화벽을 통해 체인 빌더에서 송수신되는 트래픽을 제어할 수 있습니다. 더 세분화된 수준에서 체인 빌더의 서비스는 VPC의 퍼블릭 및 프라이빗 서브넷이나 격리된 IP 주소 블록 내에서 호스팅됩니다. VPC는 다음과 같은 방식으로 DMZ 역할을 합니다.
- 퍼블릭 서브넷에는 단일 포트(443)의 HTTPS 요청을 통해 공용 인터넷에서 직접 액세스하는 서비스가 포함됩니다.
- 프라이빗 서브넷은 퍼블릭 트래픽을 차단하며 VPC 내 서비스로 액세스하는 내부 서비스만 호스팅합니다.
데이터 전송 보안
시스템 간 데이터 전송의 완전한 보안을 보장하기 위해, 체인 빌더에서 송수신되는 모든 트래픽은 2048비트 인증서를 사용하는 TLS 1.2 프로토콜로 암호화됩니다. 또한 내부 애플리케이션 간의 통신은 암호화되어 모든 전송을 올바른 소스에서만 보낼 수 있습니다.
GroundRunner 및 CloudRunner는 데이터의 직접 교환을 지원하므로 에이전트는 JWT(JSON Web Token) 외에 동일한 TLS 1.2 프로토콜을 사용하여 통신 채널을 통해 파일을 다운로드하고 교환할 수 있습니다. 각 GroundRunner는 에이전트 간 직접 데이터 교환을 지원하며 이 옵션을 활성화 또는 비활성화하고 수신 포트(기본값 : 8821)를 제어하도록 구성할 수 있습니다.
보안 채널을 만들기 위해, GroundRunner는 또한 기업 IT 부서에서 관리하는 기업 프록시 서버와 함께 작동하여 호스트 서비스와 통신합니다.
데이터베이스 계층 보안
데이터베이스 서버는 프라이빗 서브넷 내에서 호스팅됩니다. 이러한 데이터베이스는 공용 인터넷에서는 직접 액세스할 수 없으며 VPC 내의 서비스만 연결할 수 있습니다. 데이터베이스에 대한 모든 연결은 비밀번호로 보호되며 필요한 포트만 액세스할 수 있습니다. 데이터 손실을 방지하기 위해 데이터베이스는 중복성이 높으며 여러 데이터 센터에 분산되어 있습니다.
데이터베이스는 매일 백업됩니다. 이러한 스냅샷은 AES-256의 암호화 수준과 여러 가용 영역에 걸쳐 Amazon Simple Storage Service(S3)에 저장되어 추가 보안 중복 계층을 보장합니다.
데이터 및 메타데이터 관리
데이터에 대한 정보를 설명하고 제공하기 위해 호스트 서비스는 다음 메타데이터를 AES-256의 암호화 수준으로 저장합니다.
- 설계 메타데이터(예: 작업 영역, 체인 및 작업의 구성)
- 감사 메타데이터(예: 작업 영역, 체인, 파일 리소스, 일정과 같은 모든 구성 요소의 변경 기록)
- 런타임 메타데이터(예: 체인 및 작업 실행 기록과 서버, CloudRunner 또는 GroundRunner에서 생성된 모든 로그)
CloudRunner 및 GroundRunner는 모든 데이터 전송을 수행하며 다음과 직접 상호 작용합니다.
- Workiva 플랫폼
- Anaplan®, Salesforce®, Oracle® EPM Cloud 및 Tableau®와 같은 클라우드 애플리케이션
- 기본 API를 통한 Oracle® Hyperion 또는 SQL Server®와 같은 온-프레미스 애플리케이션
체인에는 출력으로 알려진 임시 스테이징 플랫 파일을 생성하는 작업이 포함될 수 있습니다.
- CloudRunner가 출력을 생성하면 AWS EFS(Elastic File System) 볼륨에 AES-256의 암호화 수준으로 저장됩니다.
- GroundRunner가 출력을 생성하면 암호화 수준을 결정하는 호스트의 파일 시스템에 일시적으로 저장됩니다.
워크플로 첨부 파일은 임시 파일로 워크플로가 완료된 후에는 사라집니다. 워크플로와 연결된 파일을 보존하려면 온-프레미스 파일 시스템이나 Google® Drive 또는 BOX®와 같은 클라우드 드라이브에 저장합니다.
작업 영역 또는 커넥터용으로 업로드된 리소스와 같은 민감한 파일은 HashiCorp Vault Transit 암호화를 통해 암호화되고 Amazon Simple Storage Service(S3)에 암호화되어 저장됩니다. 커넥터 속성으로 입력된 인증 자격 증명과 같은 민감한 텍스트 필드는 Amazon DynamoDB®에 암호화된 HashiCorp Vault Secrets로 저장됩니다. 마스터 키를 저장하기 위해 Vault Transit 및 Vault Secrets/KV Store는 모두 awskms
씰을 사용합니다.