Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте следующие методы в API оборудования Майкрософт для управления предварительными отправками и получения пакетов драйверов, подписанных корпорацией Майкрософт для предварительного производственного тестирования. Общие сведения об API оборудования Майкрософт, включая предварительные требования для использования API, см. в разделе API панели мониторинга оборудования.
https://manage.devcenter.microsoft.com/v2.0/my/hardware/products/
Методы управления отправкой продуктов
| Метод | УРИ | Описание |
|---|---|---|
| ПОСТАВИТЬ | https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/ |
Отправьте пакет для предварительной подписи |
| ПОЛУЧАЙ | https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId} |
Получение метаданных пакета для предварительной отправки |
| ПОЛУЧАЙ | https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets |
Получение доступных ресурсов для предварительной отправки |
| ПОЛУЧАЙ | https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets/{assetId} |
Получение метаданных для одного актива |
| ПОЛУЧАЙ | https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets/{assetId}/download |
Скачивание ресурса для заданной предварительной отправки |
Ресурс метаданных пакета
| Идентификатор | Уникальный идентификатор пакета |
|---|---|
| статусПодписи |
|
| Ошибка | Ошибки, возникающие во время обработки пакета |
Ресурс метаданных актива
| Идентификатор | Уникальный идентификатор ресурса |
|---|---|
| идентификатор пакета | Идентификатор пакета, к которому принадлежит этот ресурс |
| тип актива | Тип ресурса, доступного для скачивания. Возможные значения:
|
| contentHash | Хэш SHA-256 содержимого |
Создайте и отправьте продукт для подписания
Если вы этого еще не сделали, выполните все предварительные требования для API оборудования Майкрософт.
Получите токен доступа Microsoft Entra ID. Этот маркер доступа необходимо передать методам в API для отправки в Microsoft Store. После получения маркера доступа у вас есть 60 минут, чтобы использовать его до истечения срока действия. После истечения срока действия токена можно получить новый токен.
Создайте новую отправку, выполнив следующий метод в API оборудования Майкрософт. Тело запроса должно содержать поток пакета в формате "application/octet-stream". При этом будет создана новая отправка предварительного тестирования, находящаяся в процессе выполнения, с HDC. Убедитесь, что пакет подписан так же, как и для подачи на аттестацию, перед загрузкой.
PUT https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/Текст ответа содержит идентификатор пакета, который будет идентификатором пакета для последующих шагов.
{ "id": "string", "etag": "string", "lastModified": "2022-03-28T23:31:17.014Z", "signingStatus": "NotStarted", "error": { "message": "string" } }Проверьте состояние, выполнив следующий метод, чтобы получить метаданные пакета.
GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}Чтобы подтвердить состояние пакета, просмотрите значение signingStatus в тексте ответа. Это значение должно измениться с "Обработка " на "Успешно" в случае успешной отправки или на "Сбой ", если в запросе возникают ошибки. Если возникают ошибки, поле ошибки содержит дополнительные сведения об ошибке.
Если статусПодписиУспешно выполнено, подписанный пакет должен быть доступен в поле активов.
{ "id": "string", "etag": "string", "lastModified": "2022-03-28T23:45:25.501Z", "signingStatus": "NotStarted", "error": { "message": "string" }, "assets": [ { "id": "string", "packageId": "string", "assetType": "string", "createdDate": "2022-03-28T23:45:25.501Z", "contentHash": "string" } ], "assetsContinuationToken": "string" }Скачайте предварительно подписанный пакет с помощью следующего метода, чтобы скачать средство после signingStatusУспех. Используйте идентификатор подписанного ресурса из метаданных, полученных на шаге 4 в качестве идентификатора ресурса в запросе. Скачанный пакет будет включать подписанные файлы драйверов в виде ZIP-файла.
GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets/{assetId}/download
Пример отправки пакета для предварительно созданного кода подписи
var httpClient = new HttpClient();
httpClient.BaseAddress = new Uri(https://manage.devcenter.microsoft.com/v2.0/my/hardware/);
httpClient.DefaultRequestHeaders.Accept.Clear();
httpClient.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("*/*"));
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", token);
var driverPackage = File.ReadAllBytes(@"C:\cabfile.cab");
Task<HttpResponseMessage> response = httpClient.PutAsync("preprod/packages", new ByteArrayContent(driverPackage));
var jsonResponse = response.Result.Content.ReadFromJsonAsync<object>().Result as JsonElement?;
var packageId = jsonResponse?.GetProperty("id").ToString();