我们正在尝试在 WCF 配置文件中引用客户端端点配置的证书。
配置如下所示:
<client>
<endpoint address="https://domain.server.com/path/service.asmx"
binding="basicHttpBinding" bindingConfiguration="TestServiceSoap"
contract="..." name="...">
<identity>
<certificateReference storeName="TrustedPublisher"
x509FindType="FindBySubjectDistinguishedName"
findValue="...">....
对于测试证书,“主题”属性如下所示:
CN = demo.domain.com
OU = Company
O = Company
L = City
S = County
C = CountryCode
如果我们为上述findValue
属性提供以下内容,则此方法有效:
CN=demo.domain.com, OU=Company, O=Company, L=City, S=County, C=CountryCode
但是,对于我们从第三方获得的证书,他们已将其地址添加为其中的一部分,因此上面的标识符列表如下所示:
CN = demo.domain.com
OU = Company
STREET = Mainstreet 1, Town Center
L = City
S = County
C = CountryCode
显然,STREET 部分中的逗号不起作用,因为我们的字符串现在包含“Town Center”作为没有名称的单独部分。
我们如何指定要使用此标识符列表查找证书?
CN=demo.domain.com, OU=Company, O=Company, STREET=Mainstreet 1, Town Center, L=City, S=County, C=CountryCode
^-- Argh!