2009-10-30 2 views
0

우리는 WCF 구성 파일에서 클라이언트 끝점 구성에 대한 인증서를 참조하려고합니다.클라이언트 엔드 포인트 인증서 참조, 고유 이름 부분에 쉼표가있는 경우를 찾는 방법은 무엇입니까?

구성은 다음과 같다 : 테스트 인증서를 들어

<client> 
    <endpoint address="https://domain.server.com/path/service.asmx" 
     binding="basicHttpBinding" bindingConfiguration="TestServiceSoap" 
     contract="..." name="..."> 
     <identity> 
      <certificateReference storeName="TrustedPublisher" 
       x509FindType="FindBySubjectDistinguishedName" 
       findValue="...">.... 

은 "제목"속성은 다음과 같다 : 우리가 제공하는 경우하여 findValue에 대해 다음

CN = demo.domain.com 
OU = Company 
O = Company 
L = City 
S = County 
C = CountryCode 

이 작품 위의 속성 :

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 부분에 쉼표가 작동하지 않습니다, 우리의 문자열이 지금 들어 있으므로 "타운 센터 "를 별도의 이름으로 사용하십시오.

이 식별자 목록을 사용하여 인증서를 찾으려면 어떻게 지정해야합니까?

CN=demo.domain.com, OU=Company, O=Company, STREET=Mainstreet 1, Town Center, L=City, S=County, C=CountryCode 
                   ^-- Argh! 
+0

죄송합니다 ... 질문 금요일 오후 오독는 :-(다행히도 지금은 맥주시의 – Tanner

+0

그래, 확실히 : –

답변

2

좋아, 더 실험으로 우리는 대답을 자신을 발견 할 수 있었다.

먼저 특수 문자가 포함 된 값을 캡슐화하려면 큰 따옴표로 묶어야합니다.

이하지만, 큰 따옴표를 사용 findName="..."에 좋은 재생되지 않습니다, 그래서 우리는 따옴표에 있음을 바꾸었다.

최종 결과는이이었다

findName='..., STREET="Mainstreet 1, Town Center", ...' 
     ^  ^      ^ ^
     |   +---- this is needed -----+  | 
     |           | 
     +- and this is needed to use double quotes --+ 
+0

생각하지 않았어, 아주 좋았어. XML에 큰 따옴표를 사용하고 싶다면 아마도 "을 다음과 같이 사용할 수 있습니다. STREET = " Mainstreet 1, Town Center " –

+0

그럴 수도 있습니다. 너무. –

0

이 귀하의 질문에 직접 대답하지,하지만 당신이 정말로 당신이하고 싶지 않아 거기에 모든 세부 사항을 넣을 필요가 없습니다. 너가 진짜로 동일한 CN을 가진 다수 사람들이 있으면 않는 한 CN은 충분해야한다 ???

그래서 당신은 필요

CN=demo.domain.com 

는 사실 당신도 유형을 찾아 FindBySubjectDistinguishedName를 사용할 필요가 없습니다. 당신은 FindBySubjectName를 사용하고 단지 대신 일반 주체 이름을 넣을 수 :

demo.domain.com 
+1

우리에 대해 일치하는 피하기 위해 같은 것입니다! 이 서버는 여러 타사 서버를 처리하는 데 사용할 수 있으므로 여러 인증서가 설치 될 수 있으므로 고유 이름은 실제로 우리가 원하는 것입니다. –

+0

자신 만의 세계에서 피사체를 기반으로하는 충돌을 경험 한 적이 있다면 절대 충격을받을 것입니다. :) –