none
Замена Get-ADPrincipalGroupMembership RRS feed

  • Вопрос

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

    Подскажите, а можно как-то заменить Get-ADPrincipalGroupMembership?

    Просто пишу скрипт который будет работать на всех ПК домена при логоне, но модуля ActiveDirectory на ПК конечно же нет.

    А мне нужно чтобы скрипт получал список групп AD в котором состоит пользователь.

    Как быть?

    Спасибо.

    28 февраля 2018 г. 8:39

Ответы

  • http://techibee.com/active-directory/powershell-how-to-get-all-the-ad-groups-current-user-belongs/1672

    Function Get-AllUserGroups {
    [cmdletbinding()]
    param()
    $Groups = [System.Security.Principal.WindowsIdentity]::GetCurrent().Groups
    foreach ($Group in $Groups) {
      $GroupSID = $Group.Value
      $GroupName = New-Object System.Security.Principal.SecurityIdentifier($GroupSID)
      $GroupDisplayName = $GroupName.Translate([System.Security.Principal.NTAccount])
      $GroupDisplayName
      }
    }

    или

    $userName = $env:UserName           
    Add-Type -AssemblyName System.DirectoryServices.AccountManagement            
    $ct = [System.DirectoryServices.AccountManagement.ContextType]::Domain            
    $user = [System.DirectoryServices.AccountManagement.Principal]::FindByIdentity($ct,$userName)            
    $user.GetGroups()

    или

    WHOAMI /GROUPS /FO CSV | ConvertFrom-Csv



    • Изменено KazunEditor 28 февраля 2018 г. 8:46
    • Помечено в качестве ответа sekii911 28 февраля 2018 г. 8:51
    28 февраля 2018 г. 8:44
    Отвечающий

Все ответы

  • http://techibee.com/active-directory/powershell-how-to-get-all-the-ad-groups-current-user-belongs/1672

    Function Get-AllUserGroups {
    [cmdletbinding()]
    param()
    $Groups = [System.Security.Principal.WindowsIdentity]::GetCurrent().Groups
    foreach ($Group in $Groups) {
      $GroupSID = $Group.Value
      $GroupName = New-Object System.Security.Principal.SecurityIdentifier($GroupSID)
      $GroupDisplayName = $GroupName.Translate([System.Security.Principal.NTAccount])
      $GroupDisplayName
      }
    }

    или

    $userName = $env:UserName           
    Add-Type -AssemblyName System.DirectoryServices.AccountManagement            
    $ct = [System.DirectoryServices.AccountManagement.ContextType]::Domain            
    $user = [System.DirectoryServices.AccountManagement.Principal]::FindByIdentity($ct,$userName)            
    $user.GetGroups()

    или

    WHOAMI /GROUPS /FO CSV | ConvertFrom-Csv



    • Изменено KazunEditor 28 февраля 2018 г. 8:46
    • Помечено в качестве ответа sekii911 28 февраля 2018 г. 8:51
    28 февраля 2018 г. 8:44
    Отвечающий
  • Круто! Спасибо!
    вариант 2 понравился!
    28 февраля 2018 г. 8:51