PowerShell에서 폴더 권한 설정

Rohan Timalsina 2024년2월16일
PowerShell에서 폴더 권한 설정

ACL(액세스 제어 목록)은 파일 또는 리소스에 액세스하기 위한 사용자 권한 및 사용자 그룹을 나타냅니다. 액세스 제어 항목(ACE)의 정렬된 목록입니다.

액세스 제어 항목을 추가할 때 허용 또는 거부된 액세스 권한을 정의하고 폴더에 대한 사용자 및 그룹 권한을 설정할 수 있습니다. 파일 탐색기의 GUI를 사용하여 Windows에서 폴더의 권한을 쉽게 설정하거나 변경할 수 있습니다.

이 자습서에서는 PowerShell을 사용하여 폴더 권한을 설정하는 방법을 배웁니다.

Set-Acl Cmdlet을 사용하여 PowerShell에서 폴더 권한 설정

ACL은 정보를 보증금에 저장합니다. 보안 설명자에는 SACL(시스템 ACL)과 DACL(임의 ACL)의 두 가지 ACL 유형이 있습니다.

DACL의 각 ACE에는 세 가지 유형의 정보가 포함되어 있습니다.

  1. SID(보안 식별자): SID는 ACE가 적용되는 대상을 결정합니다. 단일 사용자 또는 사용자 그룹이 될 수 있습니다.
  2. 액세스 권한 집합: 액세스 권한은 개체에 대해 특정 작업을 수행할 수 있는 권한입니다. 자세한 내용은 접근 권한을 참조하세요.
  3. 일련의 액세스 권한이 허용되는지 또는 거부되는지 여부.

Set-Acl은 지정된 파일 또는 리소스의 보안 설명자를 변경합니다. -AclObject 매개변수의 값으로 제공된 보안 설명자를 적용합니다.

다음 예에서는 C:\pc\computing 폴더의 기존 권한에 새 ACL 규칙을 추가합니다.

$acl = Get-Acl -Path "C:\pc\computing"
$ace = New-Object System.Security.Accesscontrol.FileSystemAccessRule ("testuser", "Read", "Allow")
$acl.AddAccessRule($ace)
Set-Acl -Path "C:\pc\computer" -AclObject $acl

첫 번째 명령은 C:\pc\computing의 기존 ACL 규칙을 가져옵니다. 두 번째 명령은 폴더에 적용할 새 FileSystemAccessRule을 생성합니다.

세 번째 명령은 폴더에 대한 기존 권한에 새 ACL 규칙을 추가합니다. 네 번째 명령은 Set-Acl을 사용하여 새 ACL을 폴더에 적용합니다.

다음 명령을 사용하여 폴더의 ACL을 볼 수 있습니다.

Get-Acl C:\pc\computing | Format-List

출력:

Path   : Microsoft.PowerShell.Core\FileSystem::C:\pc\computing
Owner  : DelftStack\rhntm
Group  : DelftStack\rhntm
Access : DelftStack\testuser Allow  Read, Synchronize
         DelftStack\rhntm Allow  FullControl
Audit  :
Sddl   : O:S-1-5-21-1715350875-4262369108-2050631134-1001G:S-1-5-21-1715350875-4262369108-2050631134-1001D:AI(A;;FR;;;S-1-5-21-1715350875-4262369108-2050631134-1003)(A;OICIID;FA;;;S-1-5-21-1715350875-4262
         369108-2050631134-1001)

보시다시피 사용자 testuser는 이제 폴더에 대한 읽기 권한을 가집니다. 스크립트를 사용하여 쉽고 빠르게 많은 폴더와 파일에 대한 권한을 설정할 수 있습니다.

Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

관련 문장 - PowerShell Folder