We have implemented Mutual Client Certificate Authentication between Azure front end web app and Azure APIM. We have created self signed client certificate mapped to a custom domain from where APIM Proxy API is getting called. Additionally, we have uploaded same certificate at APIM and added Thumbprint Authentication policy. Certificate has been uploaded at Azure front end web app under TLS/SSL Settings tab by adding TLS/SSL bindings and ClientCertificateEnabled is marked as true.
We are expecting that the certificate will be forwarded to APIM from Azure front end web app, as a header X-ARR-ClientCert
and its value as thumbprint of certificate.
To validate this, we are capturing the header when request comes to APIM and forwarding the same to output so we can confirm, by writing below line:
<set-variable name="X-ARR-ClientCert" value="@(context.Request.Headers.GetValueOrDefault("X-ARR-ClientCert", "No Certificate Received"))" />
But all the time, we are getting value as "No Certificate received".
Is this approach working as per our expectations or not? OR How do we validate this?
Note : Currently APIM is pointing to developer tier. Do we have to scale it up to basic?