2016-01-18 5 views
2

Мне присвоен домен пользователя \ имя, пароль и путь, и я хочу показать, имеет ли данный пользователь права на чтение и/или чтение в данном каталоге.Проверьте, есть ли у пользователя права на чтение/запись

Общая идея:

function Has-Read-Access { 
    param(
     [Parameter(Mandatory=$true)][string]$userLogin 
     [Parameter(Mandatory=$true)][string]$userPwd 
     [Parameter(Mandatory=$true)][string]$directory 
    ) 
    $hasReadAccess = 0 
    #insert magic here 
    return $hasReadAccess 
} 

Has-Read-Access -userLogin 'DOMAIN\user' -userPwd 'Passw0rd' -directory 'C:\FolderName\' 

Я попытался запустить powershell.exe другим пользователем:

Start-Process powershell.exe -Credential "TestDomain\Me" 

Но это кажется неправильным подходом.

+0

Пожалуйста, избегайте повторного размещения вопросов. Улучшите свой [существующий вопрос] (http://stackoverflow.com/q/34853336/1630171), отредактировав в нем недостающую информацию, чтобы получить его повторно открытое/un-downvoted. Сбор заниженных вопросов может в конечном итоге привести к запрету на вопрос. –

ответ

6

Самый простой способ узнать, кто имеет Эффективное доступ к использованию папки (PowerShellAccessControl Module 3.0/4.0

И некоторый код, как:

Get-Item $directory | Get-EffectiveAccess -Principal $UserName 

Чтобы получить список пользователей, имеющих доступ к использованию папки Get-ACL (TechNet Article)

Get-ACL $Directory 

Примечание: Вам не нужно знать, чей-то пароль, чтобы получить какой доступ у них есть.

+1

Обратите внимание, что это предположительно использует GetEffectiveRightsFromAcl, который имеет [несколько ограничений] (https://msdn.microsoft.com/en-us/library/windows/desktop/aa446637 (v = vs.85) .aspx). (Нет никакого всеобъемлющего способа сделать это без учетных данных пользователя.) –

+0

Кстати, причина, по которой вам может понадобиться чей-то пароль для определения их доступа, заключается в том, что они могут принадлежать (прямо или косвенно) к доменной группе, чье членство вы не используете, У меня есть разрешение на просмотр. –

Смежные вопросы