을 만들고 싶으면 어떻게 해야 하 ColdFusion 웹 서비스 사용하는 클라이언트 WS 보안?

StackOverflow https://stackoverflow.com/questions/168798

문제

내가 노출되는 여러 웹 서비스에서 우리의 제품을 사용하여 Java 및 WS-보안입니다.우리의 고객을 원하는 소비를 사용하여 웹 서비스 ColdFusion.가 ColdFusion 지원 WS 보안?할 수 있습니 그것의 주위에 얻을 작성하여 Java 클라이언트를 사용하는 것에 ColdFusion?

(나는에 대해 많이 알지 못 ColdFusion).

도움이 되었습니까?

해결책

나는 가정 당신은 당신을 의미를 전달해야에서 보안을의 한 부분으로 비누 헤더가 있습니다.여기에 샘플로 연결하는 방법.Net 서비스입니다.동일한 방법을 적용해야 합 w/Java,그 url 을 다른 것입니다.

<cfset local.soapHeader = xmlNew()>
<cfset local.soapHeader.TheSoapHeader = xmlElemNew(local.soapHeader, "http://someurl.com/", "TheSoapHeader")>
<cfset local.soapHeader.TheSoapHeader.UserName.XmlText = "foo">
<cfset local.soapHeader.TheSoapHeader.UserName.XmlAttributes["xsi:type"] = "xsd:string">

<cfset local.soapHeader.TheSoapHeader = xmlElemNew(local.soapHeader, "http://webserviceUrl.com/", "TheSoapHeader")>
<cfset local.soapHeader.TheSoapHeader.Password.XmlText = "bar">
<cfset local.soapHeader.TheSoapHeader.Password.XmlAttributes["xsi:type"] = "xsd:string">

<cfset theWebService = createObject("webservice","http://webserviceUrl.com/Webservice.asmx?WSDL")>
<cfset addSOAPRequestHeader(theWebService, "ignoredNameSpace", "ignoredName", local.soapHeader, false)>

<cfset aResponse = theWebService.SomeMethod(arg1)>

희망이 이것은 당신이 필요합니다.

다른 팁

이것은 아마도 더 정확한 생산하는'단순한'xml 비누 헤더가 있습니다.위 예제는 없는 몇 줄.

Local['soapHeader'] = xmlNew();
Local['soapHeader']['UsernameToken'] =  xmlElemNew(local.soapHeader, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd", "UsernameToken");
Local['soapHeader']['UsernameToken']['username'] =  xmlElemNew(local.soapHeader, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd", "username");
Local['soapHeader']['UsernameToken']['username'].XmlText = Arguments.szUserName;
Local['soapHeader']['UsernameToken']['username'].XmlAttributes["xsi:type"] = "xsd:string";
Local['soapHeader']['UsernameToken']['password'] =  xmlElemNew(local.soapHeader, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd", "password");
Local['soapHeader']['UsernameToken']['password'].XmlText = Arguments.szPassword;
Local['soapHeader']['UsernameToken']['password'].XmlAttributes["xsi:type"] = "xsd:string";
addSOAPRequestHeader(ws, "ignoredNameSpace", "ignoredName", Local.soapHeader, false);

I've never done any ws 보안,그리고 알고 있지 않는 경우 ColdFusion 소모할 수 있다,하지만 당신에 응답하는 보조 질문:

할 수 있습니 그것의 주위에 얻을 작성하여 java 클라이언트를 사용하는 것에 coldfusion?

네,물론입니다.ColdFusion 쉽게 사용할 수 있습 Java 체와 방법을 마련하고 있습니다.

하고 있어요 몇몇 연구에 WS-보안 및 ColdFusion 나 자신을 위해 약간의 시간과게 확인할 수 있는 위 예제는 아니의 구현 WS-보안입니다.비록 사용자 이름과 암호를 보낼 헤더에서,그들은 일반 텍스트로 전송.을 활용하여 SSL 도움이 될 것입니다,하지만 WS 보안 많은 작업은 단지 적용하는 코드입니다.ColdFusion 기본적으로 지원하지 않는 WS 보안,하지만 그것은 쉽게 사용할 수 있습 Java 체와 방법을 마련하고 있습니다.가에서 패키지를 아파치라고 WSS4J 는 방법을 제공합니의 구현 WS 보안에 Java.당신이 쓸 수 있는 래퍼로 활용에 ColdFusion.I persoanlly 을 할 수 있었다,그래서 그러나 그 필요가 있는 작은 구성에 변경 ColdFusion 측면 나는 몇 가지 문제가 있다.

누군가가 나를 도울 수 있는지에서 구성 부품,정말 감사드리겠습니다.

드미트리

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top