Skip to content

Commit c0e22d6

Browse files
committed
Learn Editor: Update error-code-aadsts76021-request-not-signed.md
1 parent a1591bc commit c0e22d6

1 file changed

Lines changed: 94 additions & 1 deletion

File tree

support/entra/entra-id/app-integration/error-code-aadsts76021-request-not-signed.md

Lines changed: 94 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,97 @@ ms.service: # Add the ms.service or ms.prod value
1212
ms.topic: # Add the ms.topic value
1313
ms.date: 01/14/2026
1414
---
15-
H1
15+
# Error AADSTS76021 (ApplicationRequiresSignedRequests) with SAML authentication: The request sent by client is not signed
16+
17+
## Overview
18+
The error **AADSTS76021** occurs during federated authentication with Microsoft Entra ID when using SAML-based Single Sign-On (SSO). This error indicates that the request sent by the client is not signed while the application requires signed requests. Even if the request is signed, the signature might not be placed according to the SAML binding configuration.
19+
20+
According to [SAML specifications](https://docs.oasis-open.org/security/saml/v2.0/saml-bindings-2.0-os.pdf), two primary and most commonly used binding types exist:
21+
22+
- **HTTP-Redirect** [urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect]: For HTTP GET requests, the signature is included as a query parameter in the URL.
23+
- **HTTP-POST** [urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST]: For HTTP POST requests, the signature is embedded within the XML payload of the SAML message.
24+
25+
If the application expects the signature in one location but the request uses another binding type, Microsoft Entra ID will reject the request, resulting in **AADSTS76021**.
26+
27+
---
28+
29+
## Resolution Steps
30+
1. **Verify SAML Binding Type**
31+
- Check whether the application expects HTTP-Redirect or HTTP-POST.
32+
33+
2. **Ensure Configuration Matches**
34+
- Confirm that the Identity Provider (IdP) and Service Provider (SP) configurations align.
35+
36+
3. **Validate Signature Placement**
37+
- For HTTP-Redirect: Signature must be in the query string.
38+
- For HTTP-POST: Signature must be inside the XML `<Signature>` element.
39+
40+
4. **Update Application or IdP Configuration**
41+
- Align binding type and signature placement.
42+
- In Microsoft Entra ID, confirm SAML settings under **Enterprise Applications > Single Sign-On**.
43+
44+
---
45+
46+
## Examples
47+
48+
### Example 1: HTTP-Redirect Binding (GET)
49+
Signed request includes query parameters:
50+
```
51+
https://contoso.com?
52+
SAMLRequest=<Base64EncodedRequest>&RelayState=<StateValue>&SigAlg=http://www.w3.org/2000/09/xmldsig#rsa-sha256&Signature=<Base64Signature>
53+
```
54+
55+
### Example 2: HTTP-POST Binding (POST)
56+
Signed request includes signature inside XML:
57+
```xml
58+
<samlp:AuthnRequest>
59+
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
60+
<ds:SignedInfo>
61+
<!-- Canonicalization and signature details -->
62+
</ds:SignedInfo>
63+
<ds:SignatureValue>Base64SignatureValue</ds:SignatureValue>
64+
<ds:KeyInfo>
65+
<ds:X509Data>
66+
<ds:X509Certificate>...</ds:X509Certificate>
67+
</ds:X509Data>
68+
</ds:KeyInfo>
69+
</ds:Signature>
70+
</samlp:AuthnRequest>
71+
```
72+
73+
---
74+
75+
## More Information
76+
77+
### SAML 2.0 Bindings
78+
SAML 2.0 defines several protocol bindings that map SAML request and response message exchanges onto standard communication protocols. These bindings specify rules for message encoding, signature placement, and transport security.
79+
80+
### 1. HTTP-Redirect Binding
81+
- **Description**: Uses HTTP GET requests where SAML messages are transmitted as query parameters.
82+
- **Use Case**: Common for initiating authentication requests.
83+
84+
### 2. HTTP-POST Binding
85+
- **Description**: Uses HTTP POST requests where SAML messages are embedded in the body as XML.
86+
- **Use Case**: Common for sending signed assertions securely.
87+
88+
### 3. HTTP-Artifact Binding
89+
- **Description**: Exchanges small artifacts via HTTP, which are later resolved into full SAML messages.
90+
- **Use Case**: Reduces message size in front-channel communication.
91+
92+
### 4. SOAP Binding
93+
- **Description**: Uses SOAP over HTTP for back-channel communication.
94+
- **Use Case**: Common for artifact resolution and management operations.
95+
96+
### 5. PAOS Binding
97+
- **Description**: Reverse HTTP binding used for Enhanced Client or Proxy (ECP) profiles.
98+
- **Use Case**: Enables advanced client interactions.
99+
100+
[SAML Bindings Specification](https://docs.oasis-open.org/security/saml/v2.0/saml-bindings-2.0-os.pdf)
101+
102+
---
103+
104+
For a full list of Active Directory Authentication and authorization error codes, see [Microsoft Entra authentication and authorization error codes](/azure/active-directory/develop/reference-aadsts-error-codes).
105+
106+
[!INCLUDE [Azure Help Support](../../../includes/azure-help-support.md)]
107+
108+
---

0 commit comments

Comments
 (0)