我正在尝试配置IIS网站以要求SSL客户端证书.该网站在IIS 6和7中都设置了,虽然我更感兴趣的是使其适用于7.我在IIS中设置了require客户端证书属性,它通过Web浏览器访问网站时工作正常,但是Java-基于客户端无法访问它.
我认为问题是IIS在初始SSL握手期间不会请求客户端证书.相反,它会协商正常的SSL连接,检查资源是否需要客户端证书,如果是,则启动请求客户端证书的新SSL握手.IIS执行此操作以支持仅需要某些资源的客户端证书的站点.即使为整个网站指定了要求,IIS仍会启动两次SSL握手.我想强制IIS在第一次SSL握手时请求客户端证书,这有望使客户端正常工作.(客户端是由外部合作伙伴开发的,我几乎不了解它是如何设置的,也无法访问其源代码)
有没有人在IIS之前处理过这个问题?
我在使用MVC MiniProfiler时看到一个非常疯狂的错误.间歇性地,我正在处理的网站进入一个状态,每个请求都会导致抛出此异常:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> System.TypeInitializationException: The type initializer for 'MvcMiniProfiler.MiniProfiler' threw an exception.
---> System.Threading.LockRecursionException: Write lock may not be acquired with read lock held.
This pattern is prone to deadlocks. Please ensure that read locks are released before taking a write lock.
If an upgrade is necessary, use an upgrade lock in place of the read lock.
at System.Threading.ReaderWriterLockSlim.TryEnterWriteLockCore(Int32 millisecondsTimeout)
at System.Threading.ReaderWriterLockSlim.TryEnterWriteLock(Int32 millisecondsTimeout)
at System.Web.Routing.RouteCollection.GetWriteLock()
at MvcMiniProfiler.UI.MiniProfilerHandler.RegisterRoutes()
in …Run Code Online (Sandbox Code Playgroud)