다음을 통해 공유


SharePoint Server에서 최소 권한 관리 계획

적용 대상:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

최소 권한 관리의 개념은 사용자가 권한 있는 작업을 완료하는 데 필요한 최소 권한을 사용자에게 할당하는 것입니다. 최소 권한 관리의 목표는 환경의 보안 제어 수준을 구성하고 유지하는 것입니다. 그 결과 서비스가 실행되는 각 계정에 필요한 리소스에 대한 액세스 권한만 부여됩니다.

최소 권한 관리로 SharePoint Server를 배포하는 것이 좋습니다. 최소 권한 관리를 구현하면 이 수준의 관리를 유지하기 위해 다른 리소스가 필요할 수 있으므로 운영 비용이 증가할 수 있습니다. 또한 보안 문제를 해결하는 기능은 더욱 복잡해집니다.

소개

조직은 일반적으로 권장되는 것보다 나은 보안 수준을 얻기 위해 최소 권한 관리를 구현합니다. 최소 권한 관리 유지 관리의 리소스 비용 때문에 소수의 조직만 이 강화된 수준의 보안이 필요합니다. 이러한 강화된 수준의 보안이 필요할 수 있는 일부 배포에는 정부 기관, 보안 조직 및 금융 서비스 산업의 조직이 포함됩니다. 최소 권한 환경의 구현은 모범 사례와 혼동해서는 안 됩니다. 최소 권한 환경에서 관리자는 다른 강화된 보안 수준과 함께 모범 사례를 구현합니다.

계정 및 서비스에 대한 최소 권한 환경

최소 권한 관리를 계획하려면 몇 가지 계정, 역할 및 서비스를 고려해야 합니다. 일부는 SQL Server에 적용되고 일부는 SharePoint Server에 적용됩니다. 관리자가 다른 계정 및 서비스를 잠그면 일일 운영 비용이 증가할 수 있습니다.

SQL Server 역할

SharePoint Server 환경에서는 다음과 같은 두 개의 SQL Server 서버 수준 역할이 여러 계정에 부여될 수 있습니다. 최소 권한의 SharePoint Server 환경에서는 Microsoft SharePoint Foundation 워크플로 타이머 서비스가 실행되는 계정에만 이러한 권한을 부여하는 것이 좋습니다. 일반적으로 타이머 서비스는 서버 팜 계정에서 실행됩니다. 일상적인 작업의 경우 SharePoint 관리에 사용되는 다른 모든 계정에서 다음 두 개의 SQL Server 서버 수준 역할을 제거하는 것이 좋습니다.

  • Dbcreator - dbcreator 고정 서버 역할의 구성원은 모든 데이터베이스를 만들고, 수정, 삭제 및 복원할 수 있습니다.

  • Securityadmin - securityadmin 고정 서버 역할의 멤버는 로그인 및 해당 속성을 관리합니다. 이러한 사용자는 서버 수준의 권한에 대해 GRANT, DENY 및 REVOKE를 수행할 수 있습니다. 이러한 사용자는 데이터베이스에 대한 액세스 권한 있는 경우 데이터베이스 수준의 권한에 대해 GRANT, DENY 및 REVOKE를 수행할 수 있습니다. 또한 SQL Server 로그인에 대한 암호를 재설정할 수 있습니다.

참고

데이터베이스 엔진에 대한 액세스 권한을 부여하고 사용자 권한을 구성하는 기능을 사용하면 securityadmin이 대부분의 서버 권한을 할당할 수 있습니다. securityadmin 역할을 sysadmin 역할과 동일하게 처리해야 합니다.

SQL Server 서버 수준 역할에 대한 자세한 내용은 서버 수준 역할을 참조하세요.

이러한 SQL Server 역할 중 하나 이상을 제거하는 경우 중앙 관리 웹 사이트에서 "예기치 않은" 오류 메시지가 표시될 수 있습니다. 또한 ULS(통합 로깅 서비스) 로그 파일에 다음 메시지가 표시될 수 있습니다.

System.Data.SqlClient.SqlException... <데이터베이스 <데이터베이스>에서 작업 유형> 권한이 거부되었습니다. 테이블 <테이블>

표시될 수 있는 오류 메시지와 함께 사용자가 다음과 같은 작업을 수행하지 못할 수 있습니다.

  • 데이터베이스 쓰기 오류로 인한 팜 백업 복원

  • 서비스 인스턴스 또는 웹 응용 프로그램 프로비전

  • 관리되는 계정 구성

  • 웹 응용 프로그램에 대한 관리되는 계정 변경

  • 중앙 관리 웹 사이트를 사용해야 하는 모든 데이터베이스, 관리되는 계정 또는 서비스 작업

특정 상황에서 DBA(데이터베이스 관리자)는 SharePoint Server 관리자와 독립적으로 작동하고 모든 데이터베이스를 만들고 관리하려고 할 수 있습니다. 이는 보안 요구 사항과 회사 정책에서 별개의 관리자 역할을 요구하는 IT 환경에서 일반적입니다. 팜 관리자는 DBA에 SharePoint Server 데이터베이스 요구 사항을 제공하며, DBA는 필요한 데이터베이스를 만들고 팜에 필요한 로그인을 설정합니다.

기본적으로 DBA는 SQL Server 인스턴스에 대한 완전한 액세스 권한을 가지지만 SharePoint Server에 액세스하려면 추가 권한이 필요합니다. DBA는 일반적으로 SharePoint 데이터베이스를 추가, 만들기, 이동 또는 이름을 바꿀 때 Windows PowerShell 3.0을 사용하므로 다음 계정의 멤버여야 합니다.

  • SQL Server 인스턴스에 대한 Securityadmin 고정 서버 역할

  • SharePoint 팜의 모든 데이터베이스에 대한 Db_owner 고정 데이터베이스 역할

  • PowerShell cmdlet을 실행하는 컴퓨터의 Administrators 그룹

또한 DBA는 SharePoint 콘텐츠 데이터베이스에 액세스하기 위해 SharePoint_Shell_Access 역할의 멤버여야 할 수 있습니다. 경우에 따라 DBA는 db_owner 역할에 설치 사용자 계정을 추가할 수 있습니다.

SharePoint Server 역할 및 서비스

일반적으로 SharePoint Server 서비스 계정에서 새 데이터베이스를 만드는 기능을 제거해야 합니다. SharePoint Server 서비스 계정에는 SQL Server 인스턴스에 대한 sysadmin 역할이 없어야 하며, SQL Server를 실행하는 서버의 로컬 관리자가 SharePoint Server 서비스 계정이 아니어야 합니다.

SharePoint Server 계정에 대한 자세한 내용은 SharePoint Server 2016의 계정 권한 및 보안 설정을 참조하세요.

SharePoint Server 2013의 계정 정보에 대해서는 SharePoint 2013의 계정 권한 및 보안 설정을 참조하세요.

다음 목록에서는 다른 SharePoint Server 역할 및 서비스의 잠금에 대해 설명합니다.

  • SharePoint_Shell_Access role

    이 SQL Server 역할을 제거하면 구성 및 콘텐츠 데이터베이스에 항목을 쓰는 기능과 Microsoft PowerShell을 사용하여 작업을 수행할 수 있는 기능이 제거됩니다. 이 역할에 대한 자세한 내용은 Add-SPShellAdmin을 참조하세요.

  • SharePoint Timer Service(SPTimerV4)

    이 서비스가 실행되는 계정에 부여된 기본 권한을 제한하지 말고 이 계정을 사용하지 않도록 설정하는 것이 좋습니다. 대신 암호가 널리 알려지지 않은 보안 사용자 계정을 사용하고 서비스를 실행 상태로 둡니다. 기본적으로 이 서비스는 SharePoint Server를 설치하고 구성 캐시 정보를 유지 관리할 때 설치됩니다. 서비스 유형을 사용 안 함으로 설정하면 다음과 같은 동작이 발생할 수 있습니다.

    • 타이머 작업이 실행되지 않음

    • 상태 분석기 규칙이 실행되지 않음

    • 유지 관리 및 팜 구성이 오래됨

  • SharePoint Administration service (SPAdminV4)

    이 서비스는 해당 서버에 대해 로컬 관리자 권한이 필요한 자동화된 변경을 수행합니다. 서비스가 실행되고 있지 않으면 서버 수준 관리 변경 내용을 수동으로 처리해야 합니다. 이 서비스가 실행되는 계정에 부여된 기본 권한을 제한하지 말고 이 계정을 사용하지 않도록 설정하는 것이 좋습니다. 대신 암호가 널리 알려지지 않은 보안 사용자 계정을 사용하고 서비스를 실행 상태로 둡니다. 서비스 유형을 사용 안 함으로 설정하면 다음과 같은 동작이 발생할 수 있습니다.

    • 관리 타이머 작업이 실행되지 않음

    • 웹 구성 파일이 업데이트되지 않음

    • 보안 및 로컬 그룹이 업데이트되지 않음

    • 레지스트리 값 및 키가 작성되지 않음

    • 서비스를 시작하거나 다시 시작할 수 없음

    • 서비스 프로비전을 완료할 수 없음

  • SPUserCodeV4 Service

    이 서비스를 사용하면 사이트 모음 관리자가 샌드박스 솔루션을 솔루션 갤러리에 업로드할 수 있습니다. 샌드박스 솔루션을 사용하지 않는 경우 이 서비스를 사용하지 않도록 설정할 수 있습니다.

  • Windows Token Service에 대한 클레임(C2WTS)

    기본적으로 이 서비스는 사용하지 않도록 설정됩니다. SharePoint 보안 토큰과 Windows 기반 ID 간에 변환해야 하는 Excel Services, PerformancePoint Services 또는 SharePoint 공유 서비스를 사용하여 배포하는 데 C2WTS 서비스가 필요할 수 있습니다. 예를 들어 외부 데이터 원본에 액세스하기 위해 Kerberos 제한 위임을 구성할 때 이 서비스를 사용합니다. C2WTS에 대한 자세한 내용은 SharePoint Server에서 Kerberos 인증 계획을 참조하세요.

경우에 따라 다음 기능에서 추가 증상이 발생할 수 있습니다.

  • Backup and restore

    데이터베이스 권한을 제거한 경우 백업에서 복원을 수행하는 기능이 실패할 수 있습니다.

  • 업그레이드

    업그레이드 프로세스가 올바르게 시작되지만 데이터베이스에 대한 적절한 권한이 없으면 실패합니다. 조직이 이미 최소 권한 환경에 있는 경우 해결 방법은 모범 사례 환경으로 이동하여 업그레이드를 완료한 다음, 최소 권한 환경으로 다시 이동하는 것입니다.

  • 업데이트

    팜에 소프트웨어 업데이트를 적용하는 기능은 구성 데이터베이스의 스키마에 성공하지만 콘텐츠 데이터베이스 및 서비스에서는 실패합니다.

최소 권한 환경에 대해 고려해야 하는 추가 요구 사항

이전 고려 사항 외에도 더 많은 작업을 고려해야 할 수 있습니다. 다음 목록은 불완전합니다. 사용자의 판단에 따라 적합한 항목을 선택적으로 사용하십시오.

  • 사용자 계정 설정 - 이 계정은 팜의 각 서버를 설정하는 데 사용됩니다. 계정은 SharePoint Server 팜의 각 서버에서 관리자 그룹의 구성원이어야 합니다. 이 계정에 대한 자세한 내용은 SharePoint Server의 초기 배포 관리 및 서비스 계정을 참조하세요.

    새 SharePoint 팜을 빌드하고 기반 빌드에 2022년 10월 CU 또는 빌드 프로세스에 새로 슬립스트림된 새 빌드가 있는 경우 최소 권한 보안 모델을 사용합니다. 팜의 첫 번째 서버에서 psconfig 를 완료한 후 팜 구성 마법사를 실행하거나 다른 구성 요소를 프로비전하기 전에 SharePoint 데이터베이스에 대한 액세스를 보장하기 위해 다음 명령을 실행해야 합니다.

    Get-SPDatabase | %{$_.GrantOwnerAccessToDatabaseAccount()}
    
  • 동기화 계정 - SharePoint Server의 경우 이 계정을 사용하여 디렉터리 서비스에 연결합니다. 이 서비스가 실행되는 계정에 부여된 기본 권한을 제한하지 말고 이 계정을 사용하지 않도록 설정하는 것이 좋습니다. 대신 암호가 널리 알려지지 않은 보안 사용자 계정을 사용하고 서비스를 실행 상태로 둡니다. 또한 이 계정에는 AD DS 개체를 읽고 도메인에서 변경된 AD DS 개체를 검색할 수 있는 AD DS에 대한 디렉터리 변경 내용 복제 권한이 필요합니다. 디렉터리 변경 내용 부여 권한은 계정이 AD DS 개체를 만들거나 변경하거나 삭제할 수 없습니다.

  • 내 사이트 호스트 애플리케이션 풀 계정 - 내 사이트 애플리케이션 풀이 실행되는 계정입니다. 이 계정을 구성하려면 팜 관리자 그룹의 구성원이어야 합니다. 이 계정으로 권한을 제한할 수 있습니다.

  • 기본 제공 사용자 그룹 - 기본 제공 사용자 보안 그룹을 제거하거나 권한을 변경하면 예상치 못한 결과가 발생할 수 있습니다. 기본 제공 계정 또는 그룹으로 권한을 제한하지 않는 것이 좋습니다.

  • 그룹 권한 - 기본적으로 WSS_ADMIN_WPG SharePoint 그룹에는 로컬 리소스에 대한 읽기 및 쓰기 액세스 권한이 있습니다. SharePoint Server가 올바르게 작동하려면 다음 WSS_ADMIN_WPG 파일 시스템 위치인 %WINDIR%\System32\drivers\etc\Hosts%WINDIR%\Tasks 가 필요합니다. 다른 서비스 또는 애플리케이션이 서버에서 실행되는 경우 작업 또는 호스트 폴더 위치에 액세스하는 방법을 고려할 수 있습니다. SharePoint Server의 계정 설정에 대한 자세한 내용은 SharePoint Server 2016의 계정 권한 및 보안 설정을 참조하세요.

    SharePoint Server 2013의 계정 정보에 대해서는 SharePoint 2013의 계정 권한 및 보안 설정을 참조하세요.

  • 서비스의 사용 권한 변경 - 서비스 사용 권한을 변경하면 예상치 못한 결과가 발생할 수 있습니다. 예를 들어 레지스트리 키 HKLM\System\CurrentControlSet\Services\PerfProc\Performance\Disable Performance Counters의 값이 0인 경우 User Code Host 서비스가 해제되어 샌드박스 솔루션의 작동이 중지될 수 있습니다.

참고 항목

기타 리소스

SharePoint 2013에서 워크플로 관리자에 대한 최소 권한 구성