Как проверить, что в учетных записях указаны права доступа c в общих файловых ресурсах с помощью PowerShell? - PullRequest
0 голосов
/ 21 июня 2020

Мне нужно убедиться, что указанные ниже общие файловые ресурсы существуют и учетные записи имеют указанные ниже права доступа c.

Общие файловые ресурсы - ADMIN $, Abc_Projects2 $, Xyz_Projects $

SYSTEM и администраторы должны иметь полный доступ, пользователи должны иметь доступ для чтения, спасибо

Например:

Name   ScopeName AccountName              AccessControlType AccessRight
----   --------- -----------              ----------------- -----------
ADMIN$ *         BUILTIN\Administrators   Allow             Full
ADMIN$ *         SYSTEM                   Allow             Full
ADMIN$ *         Users                    Allow             Read

Я написал приведенный ниже код, чтобы проверить, существует ли общий ресурс

$fileShares = @("ADMIN$", "Abc_Projects2$", "Xyz_Projects$")

function VerifyFileShares {
  param (
    [Parameter (Mandatory = $true)]$fileShares
  )

  ForEach ($fileShare in $fileShares) {
    If (Get-SMBShare | Where-Object NAME -EQ $fileShare) {
      "$fileShare is mapped"
    } 
    else {
      "$fileShare is not mapped"
    }
  }
}

VerifyFileShares -fileShares $fileShares

1 Ответ

0 голосов
/ 21 июня 2020

Вам следует взглянуть на модуль NTFS , там будет очень легко проверить права доступа. Быстрый пример:

Get-NTFSAccess -Path <PathToShare> -Account <UserOrGroup>

Это даст что-то вроде:

Account                             Access Rights   Applies to                Type    IsInherited   InheritedFrom
-------                             -------------   ----------                ----    -----------   -------------
BUILTIN\Administrators              FullControl     ThisFolderSubfoldersAn... Allow   True          c:
NT AUTHORITY\SYSTEM                 FullControl     ThisFolderSubfoldersAn... Allow   True          c:

Конечно, потребуется немного поработать, чтобы вложить в ваш файловый ресурс проверки et c ... Однако есть много вариантов.

Попробуйте это и дайте мне знать, как это происходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...