I have been tasked to setup client certificate authentication for ASMX web services i am hosting on Windows 2008 R2 server with IIS 7.5 and web services are ASMX built on ASP.NET 4.0 with C#. Web services are hosted as a virtual directory under main website.
I am not able to figure out the error. Here is what i have done so far
Setting up One to One Mapping using this tutorial - http://www.iis.net/learn/manage/configuring-security/configuring-one-to-one-client-certificate-mappings
- Created Base 64 .cer file from PFX
- Installed CER file as certificate in Personal Store in Local Computer certificate store
- Setup system.webServer/security/authentication/iisClientCertificateMappingAuthentication under main website as below
enabled = False
logonMethod = ClearText
manyToOneCertificateMappingsEnabled = False
manyToOneMappings = Count = 0
oneToOneCertificateMappingsEnabled = True
oneToOneMappings = Count = 1
enabled = 1
certificate = .cer file in one line excluding BEGIN and END certificate request lines
username = domain admin in formate DOMAIN_NAME\Username
Password = password of above user
- Setup system.webServer/security/authentication/iisClientCertificateMappingAuthentication under virtual directory as below
enabled = True
logonMethod = ClearText
manyToOneCertificateMappingsEnabled = False
manyToOneMappings = Count = 0
oneToOneCertificateMappingsEnabled = True
oneToOneMappings = Count = 1
enabled = 1
certificate = .cer file in one line excluding BEGIN and END certificate request lines
username = domain admin in formate DOMAIN_NAME\Username
Password = password of above user
- Authentication menthods under main websites and virtual directory both has Anonymous Authentication allowed.
- SSL Settings in virtual directory has Client Certificate Required selected.
No matter what combincation of settings i use, it never authenticates and below is the error i get in Failed Request Trace. Please Help.
AUTH_REQUEST_AUTH_TYPE | RequestAuthType="CertMap" |
MODULE_SET_RESPONSE_ERROR_STATUS | ModuleName="IISCertificateMappingAuthenticationModule", Notification="AUTHENTICATE_REQUEST", HttpStatus="401", HttpReason="Unauthorized", HttpSubStatus="1", ErrorCode="The parameter is incorrect. (0x80070057)", ConfigExceptionInfo="" |