Heroku개념정리 #2 – Shield Private Spaces

Shield Private Spaces는 높은 규정 준수 요구 사항을 갖춘 애플리케이션을 구축하기 위한 추가 기능을 포함한다. Shield Private Spaces는 상당한 비용이 발생한다. Shield Private Spaces는 비용이 높기 때문에 애플리케이션의 요구 사항에 맞는지 확인 후 구매 하는 것이 좋다.

Shield Private Spaces

Shield Private Spaces 기능 및 제한 사항 목록

Shield 유형 dyno: 암호화된 임시 파일 시스템.

Shield Heroku Postgres: 규제 데이터 클래스 저장 가능.

  • Shield 데이터베이스는 매우 높은 보안이 요구된다.
    Private Space 외부에서의 접근을 허용하지 않습니다. 외부의 신뢰할 수 있는 IP를 등록한 후 신뢰 할 수 있는 IP 이더라도 접근할 수 없다. Private Space 내부에서만 접근이 가능
  • Dataclips와 PGBackups를 사용할 수 없으므로 다른 방법으로 데이터를 백업 해야함

Shield Heroku Connect: 사용 가능.

  • Shield Private Space에서는 일반적인 Heroku Connect 계획을 사용할 수 없음.
    보안이 강화된 Shield Connect 만 사용 가능

Shield Apache Kafka: 특정 규제 데이터 클래스의 스트리밍 가능.

  • mTLS (Mutual TLS):
    Shield Kafka 클러스터는 기본적으로 mTLS(상호 TLS)를 사용하여 안전한 통신을 보장합니다. 이는 양쪽이 서로를 인증하는 방식
    * Mutual TLS (Mutual Transport Layer Security)란?
    (Mutual TLS (mTLS)는 두 시스템 간의 통신을 안전하게 하는 보안 프로토콜입니다. 일반적인 TLS와 달리, mTLS에서는 통신하는 양쪽(클라이언트와 서버)이 서로를 인증. 서버는 클라이언트를, 클라이언트는 서버를 확인함. 인증서를 사용하여 인증함.)
  • 격리된 네트워크:
    Shield Kafka 클러스터는 보안이 강화된 Private Space 또는 Shield Space 내부에 위치함. 기본적적으로 내부에서만 접근할 수 있음.
  • 외부 IP 허용 목록:
    외부 자원이 Shield Kafka 클러스터에 접근하려면 그 자원의 IP 주소를 허용 목록에 추가해야 함.

Keystroke Logging : 모든 입력이 로그 스트림에 기록.

  • 목적: 사용자가 heroku run 세션에서 입력하는 모든 키 입력을 기록.
  • 사용 사례: 규제 요구 사항을 충족하기 위한 접근 감사.

Private Space Logging : 공간 수준에서 로깅 관리.

  • 목적: 공간 수준에서 로그를 캡처하고 관리
  • 로그 유형: 애플리케이션 로그, 데이터베이스 로그, 시스템 서비스 로그 등이 포함
  • 특징: 개별 애플리케이션이 아닌 전체 공간의 로그를 통합 관리하여 일관된 로그 설정을 보장

TLS 종료 요건: TLS 1.0 사용 불가.

암호화된 콘솔 세션: SSH로 암호화되며, SSH 키 등록 필요.

외부 연결 제한: 외부 Postgres 및 Redis 연결 비활성화.

Heroku Exec 지원 불가: 규정 준수 위해 지원하지 않음.

  • Heroku에서 제공하는 기능으로, 보안된 SSH 터널을 통해 dyno에 접속할 수 있게 해줍니다. 이를 통해 원격 디버깅, 포트 포워딩, 파일 복사 등의 작업을 수행

참고 링크 : https://devcenter.heroku.com/articles/shield-private-space

Leave a Comment