InfoGrab DocsInfoGrab Docs

실행 데이터 편집(Redaction)

요약

데이터 편집(Redaction)은 Enterprise 셀프 호스팅 및 Enterprise Cloud 플랜에서 사용할 수 있습니다. 적용 버전: n8n 버전 2.16.0부터 실행 데이터 편집(Redaction)을 사용하면 워크플로 실행의 입력 및 출력 데이터를 숨길 수 있습니다.

기능 가용성

데이터 편집(Redaction)은 Enterprise 셀프 호스팅 및 Enterprise Cloud 플랜에서 사용할 수 있습니다.

적용 버전: n8n 버전 2.16.0부터

실행 데이터 편집(Redaction)을 사용하면 워크플로 실행의 입력 및 출력 데이터를 숨길 수 있습니다. 이를 통해 워크플로를 볼 수 있지만 기저 데이터를 볼 필요는 없는 사용자로부터 개인 데이터, 인증 토큰, 금융 기록 등 민감한 정보를 보호할 수 있습니다.

편집(Redaction)을 활성화하면 실행 메타데이터(상태, 타이밍, 노드 이름)는 계속 표시되지만, n8n은 각 노드에서 처리된 실제 데이터 페이로드를 편집 표시자로 대체합니다.

실행 데이터 편집을 사용하는 이유#

워크플로는 워크플로 빌더나 뷰어가 n8n 외부에서 접근해서는 안 되는 데이터를 처리하는 경우가 많습니다. 일반적인 시나리오는 다음과 같습니다:

  • 개인정보 보호 및 컴플라이언스: 고객 개인 데이터(이메일, 주소, 금융 기록)를 처리하는 워크플로는 GDPR, SOC 2 또는 내부 보안 기준을 충족해야 합니다.
  • 부서 간 워크플로: 한 팀이 구축한 워크플로가 빌더가 다른 방법으로는 접근할 수 없는 다른 팀의 민감한 데이터를 처리합니다.
  • 최소 권한 원칙: 워크플로 보기 접근 권한이 있는 모든 사람이 아닌, 필요한 사람에게만 데이터 가시성을 제한합니다.

실행 데이터 편집 이전에는 워크플로 수준에서 실행 기록을 완전히 비활성화하는 방법만 있었으며, 이 경우 워크플로 성공 또는 실패 상태에 대한 모든 가시성이 제거되었습니다. 실행 데이터 편집은 민감한 데이터 페이로드를 숨기면서도 실행 모니터링을 유지합니다.

편집 설정 구성#

편집은 워크플로 설정에서 워크플로별로 구성합니다. 이 설정을 변경하려면 workflow:enableRedaction 또는 workflow:disableRedaction 범위(또는 둘 다)가 필요합니다.

편집을 구성하려면:

  1. 워크플로를 엽니다.
  2. 오른쪽 상단 모서리에서 세 점 아이콘 three dots icon을 선택합니다.
  3. **설정(Settings)**을 선택합니다.
  4. 프로덕션 실행 데이터 편집(Redact production execution data)수동 실행 데이터 편집(Redact manual execution data) 설정을 찾습니다.
  5. 각 설정에 대해 기본값 - 편집하지 않음(Default - Do not redact) 또는 편집(Redact) 중 하나를 선택합니다.
  6. **저장(Save)**을 선택합니다.

편집 설정 설명#

편집을 제어하는 두 가지 독립적인 토글이 있습니다:

설정 제어 대상
프로덕션 실행 데이터 편집(Redact production execution data) n8n이 프로덕션(수동으로 트리거되지 않은) 실행에서 데이터를 편집할지 여부를 제어합니다. 프로덕션 실행에는 워크플로가 활성 상태일 때 웹훅, 스케줄 또는 기타 트리거에 의해 트리거된 실행이 포함됩니다.
수동 실행 데이터 편집(Redact manual execution data) n8n이 수동으로 트리거된 실행에서 데이터를 편집할지 여부를 제어합니다. 수동 실행에는 편집기에서 Execute Workflow를 선택하여 시작하는 실행이 포함됩니다.

편집된 데이터의 모습#

n8n이 실행을 편집할 때:

  • n8n은 각 노드의 모든 입력 및 출력 데이터를 빈 객체로 대체합니다.
  • n8n은 바이너리 데이터(파일, 이미지)를 제거합니다.
  • n8n은 오류 메시지를 편집하여 문제 해결을 지원하기 위해 오류 유형과 HTTP 상태 코드(API 오류의 경우)만 보존합니다.
  • 실행 뷰어는 일반적인 데이터 테이블 대신 분쇄기 아이콘과 함께 "데이터가 편집됨(Data redacted)" 표시자를 표시합니다.
  • 실행 메타데이터는 계속 표시됩니다: 노드 이름, 실행 상태(성공/실패), 타이밍 정보, 워크플로 구조.
오류 정보

n8n이 실행 데이터를 편집할 때 오류 메시지를 통해 민감한 정보가 누출되지 않도록 오류 세부 정보도 편집합니다. 오류 유형(예: NodeApiError)과 HTTP 상태 코드만 남습니다. 이는 데이터를 노출하지 않으면서 실패 카테고리를 식별하기에 충분한 정보를 제공합니다.

편집된 데이터 공개#

실행 데이터 공개(Reveal execution data) (execution:reveal) 범위를 가진 사용자는 특정 실행에 대해 편집된 실행 데이터를 일시적으로 볼 수 있습니다. 인스턴스 소유자와 관리자는 기본적으로 이 범위를 가집니다.

데이터를 공개하려면:

  1. 실행 뷰어에서 실행을 엽니다.
  2. 편집된 데이터 영역에 표시된 데이터 공개(Reveal data) 버튼을 선택합니다.
  3. 확인 대화 상자를 검토합니다. 다음 내용을 설명합니다:
    • 시스템이 감사 추적에 작업을 기록합니다.
    • 정당한 이유가 있는 경우에만 데이터를 공개해야 합니다.
    • 불필요한 접근은 조직 정책을 위반할 수 있습니다.
  4. **데이터 공개(Reveal data)**를 선택하여 확인합니다.

현재 세션에서 해당 실행의 실행 데이터가 표시됩니다.

감사 로깅#

로그 스트리밍은 모든 공개 작업을 추적합니다. 두 가지 감사 이벤트를 사용할 수 있습니다:

이벤트 설명
n8n.audit.execution.data.revealed 사용자가 편집된 실행 데이터를 공개할 때 n8n이 이 이벤트를 발생시킵니다. 사용자, 실행 ID, 워크플로 ID, 타임스탬프, IP 주소 및 적용된 편집 정책이 포함됩니다.
n8n.audit.execution.data.reveal_failure n8n이 공개 시도를 거부할 때(예: 권한 부족) 이 이벤트를 발생시킵니다. 동일한 필드에 거부 이유가 추가로 포함됩니다.

이러한 이벤트는 기존 로그 스트리밍 대상(syslog, 웹훅, Sentry)과 통합되며 컴플라이언스 보고 및 접근 감사를 지원합니다.

권한 범위#

실행 데이터 편집은 커스텀 프로젝트 역할을 통해 할당할 수 있는 다음 권한 범위를 도입합니다:

범위 목적
workflow:enableRedaction 워크플로 설정에서 편집을 켤 수 있습니다. 역할 구성 UI에서 **데이터 편집 활성화(Enable data redaction)**로 표시됩니다.
workflow:disableRedaction 워크플로 설정에서 편집을 끌 수 있습니다. 역할 구성 UI에서 **데이터 편집 비활성화(Disable data redaction)**로 표시됩니다.

기본적으로 인스턴스 소유자, 관리자, 프로젝트 관리자는 편집을 활성화 또는 비활성화하고 편집된 데이터를 공개할 권한을 가집니다. 워크플로 빌더와 같은 더 많은 사용자에게 두 범위 중 하나 또는 모두를 독립적으로 부여하는 커스텀 역할을 만들 수 있습니다.

모범 사례#

올바른 편집 정책 선택#

시나리오 권장 설정
프로덕션에서 개인정보, 금융 데이터 또는 인증 토큰을 처리하는 워크플로 프로덕션 실행 데이터 편집
테스트 데이터도 민감한 워크플로(예: 프로덕션 데이터 복사본 사용) 프로덕션 및 수동 실행 데이터 모두 편집
민감하지 않은 데이터를 처리하는 워크플로 또는 초기 개발 중 편집 없음

일반 권장 사항#

  • 프로덕션 편집부터 시작하기: 민감한 데이터를 처리하는 대부분의 워크플로에서, 수동 실행을 표시 상태로 유지하면서 프로덕션 실행을 편집하면 보안과 디버깅 용이성 사이의 균형이 적절합니다.
  • 필요 시 수동 데이터 편집하기: 테스트 환경에서 실제 또는 프로덕션과 유사한 데이터를 사용하는 경우 수동 실행 편집도 활성화하세요.
  • 로그 스트리밍 사용하기: 로그 스트리밍을 활성화하여 공개 감사 이벤트를 캡처하세요. 컴플라이언스를 위한 감사 추적을 제공하고 민감한 실행 데이터에 접근하는 사람을 모니터링할 수 있습니다.
  • 워크플로 검토 시 편집 설정 검토하기: 특히 부서 간 또는 고객 대면 데이터를 처리하는 워크플로의 경우, 워크플로 검토 또는 승인 프로세스의 일부로 편집 정책을 포함하세요.

보안 고려사항#

  • n8n은 API 수준에서 편집을 적용하며 편집된 데이터를 브라우저로 전송하지 않습니다.
  • 커스텀 노드를 생성할 때, 특정 출력 필드를 민감한 것으로 선언할 수 있습니다(노드 유형 정의에서 sensitiveOutputFields 사용). n8n은 이러한 필드를 항상 편집하며, 공개 접근 권한이 있는 사용자라도 공개할 수 없습니다.
  • 편집 서비스가 노드의 유형 정의를 해석할 수 없는 경우(예: 커뮤니티 노드 제거 후), n8n은 해당 노드의 모든 출력 데이터를 완전히 편집합니다. 이 폴드-클로즈드(fail-closed) 방식은 알 수 없는 노드가 민감한 필드를 누출하는 것을 방지합니다.
  • 편집은 데이터베이스에 실행 데이터가 저장되는 방식을 변경하지 않습니다. 편집이 활성화된 경우에도 기저 데이터는 암호화되거나 다르게 저장되지 않습니다. 편집은 API 레이어에서 가시성을 제어합니다.
  • 편집이 활성화된 경우, 실행 데이터는 로그 스트리밍 및 로깅 출력에서도 자동으로 편집됩니다.

실행 데이터 편집(Redaction)

n8n v2.25
원문 보기
요약

데이터 편집(Redaction)은 Enterprise 셀프 호스팅 및 Enterprise Cloud 플랜에서 사용할 수 있습니다. 적용 버전: n8n 버전 2.16.0부터 실행 데이터 편집(Redaction)을 사용하면 워크플로 실행의 입력 및 출력 데이터를 숨길 수 있습니다.

기능 가용성

데이터 편집(Redaction)은 Enterprise 셀프 호스팅 및 Enterprise Cloud 플랜에서 사용할 수 있습니다.

적용 버전: n8n 버전 2.16.0부터

실행 데이터 편집(Redaction)을 사용하면 워크플로 실행의 입력 및 출력 데이터를 숨길 수 있습니다. 이를 통해 워크플로를 볼 수 있지만 기저 데이터를 볼 필요는 없는 사용자로부터 개인 데이터, 인증 토큰, 금융 기록 등 민감한 정보를 보호할 수 있습니다.

편집(Redaction)을 활성화하면 실행 메타데이터(상태, 타이밍, 노드 이름)는 계속 표시되지만, n8n은 각 노드에서 처리된 실제 데이터 페이로드를 편집 표시자로 대체합니다.

실행 데이터 편집을 사용하는 이유#

워크플로는 워크플로 빌더나 뷰어가 n8n 외부에서 접근해서는 안 되는 데이터를 처리하는 경우가 많습니다. 일반적인 시나리오는 다음과 같습니다:

  • 개인정보 보호 및 컴플라이언스: 고객 개인 데이터(이메일, 주소, 금융 기록)를 처리하는 워크플로는 GDPR, SOC 2 또는 내부 보안 기준을 충족해야 합니다.
  • 부서 간 워크플로: 한 팀이 구축한 워크플로가 빌더가 다른 방법으로는 접근할 수 없는 다른 팀의 민감한 데이터를 처리합니다.
  • 최소 권한 원칙: 워크플로 보기 접근 권한이 있는 모든 사람이 아닌, 필요한 사람에게만 데이터 가시성을 제한합니다.

실행 데이터 편집 이전에는 워크플로 수준에서 실행 기록을 완전히 비활성화하는 방법만 있었으며, 이 경우 워크플로 성공 또는 실패 상태에 대한 모든 가시성이 제거되었습니다. 실행 데이터 편집은 민감한 데이터 페이로드를 숨기면서도 실행 모니터링을 유지합니다.

편집 설정 구성#

편집은 워크플로 설정에서 워크플로별로 구성합니다. 이 설정을 변경하려면 workflow:enableRedaction 또는 workflow:disableRedaction 범위(또는 둘 다)가 필요합니다.

편집을 구성하려면:

  1. 워크플로를 엽니다.
  2. 오른쪽 상단 모서리에서 세 점 아이콘 three dots icon을 선택합니다.
  3. **설정(Settings)**을 선택합니다.
  4. 프로덕션 실행 데이터 편집(Redact production execution data)수동 실행 데이터 편집(Redact manual execution data) 설정을 찾습니다.
  5. 각 설정에 대해 기본값 - 편집하지 않음(Default - Do not redact) 또는 편집(Redact) 중 하나를 선택합니다.
  6. **저장(Save)**을 선택합니다.

편집 설정 설명#

편집을 제어하는 두 가지 독립적인 토글이 있습니다:

설정 제어 대상
프로덕션 실행 데이터 편집(Redact production execution data) n8n이 프로덕션(수동으로 트리거되지 않은) 실행에서 데이터를 편집할지 여부를 제어합니다. 프로덕션 실행에는 워크플로가 활성 상태일 때 웹훅, 스케줄 또는 기타 트리거에 의해 트리거된 실행이 포함됩니다.
수동 실행 데이터 편집(Redact manual execution data) n8n이 수동으로 트리거된 실행에서 데이터를 편집할지 여부를 제어합니다. 수동 실행에는 편집기에서 Execute Workflow를 선택하여 시작하는 실행이 포함됩니다.

편집된 데이터의 모습#

n8n이 실행을 편집할 때:

  • n8n은 각 노드의 모든 입력 및 출력 데이터를 빈 객체로 대체합니다.
  • n8n은 바이너리 데이터(파일, 이미지)를 제거합니다.
  • n8n은 오류 메시지를 편집하여 문제 해결을 지원하기 위해 오류 유형과 HTTP 상태 코드(API 오류의 경우)만 보존합니다.
  • 실행 뷰어는 일반적인 데이터 테이블 대신 분쇄기 아이콘과 함께 "데이터가 편집됨(Data redacted)" 표시자를 표시합니다.
  • 실행 메타데이터는 계속 표시됩니다: 노드 이름, 실행 상태(성공/실패), 타이밍 정보, 워크플로 구조.
오류 정보

n8n이 실행 데이터를 편집할 때 오류 메시지를 통해 민감한 정보가 누출되지 않도록 오류 세부 정보도 편집합니다. 오류 유형(예: NodeApiError)과 HTTP 상태 코드만 남습니다. 이는 데이터를 노출하지 않으면서 실패 카테고리를 식별하기에 충분한 정보를 제공합니다.

편집된 데이터 공개#

실행 데이터 공개(Reveal execution data) (execution:reveal) 범위를 가진 사용자는 특정 실행에 대해 편집된 실행 데이터를 일시적으로 볼 수 있습니다. 인스턴스 소유자와 관리자는 기본적으로 이 범위를 가집니다.

데이터를 공개하려면:

  1. 실행 뷰어에서 실행을 엽니다.
  2. 편집된 데이터 영역에 표시된 데이터 공개(Reveal data) 버튼을 선택합니다.
  3. 확인 대화 상자를 검토합니다. 다음 내용을 설명합니다:
    • 시스템이 감사 추적에 작업을 기록합니다.
    • 정당한 이유가 있는 경우에만 데이터를 공개해야 합니다.
    • 불필요한 접근은 조직 정책을 위반할 수 있습니다.
  4. **데이터 공개(Reveal data)**를 선택하여 확인합니다.

현재 세션에서 해당 실행의 실행 데이터가 표시됩니다.

감사 로깅#

로그 스트리밍은 모든 공개 작업을 추적합니다. 두 가지 감사 이벤트를 사용할 수 있습니다:

이벤트 설명
n8n.audit.execution.data.revealed 사용자가 편집된 실행 데이터를 공개할 때 n8n이 이 이벤트를 발생시킵니다. 사용자, 실행 ID, 워크플로 ID, 타임스탬프, IP 주소 및 적용된 편집 정책이 포함됩니다.
n8n.audit.execution.data.reveal_failure n8n이 공개 시도를 거부할 때(예: 권한 부족) 이 이벤트를 발생시킵니다. 동일한 필드에 거부 이유가 추가로 포함됩니다.

이러한 이벤트는 기존 로그 스트리밍 대상(syslog, 웹훅, Sentry)과 통합되며 컴플라이언스 보고 및 접근 감사를 지원합니다.

권한 범위#

실행 데이터 편집은 커스텀 프로젝트 역할을 통해 할당할 수 있는 다음 권한 범위를 도입합니다:

범위 목적
workflow:enableRedaction 워크플로 설정에서 편집을 켤 수 있습니다. 역할 구성 UI에서 **데이터 편집 활성화(Enable data redaction)**로 표시됩니다.
workflow:disableRedaction 워크플로 설정에서 편집을 끌 수 있습니다. 역할 구성 UI에서 **데이터 편집 비활성화(Disable data redaction)**로 표시됩니다.

기본적으로 인스턴스 소유자, 관리자, 프로젝트 관리자는 편집을 활성화 또는 비활성화하고 편집된 데이터를 공개할 권한을 가집니다. 워크플로 빌더와 같은 더 많은 사용자에게 두 범위 중 하나 또는 모두를 독립적으로 부여하는 커스텀 역할을 만들 수 있습니다.

모범 사례#

올바른 편집 정책 선택#

시나리오 권장 설정
프로덕션에서 개인정보, 금융 데이터 또는 인증 토큰을 처리하는 워크플로 프로덕션 실행 데이터 편집
테스트 데이터도 민감한 워크플로(예: 프로덕션 데이터 복사본 사용) 프로덕션 및 수동 실행 데이터 모두 편집
민감하지 않은 데이터를 처리하는 워크플로 또는 초기 개발 중 편집 없음

일반 권장 사항#

  • 프로덕션 편집부터 시작하기: 민감한 데이터를 처리하는 대부분의 워크플로에서, 수동 실행을 표시 상태로 유지하면서 프로덕션 실행을 편집하면 보안과 디버깅 용이성 사이의 균형이 적절합니다.
  • 필요 시 수동 데이터 편집하기: 테스트 환경에서 실제 또는 프로덕션과 유사한 데이터를 사용하는 경우 수동 실행 편집도 활성화하세요.
  • 로그 스트리밍 사용하기: 로그 스트리밍을 활성화하여 공개 감사 이벤트를 캡처하세요. 컴플라이언스를 위한 감사 추적을 제공하고 민감한 실행 데이터에 접근하는 사람을 모니터링할 수 있습니다.
  • 워크플로 검토 시 편집 설정 검토하기: 특히 부서 간 또는 고객 대면 데이터를 처리하는 워크플로의 경우, 워크플로 검토 또는 승인 프로세스의 일부로 편집 정책을 포함하세요.

보안 고려사항#

  • n8n은 API 수준에서 편집을 적용하며 편집된 데이터를 브라우저로 전송하지 않습니다.
  • 커스텀 노드를 생성할 때, 특정 출력 필드를 민감한 것으로 선언할 수 있습니다(노드 유형 정의에서 sensitiveOutputFields 사용). n8n은 이러한 필드를 항상 편집하며, 공개 접근 권한이 있는 사용자라도 공개할 수 없습니다.
  • 편집 서비스가 노드의 유형 정의를 해석할 수 없는 경우(예: 커뮤니티 노드 제거 후), n8n은 해당 노드의 모든 출력 데이터를 완전히 편집합니다. 이 폴드-클로즈드(fail-closed) 방식은 알 수 없는 노드가 민감한 필드를 누출하는 것을 방지합니다.
  • 편집은 데이터베이스에 실행 데이터가 저장되는 방식을 변경하지 않습니다. 편집이 활성화된 경우에도 기저 데이터는 암호화되거나 다르게 저장되지 않습니다. 편집은 API 레이어에서 가시성을 제어합니다.
  • 편집이 활성화된 경우, 실행 데이터는 로그 스트리밍 및 로깅 출력에서도 자동으로 편집됩니다.