IIS中同一VD中的同一WCF服务实现用户名密码和客户端证书身份验证

发布于 2024-12-10 09:25:37 字数 205 浏览 0 评论 0原文

我有一个公开的 WCF 服务。在安全性方面,我需要使用客户端证书和用户名密码对其进行身份验证。

很少有客户端使用客户端证书进行身份验证,而其他客户端则使用用户名密码进行身份验证。

当我将服务配置为使用客户端证书时,IIS -->需要为 SSL 要求配置 SSL 设置。这样做,没有客户端证书的其他客户端无法访问该服务。

我该如何解决这个问题?

I have a WCF service that is exposed. In terms of security i need to authenticate it with both client certificates and username password.

Few clients are to be authenticated using client certificates and the others using username password.

When i configure the service to use client certificates the IIS --> SSL settings needs to be configured for SSL Require. Doing so the other clients who do not have a client certificate cannot access the service.

How do i go around on this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

荭秂 2024-12-17 09:25:37

在 IIS 中托管服务时这是不可能的。具有所需客户端证书的 SSL 配置的范围涵盖配置它的整个虚拟目录/应用程序以及该目录中托管的所有内容。因此,您必须每次在不同的虚拟目录或具有不同配置的 Web 应用程序中托管该服务两次。

或者,您可以在 Windows 服务中自行托管该服务,并为每个端点指定单独的配置。

It is not possible when hosting the service in IIS. The SSL configuration with required client certificate has scope for whole virtual directory / application where it is configured and everything hosted in that directory. So you must host the service twice each time in different virtual directory or web application with different configuration.

Alternatively you can self host the service in windows service and specify separate configuration for each endpoint.

橙味迷妹 2024-12-17 09:25:37

我想我确实找到了上述问题的解决方案。

您只需将服务放在虚拟目录下的不同文件夹中即可。

一旦您在 IIS 中拥有上述服务,只需选择执行客户端证书身份验证的文件夹并设置文件夹 SSL 设置。

注意:在 IIS 中,您可以使用 web.config 或在每个文件夹的 IIS 功能视图中设置每个文件夹的设置。

这样您就可以实现多重身份验证。

I think i did find a solution to the above problem.

You just need to have the services in different folders under the virtual directory.

Once you have the services as above in IIS just select the folder that does client certificate authentication and set the folders SSL Settings.

NOTE: In IIS you can set the settings for each folder using web.config or in the IIS features view for each folder.

That way you can achieve multiple authentications.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文