在Microsoft.Web.Administration.Application对象上配置SSL?

我在解决如何以编程方式启用“需要SSL”复选框并使用Microsoft.Web.Administration在IIS应用程序中将“客户端证书”选项更改为“需要”时遇到了一些麻烦。

我发现网上的所有问题都与在网站上配置它有关,但我只需要为网站上托管的一些应用程序打开它。

有人有这方面的经验吗?

我试着这个开始:

application.EnabledProtocols = "http,https"; serverManager.CommitChanges(); 

但是我收到了一个错误:

文件名:\?\ C:\ Windows \ system32 \ inetsrv \ config \ applicationHost.config错误:无法写入配置文件

这很奇怪,因为根据我的阅读,我收集该文件维护IIS配置,但它在Windows中不存在(我无法在TextPad中打开),但它确实存在于命令提示符中,我可以more

做了更多的搜索,发现了这个 ,最后写了这个:

 ServerManager serverManager = new ServerManager(); Configuration config = serverManager.GetApplicationHostConfiguration(); ConfigurationSection accessSection = config.GetSection("system.webServer/security/access", siteName + "/" + vdRelativePath); accessSection["sslFlags"] = "Ssl,SslRequireCert"; 

其中siteName和vdRelativePath是“默认网站”和“/ Application / Path”。

如果“默认网站/应用程序/路径”不适合您,您可以使用config.GetLocationPaths()来查找正确的路径。