Collabora Online에서 파일 내보내기 옵션을 제한하는 방법 (코드)

Collabora Online CODE에서 파일 내보내기를 제한하려면 WOPI 호스트가 응답 DisableExport: true에서 CheckFileInfo해당 파일과 사용자를 명시하도록 설정하십시오. HideExportOption: true또한 편집기 메뉴에서 "다른 이름으로 다운로드" 명령이 제거되도록 설정하십시오. 첫 번째 속성은 백엔드에서 Collabora의 내보내기 기능을 비활성화하고, 두 번째 속성은 표시 여부를 제어합니다. 표시 여부 플래그만 설정하는 것은 접근 제어 조치가 아닙니다.

CODE는 문서 편집기입니다. 표준 통합 방식에서는 Nextcloud, ownCloud 또는 사용자 지정 애플리케이션과 같은 별도의 WOPI 호스트가 원본 파일을 저장하고 Collabora에 파일 메타데이터와 권한을 제공합니다. 따라서 내보내기 권한은 일반적으로 Collabora 컨테이너의 설정에서 일괄적으로 설정하는 것이 아니라 호스트 통합에서 구성됩니다 coolwsd.xml.

시퀀스 다이어그램은 Collabora Online이 WOPI 호스트로부터 CheckFileInfo를 요청하고 내보내기 권한 필드를 수신하는 과정을 보여줍니다.
Collabora Online은 WOPI 호스트에 파일 정보를 요청하며, 호스트 응답에는 해당 문서 세션에 대한 내보내기 제한 사항이 포함될 수 있습니다.

동작에 맞는 컨트롤을 선택하세요

WOPI 속성 또는 제어이 제품의 기능은 무엇인가요?언제 사용해야 할까요?
HideExportOption파일 메뉴에서 "다운로드 형식"을 숨깁니다.백엔드 정책 시행과 함께 작동하여 사용자가 사용할 수 없는 명령을 보지 않도록 합니다.
DisableExportCollabora의 내보내기 기능을 비활성화하고 .을 암시합니다 HideExportOption.열려 있는 문서에서 내보내기를 특정 파일 또는 세션에 대해 차단해야 하는 경우.
UserCanNotWriteRelative호스트에게 사용자가 WOPI를 통해 상대 경로 또는 "다른 이름으로 저장" 기능을 사용하여 복사본을 저장할 수 없음을 알립니다. 호스트는 해당 요청을 거부해야 합니다.'다른 이름으로 저장' 또는 편집기를 통한 사본 생성 기능 또한 방지해야 합니다.
DisablePrintCollabora 백엔드에서 인쇄 기능을 비활성화하고 인쇄 옵션을 숨깁니다.인쇄도 제한된 경우에만 해당되며, 내보내기와는 별개입니다.

Collabora의 '다운로드/내보내기' 기능을 차단하려면 처음 두 필드를 사용하십시오. 정책에 다른 개별 작업도 포함되는 경우에만 다른 제어 항목을 추가하십시오. 메뉴 항목이 없다는 사실만으로는 다운로드가 차단되었다고 단정할 수 없습니다.

제한을 적용할 위치를 결정하세요

먼저 파일을 저장하고 Collabora에서 여는 애플리케이션을 식별합니다. WOPI 용어로 이 애플리케이션은 호스트입니다. Collabora는 호스트의 CheckFileInfo엔드포인트를 호출하여 파일 정보와 권한을 가져옵니다. 호스트는 누가 문서를 열었는지, 공유 폴더, 계정 또는 파일 정책에서 다운로드를 허용하는지 여부를 알고 있습니다.

  • Nextcloud 또는 다른 통합 파일 플랫폼을 사용하는 경우, 설치된 버전에서 "다운로드 숨기기" 또는 이와 유사한 정책을 제공하는 경우 해당 플랫폼에서 지원하는 공유 또는 보안 보기 설정을 사용하십시오. 통합 기능은 해당 정책을 WOPI 권한으로 변환할 수 있습니다. 어떤 내보내기, 인쇄, 복사 또는 직접 다운로드 경로가 차단되는지 추측하기 전에 실제 호스트 응답 또는 플랫폼의 최신 문서를 확인하십시오.
  • WOPI 호스트를 직접 운영하는 경우, JSON 응답을 생성하는 코드를 업데이트하세요 CheckFileInfo. 인증된 사용자의 권한과 파일 공유 정책을 기반으로 제한 사항을 계산하십시오.
  • 호스트에 대한 제어 권한이 없는 CODE 컨테이너 관리자는 호스트 관리자 또는 통합 개발자에게 해당 권한을 강제하도록 요청해야 합니다. CODE 컨테이너만 편집하면 인터페이스에서 특정 선택적 형식을 숨길 수 있지만, 파일별 WOPI 권한 정책을 제공하지는 않습니다.

Collabora의 현재 소스 구성은 extra_export_formats인터페이스 수준 옵션으로 설명되어 있습니다. 해당 선택적 형식을 비활성화해도 시각적으로만 숨겨질 뿐입니다. 이 설정을 서버 측 내보내기 강제 적용으로 간주해서는 안 됩니다. 이는 형식 메뉴 표시를 위한 것이며 호스트 권한을 대체하는 것이 아닙니다.

사용자 지정 WOPI 호스트에서 내보내기 권한을 설정합니다.

1. CheckFileInfo 응답 핸들러를 찾습니다.

Collabora의 WOPI 요청에 응답하는 경로를 찾으십시오 . 해당 경로가 액세스 토큰을 어떻게 인증하고 현재 사용자 및 파일에 어떻게 매핑하는지 확인하십시오. 호스트가 자체 권한 부여 규칙에 따라 유효성을 검사하지 않는 한 GET /wopi/files/{id}브라우저에서 제공하는 플래그(예: `---` 플래그)는 신뢰하지 마십시오 .?disableExport=true

2. 호스트의 정책으로부터 결정을 도출합니다.

서버 측 접근 제어 데이터를 사용하여 이 사용자가 해당 파일을 내보낼 수 있는지 여부를 결정하세요. 파일 소유자, 내부 편집자, 공개 링크 보기 사용자는 서로 다른 권한을 가질 수 있습니다. 특정 공유 폴더에 대한 제한이라면, 모든 사용자에게 영향을 미칠 수 있는 전역 환경 변수가 아닌 해당 공유 폴더의 정책을 기준으로 설정해야 합니다.

예시적인 의사 코드는 문서 액세스 정책을 DisableExport, HideExportOption 및 UserCanNotWriteRelative에 매핑합니다.
예시 의사 코드: 사용자의 선택 사항을 전역적으로 설정하는 대신 파일과 사용자의 실제 액세스 정책에서 WOPI 플래그를 도출합니다.

3. WOPI 필드 값을 부울 값으로 반환합니다.

JSON 응답에 두 개의 부울 필드를 추가합니다. 이는 기존의 완전한 응답에 병합할 조각이며 CheckFileInfo, 필수 파일 및 사용자 속성을 대체하는 것이 아닙니다.

JSON 편집기에서 HideExportOption, DisableExport 및 UserCanNotWriteRelative가 모두 true로 설정되어 있는 것을 확인할 수 있습니다.
CheckFileInfo 권한 필드 예시입니다. 호스트가 상대 경로 저장 요청을 거부하는 경우에만 '다른 이름으로 저장' 속성을 설정하십시오.
{
  "BaseFileName": "budget.xlsx",
  "Size": 48123,
  "UserId": "viewer-42",
  "OwnerId": "team-7",
  "UserCanWrite": false,
  "HideExportOption": true,
  "DisableExport": true
}

통합에서 이미 제공하는 필수 필드와 기능 플래그는 그대로 유지하세요. 문자열(예: `false` 또는 `false`) 대신 JSON true부울 값을 사용하세요 . 내보내기가 허용된 경우, 통합 및 Collabora 버전에 따라 지원하는 동작에 맞춰 선택적 속성을 false로 반환하거나 생략하세요.false"true""1"

4. 정책에서 요구하는 경우 '다른 이름으로 저장' 기능을 별도로 차단하십시오.

로컬 형식으로 내보내는 것과 WOPI 호스트에 사본을 저장하는 것은 서로 다른 작업입니다. 사용자가 편집기를 통해 "다른 이름으로 저장" 사본을 생성해서는 안 되는 경우, UserCanNotWriteRelative: true호스트가 해당 상대 경로 쓰기 요청을 거부하도록 해야 합니다. 모든 사본 생성 또는 저장 경로를 차단한다고 가정해서는 안 됩니다 . 마찬가지로, 인쇄가 정책에 포함되는 경우에만 해당 기능 DisableExport을 추가해야 합니다 .DisablePrint: true

Collabora 스타일의 파일 메뉴에서 '다운로드' 옵션이 빠져 있는 반면, 근처의 WOPI 권한 카드에는 'UserCanNotWriteRelative'가 활성화되어 있는 것으로 표시됩니다.
메뉴 모형에서는 "다운로드" 옵션이 생략되었습니다. "다른 이름으로 저장"은 WOPI 호스트가 상대 경로 저장이 허용되지 않을 경우 거부해야 하는 별도의 작업입니다.

통합 플랫폼에서 동일한 설정을 적용하십시오.

Nextcloud가 파일 및 공유를 관리할 때, 가장 부담이 적은 방법은 해당 공유 유형 및 버전에 대해 지원되는 다운로드 숨기기 또는 보안 보기 권한입니다. 현재 Nextcloud Richdocuments 소스는 호스트 측 다운로드 숨기기 정책을 Collabora의 필드에 매핑하며, 인쇄 및 복사 제한도 함께 적용됩니다 DisableExport. HideExportOption관리자에게 제공되는 정확한 제어 기능은 Nextcloud 릴리스, 에디션 및 공유 유형에 따라 다를 수 있으므로, 사용자 지정 WOPI 패치를 애플리케이션 파일에 복사하기보다는 설치된 제품에서 동작을 확인하는 것이 좋습니다.

다른 WOPI 호스트를 관리하는 경우 해당 호스트의 CheckFileInfo 응답에 필드를 구현하십시오. 문서화되지 않은 키를 추가하기 위해 Collabora에서 생성된 컨테이너 구성을 수정하지 마십시오. 파일별 권한은 WOPI 응답을 통해 전달됩니다. 호스트 코드 변경 후에는 해당 애플리케이션의 일반적인 릴리스 프로세스를 사용하여 배포하십시오. 일반적으로 Collabora를 다시 시작해도 호스트에서 생성된 권한 결정은 변경되지 않습니다. 새로운 CheckFileInfo 응답을 얻으려면 문서를 닫았다가 다시 여십시오.

제한 기능이 제대로 작동하는지 확인하십시오.

  1. 접근이 제한된 계정을 사용하여 테스트 문서를 엽니다.
  2. 애플리케이션 로그 또는 안전한 개발 추적에서 WOPI 호스트의 CheckFileInfo 응답을 검사합니다. 두 필드 모두 해당 세션에 대해 true로 설정된 JSON 부울 값인지 확인합니다.
  3. Collabora에서 "다운로드" 옵션이 없는지 확인하고 관련 내보내기 작업을 테스트하십시오. 초기 확인 시에는 실제 기밀 파일을 사용하지 마십시오.
  4. '다른 이름으로 저장' 기능도 차단해야 하는 경우, 호스트 측 상대 경로 쓰기 요청이 거부되는지 테스트하십시오. 호스트가 작업을 거부하더라도 메뉴 항목이 계속 표시될 수 있습니다.
  5. 내보내기 권한이 있는 별도의 문서를 엽니다. 변경 사항으로 인해 모든 사용자 또는 파일에 대한 내보내기 기능이 의도치 않게 비활성화되지 않았는지 확인합니다.
  6. 스토리지 플랫폼에서 직접 다운로드하는 기능을 별도로 테스트하십시오. Collabora의 내보내기 플래그는 Nextcloud, ownCloud, WebDAV 또는 다른 호스트 엔드포인트에서 원본 파일을 다운로드할 수 있는 사용자의 권한을 자동으로 취소하지 않습니다.

명령이 계속 표시되는 경우, 응답이 테스트한 파일 및 사용자에 대한 것인지 확인하고, 문서를 다시 열어 새 세션을 생성한 다음 호스트에서 실제로 메시지를 전송하는지 확인하십시오 HideExportOption. 버튼이 사라졌지만 다른 경로를 통해 내보내기가 여전히 작동하는 경우, DisableExport해당 작업이 스토리지 호스트에서 제공하는 다운로드 또는 통합별 postMessage 핸들러가 아닌 Collabora 내보내기인지 확인하십시오.

보안 한계 및 실질적인 권장 사항

이 설정은 Collabora에서 지원하는 내보내기 및 저장 작업을 제어합니다. 하지만 문서를 볼 수 있는 사용자가 스크린샷을 찍거나 화면을 촬영하거나 애플리케이션에서 볼 수 있도록 허용된 정보를 수동으로 복사하는 것을 막을 수는 없습니다. 또한 Collabora는 문서를 렌더링하기 위해 문서 콘텐츠를 수신해야 합니다. 더욱 강력한 데이터 제어를 위해서는 편집기 제한과 파일 호스트의 다운로드 권한, 액세스 토큰 범위, 공유 정책, 감사 로깅, 그리고 조직에서 승인한 워터마크 또는 데이터 손실 방지 제어 기능을 함께 사용하십시오. 이러한 제한은 지원되는 내보내기 경로를 제한하는 것이지, 보이는 콘텐츠를 복사할 수 없게 만드는 것이 아님을 명확히 설명해야 합니다.

대부분의 CODE 설치 환경에서는 호스트에서 생성된 WOPI CheckFileInfo 응답에 해당 사용자 및 문서에 맞게 범위를 지정하여 사용하십시오 DisableExport. HideExportOption호스트에서 직접 다운로드 및 다른 이름으로 저장 기능을 활성화하고 배포 후 제한된 세션과 허용된 세션을 모두 확인하십시오.

참고 자료

댓글 남기기

Microsoft Word에서 그림을 이동하는 방법

Microsoft Word에서 그림을 이동하는 방법

워드에서 그림을 드래그하여 이동하는 방법, 텍스트 줄 바꿈을 선택하는 방법, 단락에 그림을 함께 배치하거나 페이지에 고정하는 방법, 그리고 이동하지 않는 이미지를 해결하는 방법을 알아보세요.

엑셀에 체크박스를 삽입하는 두 가지 간편한 방법

엑셀에 체크박스를 삽입하는 두 가지 간편한 방법

셀 내 도구를 사용하여 Excel에 확인란을 삽입하는 방법, 수식을 사용하여 선택된 항목 수를 계산하는 방법, 또는 이전 데스크톱 버전에서 연결된 폼 컨트롤을 추가하는 방법을 알아보세요.

엑셀에서 알파벳 자동 완성하는 방법: A부터 Z까지, 그리고 그 이상

엑셀에서 알파벳 자동 완성하는 방법: A부터 Z까지, 그리고 그 이상

Excel에서 채우기 핸들 함수, SEQUENCE 함수 또는 재사용 가능한 사용자 지정 목록을 사용하여 A부터 Z까지의 소문자 또는 Z를 초과하는 레이블을 생성할 수 있습니다.

엑셀에서 취소선을 긋는 방법: 단축키 및 단계별 방법

엑셀에서 취소선을 긋는 방법: 단축키 및 단계별 방법

Windows, Mac 및 웹에서 Excel을 사용하여 셀에 취소선을 긋고, 셀의 일부 서식을 지정하고, 값을 삭제하지 않고 줄을 제거하는 방법을 알아보세요.

Microsoft Access란 무엇인가요? Microsoft Access의 데이터베이스 도구는 어떻게 작동하나요?

Microsoft Access란 무엇인가요? Microsoft Access의 데이터베이스 도구는 어떻게 작동하나요?

Microsoft Access는 관련 레코드를 저장하고, 쿼리를 작성하고, 데이터 입력 양식을 만들고, 보고서를 생성하는 데 사용할 수 있는 Windows 데이터베이스 응용 프로그램입니다. Access의 작동 방식과 적합한 사용 사례를 알아보세요.

Word 2010에서 눈금선 높이와 너비 변경하기

Word 2010에서 눈금선 높이와 너비 변경하기

Word 2010에서 격자선 높이와 너비를 조정하고, 표시되는 선의 빈도를 변경하고, 기본 가로 및 세로 그리기 격자 간격을 설정하는 방법을 알아보세요.

Office Outlook 2010 가져오기 및 내보내기: PST 파일을 이용한 데이터 이동

Office Outlook 2010 가져오기 및 내보내기: PST 파일을 이용한 데이터 이동

Outlook 2010으로 PST 파일을 가져오거나 메일, 연락처, 일정 및 작업을 내보내는 방법을 알아보세요. 올바른 메뉴를 따라가면 폴더 누락이나 중복을 방지할 수 있습니다.

Nucleus Kernel을 사용하여 Outlook PST 암호 복구하기

Nucleus Kernel을 사용하여 Outlook PST 암호 복구하기

Kernel에서 제공하는 최신 단계를 따라 잊어버린 Outlook PST 암호를 복구하세요. 여기에는 올바른 파일을 식별하는 방법, 백업을 만드는 방법, 도구의 한계를 확인하는 방법이 포함됩니다.

파워포인트 슬라이드에 웹페이지를 삽입하는 방법

파워포인트 슬라이드에 웹페이지를 삽입하는 방법

LiveWeb 추가 기능을 사용하여 PowerPoint 슬라이드에 웹사이트를 배치하고, 크기와 새로 고침 동작을 설정하고, 발표 전에 호환성을 확인할 수 있습니다.

Access 2010 데이터베이스를 폼에서 열 수 있도록 하는 방법

Access 2010 데이터베이스를 폼에서 열 수 있도록 하는 방법

Access 2010 데이터베이스 응용 프로그램을 데이터 입력 양식으로 바로 열도록 설정하고, 개체 목록을 숨기고, 메뉴를 제한하고, 공유하기 전에 설정을 확인합니다.