在IIS的同一VD中为同一WCF服务实现用户名密码和客户端证书身份验证
我有一个公开的WCF服务。在安全方面,我需要使用客户端证书和用户名密码对其进行身份验证 很少有客户端使用客户端证书进行身份验证,其他客户端使用用户名密码进行身份验证 当我将服务配置为使用客户端证书时,需要为SSL要求配置IIS-->SSL设置。这样,没有客户端证书的其他客户端就无法访问该服务在IIS的同一VD中为同一WCF服务实现用户名密码和客户端证书身份验证,wcf,wcf-binding,wcf-security,Wcf,Wcf Binding,Wcf Security,我有一个公开的WCF服务。在安全方面,我需要使用客户端证书和用户名密码对其进行身份验证 很少有客户端使用客户端证书进行身份验证,其他客户端使用用户名密码进行身份验证 当我将服务配置为使用客户端证书时,需要为SSL要求配置IIS-->SSL设置。这样,没有客户端证书的其他客户端就无法访问该服务 如何解决这个问题?在IIS中托管服务时,这是不可能的。具有所需客户端证书的SSL配置适用于配置它的整个虚拟目录/应用程序以及该目录中托管的所有内容。因此,每次必须在不同的虚拟目录或具有不同配置的web应用程
如何解决这个问题?在IIS中托管服务时,这是不可能的。具有所需客户端证书的SSL配置适用于配置它的整个虚拟目录/应用程序以及该目录中托管的所有内容。因此,每次必须在不同的虚拟目录或具有不同配置的web应用程序中托管服务两次
或者,您可以在windows服务中自行托管该服务,并为每个端点指定单独的配置。我想我确实找到了解决上述问题的方法 您只需要将服务放在虚拟目录下的不同文件夹中 在IIS中拥有上述服务后,只需选择进行客户端证书身份验证的文件夹并设置文件夹SSL设置 注意:在IIS中,可以使用web.config或在“IIS功能”视图中为每个文件夹设置设置
这样,您就可以实现多重身份验证。请在下面找到我的问题答案。这通常是我写的:)