Get-CMUserDeviceAffinity

Получение связей между устройством и его основными пользователями.

Синтаксис

Get-CMUserDeviceAffinity
   -UserName <String[]>
   [-ShowApprovedOnly]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMUserDeviceAffinity
   -DeviceId <Int32[]>
   [-ShowApprovedOnly]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMUserDeviceAffinity
   -DeviceName <String[]>
   [-ShowApprovedOnly]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
Get-CMUserDeviceAffinity
   -UserId <Int32[]>
   [-ShowApprovedOnly]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Описание

Командлет Get-CMUserDeviceAffinity получает одно или несколько сопоставлений пользователей с устройствами в Configuration Manager. Сходство пользователей — это отношения между устройством и его основными пользователями. Дополнительные сведения см. в статье Связывание пользователей и устройств с сопоставлением пользователей и устройств в Configuration Manager.

Примечание.

Запустите командлеты Configuration Manager с диска сайта Configuration Manager, например PS XYZ:\>. Дополнительные сведения см. в статье Начало работы.

Примеры

Пример 1. Получение сопоставлений пользователей с устройствами по имени пользователя

Эта команда возвращает все сходства пользователей с устройствами для пользователя contoso\jqpublic.

Get-CMUserDeviceAffinity -UserName "contoso\jqpublic"

Пример 2. Получение устройств для конкретного пользователя

Этот пример аналогичен первому, но уменьшает возвращаемый список атрибутов с помощью командлета Select-Object . Этот пример можно использовать для быстрого поиска устройств, которые регулярно использует конкретный пользователь. В этом примере показаны выходные данные в этом измененном формате.

PS XYZ:\> $user = "contoso\jqpublic"
PS XYZ:\> Get-CMUserDeviceAffinity -UserName $user | Select-Object ResourceName
ResourceName
------------
PUYALLUP01
KULSHAN02
TAHOMA42

Пример 3. Получение сопоставлений пользователей с устройствами по идентификатору пользователя

Эта команда возвращает все сопоставления пользователей с устройствами для пользователя с идентификатором ресурса 2063597981.

Get-CMUserDeviceAffinity -UserID "2063597981"

Пример 4. Получение сопоставления пользователей и устройств для имени устройства

Эта команда возвращает сходство пользователей с устройством с именем CMCEN-DIST02.

Get-CMUserDeviceAffinity -DeviceName "CMCEN-DIST02"

Пример 5. Получение сопоставления пользователей и устройств для идентификатора устройства

Эта команда возвращает сопоставление пользовательского устройства для устройства с идентификатором ресурса 16780642.

Get-CMUserDeviceAffinity -DeviceID "16780642"

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

В этом примере скрипта отображается основной пользователь для импортированного списка устройств. Один из способов получения этого списка — из консоли Configuration Manager, в узле Устройства выберите несколько строк и скопируйте текст (CTRL + V). Вставьте данные в текстовый файл, замените символы табуляции запятыми (,), а затем сохраните их как computers.csv.

$computers = Import-Csv -Path "C:\Users\jqpublic\computers.csv"

foreach ( $computer in $computers )
{
  $uda = Get-CMUserDeviceAffinity -DeviceName $computer.Name
  
  if ( ($uda.UniqueUserName).count -gt 1 )
  {
    foreach ( $user in $uda.UniqueUserName )
    {
      Write-Host $uda.ResourceName[1] $user
    }
  }
  else
  {
    write-host $uda.ResourceName $uda.UniqueUserName
  }
}

В примере скрипта используется командлет Import-Csv для получения входных данных из разделенного запятыми списка со столбцом Имя для имени устройства.

  • Первая foreach команда выполняет цикл по каждой строке из файла, разделенного запятыми. Он использует командлет Get-CMUserDeviceAffinity для получения основных пользователей для этого устройства.
  • Если на устройстве есть несколько основных пользователей, оно записывает имя компьютера и каждого пользователя в отдельную строку.
  • Если на устройстве есть только один основной пользователь, он записывает имя компьютера и пользователя.
  • Выходные данные скрипта — это простой список имен компьютеров и связанных с ними основных имен пользователей.

Параметры

-DeviceId

Укажите массив идентификаторов ресурсов устройства, чтобы получить основных пользователей.

Тип:Int32[]
Aliases:ResourceId
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DeviceName

Укажите массив имен устройств.

Тип:String[]
Aliases:ResourceName
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-DisableWildcardHandling

Этот параметр обрабатывает подстановочные знаки как литеральные символы. Вы не можете объединить его с ForceWildcardHandling.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ForceWildcardHandling

Этот параметр обрабатывает подстановочные знаки и может привести к непредвиденному поведению (не рекомендуется). Его нельзя объединить с DisableWildcardHandling.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ShowApprovedOnly

Добавьте этот параметр для фильтрации неподтвержденных сопоставлений.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-UserId

Задает массив идентификаторов ресурсов пользователя. Используйте этот параметр, чтобы получить все устройства, для которых этот пользователь является основным пользователем.

Тип:Int32[]
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-UserName

Укажите массив имен пользователей. Используйте этот параметр, чтобы получить все устройства, для которых этот пользователь является основным пользователем.

Тип:String[]
Aliases:UniqueUserName
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:True

Входные данные

None

Выходные данные

IResultObject[]

IResultObject

Примечания

Дополнительные сведения об этом возвращаемом объекте и его свойствах см. в разделе класс WMI сервера SMS_UserMachineRelationship.