none
Получение типа объекта RRS feed

  • Вопрос

  • Добрый день.

    В скрипте получаю имя объекта AD (Get-Acl.Access.IdentityReference) в формате домен\имя

    Каким образом можно получить тип объекта - пользователь или группа?

    Get-ADObject требует указания DN, а DN собрать не получится, объекты могут быть в разных OU.

    Есть вариант через индусский коддинг - сделать через GetADGroup и ловить в try...catch, но как-то уж совсем не элегантно..

    (Get-ADGroup "Domain Users").ObjectClass хех)))

    Может есть ещё какой вариант запроса по имени?


    • Изменено atulyakov 5 апреля 2021 г. 8:14
    5 апреля 2021 г. 8:12

Ответы

  • (Get-Acl C:\TestFolder\ ).Access.IdentityReference.value | where {$_ -like 'Domain*'} | foreach {
       Get-ADObject -Filter "SamAccountName -Like '$($_ -replace 'Domain\\')'"
    }
    второй вариант это использование SDDL в котором записаны SID"ы

    The opinion expressed by me is not an official position of Microsoft

    • Изменено Vector BCOModerator 5 апреля 2021 г. 10:14
    • Помечено в качестве ответа atulyakov 5 апреля 2021 г. 10:21
    5 апреля 2021 г. 10:13
    Модератор

Все ответы

  • (Get-Acl C:\TestFolder\ ).Access.IdentityReference.value | where {$_ -like 'Domain*'} | foreach {
       Get-ADObject -Filter "SamAccountName -Like '$($_ -replace 'Domain\\')'"
    }
    второй вариант это использование SDDL в котором записаны SID"ы

    The opinion expressed by me is not an official position of Microsoft

    • Изменено Vector BCOModerator 5 апреля 2021 г. 10:14
    • Помечено в качестве ответа atulyakov 5 апреля 2021 г. 10:21
    5 апреля 2021 г. 10:13
    Модератор
  • (Get-Acl C:\TestFolder\ ).Access.IdentityReference.value | where {$_ -like 'Domain*'} | foreach {
       Get-ADObject -Filter "SamAccountName -Like '$($_ -replace 'Domain\\')'"
    }
    второй вариант это использование SDDL в котором записаны SID"ы

    The opinion expressed by me is not an official position of Microsoft

    Огонь! Спасибо!

    Получилось так:

    $Permission = Get-Acl $Folder.FullName

    $ADObject = $Permission.IdentityReference.Value.split("\")[1]

    (Get-ADObject -Filter {SamAccountName -like $ADObject}).ObjectClass

    Несколько выдернуто из контекста, конечно.

    5 апреля 2021 г. 10:21