다음을 통해 공유


사용자 지정 스크립트 허용 시 보안 고려 사항

사용자가 스크립트를 삽입하여 SharePoint에서 사이트 및 페이지를 사용자 지정할 수 있도록 허용하면 조직의 다양한 요구 사항을 유연하게 해결할 수 있습니다. 그러나 사용자 지정 스크립트의 보안 영향을 알고 있어야 합니다.

사용자가 사용자 지정 스크립트를 실행하도록 허용하면 더 이상 거버넌스를 적용하거나, 삽입된 코드의 기능 범위를 지정하거나, 코드의 특정 부분을 차단하거나, 배포된 모든 사용자 지정 코드를 차단할 수 없습니다. 사용자 지정 스크립트를 허용하는 대신 SharePoint Framework를 사용하는 것이 좋습니다. 자세한 내용은 사용자 지정 스크립트에 대한 대안을 참조하세요.

사용자 지정 스크립트가 수행할 수 있는 작업

SharePoint 페이지에서 실행되는 모든 스크립트(문서 라이브러리의 HTML 페이지이든 스크립트 편집기 웹 파트의 JavaScript이든 관계없이)는 항상 페이지 및 SharePoint 애플리케이션을 방문하는 사용자의 컨텍스트에서 실행됩니다. 의미는 다음과 같습니다.

  • 스크립트는 사용자가 액세스할 수 있는 모든 항목에 액세스할 수 있습니다.

  • 스크립트는 Microsoft Graph 통합을 통해 여러 Microsoft 365 서비스 및 그 너머의 콘텐츠에 액세스할 수 있습니다.

스크립트 삽입을 감사할 수 없습니다.

SharePoint 관리자이상에서는 전체 조직 또는 특정 사이트 모음에 대한 사용자 지정 스크립트 기능을 허용하거나 차단할 수 있습니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 사용자 지정 스크립트 허용 또는 방지를 참조하세요. 그러나 스크립팅을 허용하면 다음을 식별할 수 없습니다.

  • 삽입된 코드

  • 코드가 삽입된 위치

  • 코드를 삽입한 사용자

페이지 또는 문서 라이브러리에 "페이지 추가 및 사용자 지정" 권한(디자인 및 모든 권한 수준의 일부)이 있는 사용자는 조직의 모든 사용자 및 리소스에 강력한 영향을 미칠 수 있는 코드를 삽입할 수 있습니다.

스크립트는 페이지 또는 사이트 이상에 액세스할 수 있습니다. 이 스크립트는 조직의 모든 사이트 모음 및 기타 Microsoft 365 서비스에서 콘텐츠에 액세스할 수 있습니다. 스크립트를 실행하기 위한 경계가 없습니다. 감사할 수 있는 사이트 활동에 대한 자세한 내용은 사이트 모음에 대한 감사 설정 구성을 참조하세요.

삽입된 스크립트를 차단하거나 제거할 수 없습니다.

사용자 지정 스크립트를 허용한 경우 나중에 사용자가 사용자 지정 스크립트를 추가하지 못하도록 설정을 변경할 수 있지만 이미 삽입된 스크립트의 실행을 차단할 수는 없습니다. 위험하거나 악의적인 스크립트를 삽입하는 경우 이를 중지할 수 있는 유일한 방법은 호스트하는 페이지를 삭제하는 것입니다. 이로 인해 데이터가 손실될 수 있습니다.

사용자 지정 스크립트의 대안

SharePoint Framework는 오픈 소스 도구를 지원하는 스크립팅 기술을 사용하여 솔루션을 빌드하는 관리되고 완벽하게 지원되는 방법을 제공하는 페이지 및 웹 파트 모델입니다. SharePoint Framework의 주요 기능:

  • 프레임워크는 브라우저에서 현재 사용자 및 연결의 컨텍스트에서 실행됩니다.

  • 컨트롤은 일반 페이지 DOM(문서 개체 모델)에서 렌더링됩니다.

  • 컨트롤은 응답성이 뛰어나고 액세스할 수 있습니다.

  • 개발자는 수명 주기에 액세스할 수 있습니다. 또한 렌더링하기 위해 로드, 직렬화 및 역직렬화, 구성 변경 등에 액세스할 수 있습니다.

  • React, Handlebars, Knockout, Angular 등 원하는 브라우저 프레임워크를 사용할 수 있습니다.

  • 도구 체인은 npm, TypeScript, Yeoman, webpack 및 gulp와 같은 일반적인 오픈 소스 클라이언트 개발 도구를 기반으로 합니다.

  • 관리자는 사용된 인스턴스 수와 사용된 페이지 또는 사이트 수에 관계없이 솔루션을 즉시 사용하지 않도록 설정하는 거버넌스 도구가 있습니다.

  • 클래식 환경 또는 새 환경을 사용하는 웹 파트 및 페이지에 솔루션을 배포할 수 있습니다.

  • 전역 관리자, SharePoint 관리자 및 앱 사이트를 관리할 수 있는 권한이 부여된 사용자만 솔루션을 추가할 수 있습니다. 사용자에게 앱 사이트를 관리할 수 있는 권한을 부여하는 방법에 대한 자세한 내용은 앱 설치 권한 요청을 참조하세요.