Compartir vía


Administrar envíos de preproducción

Use los métodos siguientes de las API de hardware de Microsoft para administrar los envíos de preproducción y para obtener los paquetes de controladores firmados por Microsoft para su uso en pruebas de preproducción. Para obtener una introducción a las API de hardware de Microsoft, incluidos los requisitos previos para usar la API, consulte API de panel de hardware.

https://manage.devcenter.microsoft.com/v2.0/my/hardware/products/

Métodos para administrar envíos de productos

Método URI Descripción
PUT https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/ Enviar un paquete para la firma de preproducción
GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId} Obtener metadatos de paquete para un envío de preproducción
GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets Obtener recursos disponibles para un envío de preproducción
GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets/{assetId} Obtener los metadatos de recursos para un único recurso
GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets/{assetId}/download Descargar un recurso para un envío de preproducción determinado

Recurso de metadatos de paquete

ID Identificador único del paquete
signingStatus
  • NotStarted
  • Procesamiento
  • Correcto
  • Con error
Error Errores detectados durante el procesamiento de paquetes

Recurso de metadatos de recursos

ID Identificador único del recurso
packageID Identificador del paquete al que pertenece este recurso
assetType Tipo de recurso disponible para descarga. Los valores posibles son:
  • "SignedFilesZip": paquete firmado por Microsoft.
contentHash Hash SHA-256 del contenido

Creación y envío de un producto para la firma

  1. Si aún no lo ha hecho, complete todos los requisitos previos de la API de hardware de Microsoft.

  2. Obtenga un token de acceso de Microsoft Entra ID. Debe pasar este token de acceso a los métodos de la API de envío de Microsoft Store. Una vez que haya obtenido un token de acceso, tiene 60 minutos para usarlo antes de que expire. Una vez que expire el token, puede obtener uno nuevo.

  3. Cree un nuevo envío ejecutando el método siguiente en la API de hardware de Microsoft. El cuerpo de la solicitud debe contener el flujo del paquete como "application/octet-stream". Esto creará un nuevo envío de preproducción en curso con HDC. Asegúrese de que el paquete se haya firmado de la misma manera que lo haría para los envíos de atestación antes de cargarlo.

    PUT https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/
    

    El cuerpo de la respuesta contiene el identificador del paquete, que será packageId para los pasos posteriores.

    {
        "id": "string",
        "etag": "string",
        "lastModified": "2022-03-28T23:31:17.014Z",
        "signingStatus": "NotStarted",
        "error": 
        {
            "message": "string"
        }
    }
    
  4. Compruebe el estado ejecutando el método siguiente para obtener los metadatos del paquete.

    GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}
    

    Para confirmar el estado del paquete, revise el valor signingStatus en el cuerpo de respuesta. Este valor debe cambiar de En proceso a Correcto si el envío se realiza correctamente o a Error si hay errores en la solicitud. Si hay errores, el campo error contiene más detalles sobre el error.

    Si signingStatus es Correcto, un paquete firmado debe estar disponible en el campo assets.

    {
    "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"
    }
    
  5. Descargue el paquete firmado de preproducción mediante el método siguiente para descargar un recurso una vez que signingStatus sea Correcto. Use el identificador del recurso firmado de los metadatos recuperados en el paso 4 como assetId en la solicitud. El paquete descargado incluirá los archivos de controlador firmados como un archivo ZIP.

    GET https://manage.devcenter.microsoft.com/v2.0/my/hardware/preprod/packages/{packageId}/assets/{assetId}/download
    

Ejemplo de envío del paquete para el código de firma de preproducción

    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();