Использование службы администрирования в Configuration Manager
Относится к Configuration Manager (Current Branch)
Configuration Manager использует REST API службы администрирования в нескольких собственных сценариях. Службу администрирования можно также использовать для собственных пользовательских сценариев.
Примечание.
В примерах, приведенных в этой статье, используется полное доменное имя сервера, на котором размещена роль поставщика SMS. При удаленном доступе к службе администрирования через шлюз управления облачными клиентами используйте конечную точку CMG вместо полного доменного имени поставщика SMS. Дополнительные сведения см. в разделе Включение доступа к Интернету.
Прямой запрос
Существует несколько способов напрямую запросить службу администрирования:
- Веб-браузер
- PowerShell
- Стороннее средство для отправки запросов HTTPS GET или PUT в веб-службу
В следующих разделах рассматриваются первые два метода.
Важно!
Имена классов службы администрирования чувствительны к регистру. Убедитесь, что используется правильная заглавная буква. Например, SMS_Site
.
Веб-браузер
Вы можете использовать веб-браузер, чтобы легко запрашивать службу администрирования. При указании URI запроса в качестве URL-адреса браузера служба администрирования обрабатывает запрос GET и возвращает результат в формате JSON. Некоторые веб-браузеры могут не отображать результат в удобном для чтения формате.
PowerShell
Выполните прямые вызовы к этой службе с помощью командлета Windows PowerShell Invoke-RestMethod.
Например:
Invoke-RestMethod -Method 'Get' -Uri "https://SMSProviderFQDN/AdminService/wmi/SMS_Site" -UseDefaultCredentials
Эта команда возвращает следующие выходные данные:
@odata.context value
-------------- -----
https://SMSProviderFQDN/AdminService/wmi/$metadata#SMS_Site {@{@odata.etag=FC1; __LAZYPROPERTIES=System.Objec...
В следующем примере выполняется детализация до более конкретных значений:
((Invoke-RestMethod -Method 'Get' -Uri "https://SMSProviderFQDN/AdminService/wmi/SMS_Site" -UseDefaultCredentials).value).Version
Выходные данные этой команды — это конкретная версия сайта: 5.00.8968.1000
Вызов PowerShell из последовательности задач
Командлет Invoke-RestMethod можно использовать в скрипте PowerShell из шага последовательности задач Запуск скрипта PowerShell . Это действие позволяет запрашивать службу администрирования во время последовательности задач.
Дополнительные сведения см. в разделе Шаги последовательности задач — выполнение скрипта PowerShell.
Power BI Desktop
Вы можете использовать Power BI Desktop для запроса данных в Configuration Manager через службу администрирования. Дополнительные сведения см. в статье Что такое Power BI Desktop?
В Power BI Desktop на ленте выберите Получить данные и выберите веб-канал OData.
В качестве URL-адреса укажите маршрут службы администрирования. Пример:
https://smsprovider.contoso.com/AdminService/wmi/
Выберите Проверка подлинности Windows.
В окне Навигатор выберите элементы, которые будут использоваться на панели мониторинга или в отчете Power BI.
Примеры запросов
Получение дополнительных сведений о конкретном устройстве
https://<ProviderFQDN>/AdminService/wmi/SMS_R_System(<ResourceID>)
Пример: https://smsprovider.contoso.com/AdminService/wmi/SMS_R_System(16777219)
Примеры классов устройств версии 1
Получение всех устройств:
https://<ProviderFQDN>/AdminService/v1.0/Device
Получение одного устройства:
https://<ProviderFQDN>/AdminService/v1.0/Device(<ResourceID>)
Запустите CMPivot на устройстве:
Verb: POST URI: https://<ProviderFQDN>/AdminService/v1.0/Device(<ResourceID>)/AdminService.RunCMPivot Body: {"InputQuery":"<CMPivot query to run>"}
См. раздел Результат задания CMPivot:
Verb: GET URI: https://<ProviderFQDN>/AdminService/v1.0/Device(<ResourceID>)/AdminService.CMPivotResult(OperationId=<Operation ID of the CM Pivot job>)
Узнайте, к каким коллекциям принадлежит устройство:
https://<ProviderFQDN>/AdminService/v1.0/Device(16777219)/ResourceCollectionMembership?$expand=Collection&$select=Collection
Фильтрация результатов с помощью startswith
В этом примере URI показаны только коллекции, имена которых начинаются с All
.
https://<ProviderFQDN>/AdminService/wmi/SMS_Collection?$filter=startswith(Name,'All') eq true
Запуск статического метода WMI
В этом примере вызывается метод GetAdminExtendedData на SMS_AdminClass , который принимает параметр Type со значением 1
.
Verb: Post
URI: https://<ProviderFQDN>/AdminService/wmi/SMS_Admin.GetAdminExtendedData
Body: {"Type":1}