An Azure service that is used to provision Windows and Linux virtual machines.
Hello @Murshid Abdurahiman
Thank you for providing such a detailed reproduction. Given the testing you've already performed, I don't think additional generic TPM provisioning or certificate troubleshooting would add much at this stage.
The important part of your reproduction is that:
- AIK enrollment succeeds.
- Azure Attestation accepts round 0.
- The evidence-bearing round 1 consistently returns HTTP 400 with invalid_data_field.
- The behavior remains when using the Microsoft TPM sample's native construction.
- The final successful prefix-AIK count is zero.
- No TPM evidence, token, certificate, identifier, or response payload has been posted publicly.
Azure Attestation does support attestation of TPM-backed platforms, according to Microsoft's Azure Attestation documentation. However, the public REST API documentation doesn't provide enough information about the internal validation that produces invalid_data_field to determine from the error alone which evidence element failed validation.
For that reason, I think this has reached the point where Microsoft engineering needs to inspect the request/evidence or confirm the currently supported TPM client/sample/API combination.
Regarding the support-routing issue: what you're seeing appears consistent with Microsoft's current Priority Community Support (PCS) workflow for Severity C Azure technical requests.
Microsoft documents that some technical requests are initially handled through Microsoft Q&A. If the issue requires deeper investigation, a Microsoft engineer can create a support ticket on the customer's behalf.
Microsoft also explicitly advises customers not to post sensitive customer information publicly. If logs, TPM evidence, identifiers, request bodies, certificates, or other customer-specific diagnostic data are required, a Microsoft engineer can contact you through a private channel to collect them securely.
So I would not post the raw TPM evidence or complete request payload in this thread.
At this point, I would ask the Microsoft moderator/engineer reviewing this thread to determine whether escalation is required and, if so, initiate the private support workflow.
For the engineering investigation, I think the key questions are:
- Is Microsoft.Attestation.Client 1.1.133870390-preview with the 2020-10-01 Attestation REST API currently a supported combination for Windows 11 TPM 2.0 attestation?
- Does InvalidDataField at evidence-bearing round 1 occur during request/evidence deserialization or cryptographic validation before policy evaluation?
- Which evidence field or compatibility requirement can produce this response when AIK enrollment and round 0 have already succeeded?
- Is there a newer supported Microsoft TPM sample/client/API combination that should be used instead?
- If engineering needs the raw round-1 request/evidence to identify the failing field, can they provide a private upload or support-case channel for it?
Your successful round 0 followed by a deterministic failure only when the evidence-bearing request is submitted is particularly useful information. It narrows the problem considerably, but I don't think the public error response provides enough diagnostic detail to identify the offending field safely from Q&A alone.
Microsoft's Azure support documentation also confirms that support requests can contain diagnostic files and other troubleshooting information once a support case is established.
Please "Accept the Answer" if this information helped you. This will help us and others in the community as well.