Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(AutoIt) SOAP WS-Security Username AuthenticationDemonstrates creating SOAP XML for WS-Security Username Authentication. The client user name and password are encapsulated in a WS-Security <wsse:UsernameToken>.
; Generate this XML with the code that follows: ; <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> ; <soap:Header> ; <wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2003/06/secext"> ; <wsse:UsernameToken wsu:Id="sample" ; xmlns:wsu="http://schemas.xmlsoap.org/ws/2003/06/utility"> ; <wsse:Username>sample</wsse:Username> ; <wsse:Password Type="wsse:PasswordText">oracle</wsse:Password> ; <wsu:Created>2004-05-19T08:44:51Z</wsu:Created> ; </wsse:UsernameToken> ; </wsse:Security> ; <wsse:Security soap:actor="oracle" ; xmlns:wsse="http://schemas.xmlsoap.org/ws/2003/06/secext"> ; <wsse:UsernameToken wsu:Id="oracle" ; xmlns:wsu="http://schemas.xmlsoap.org/ws/2003/06/utility"> ; <wsse:Username>myUsername</wsse:Username> ; <wsse:Password Type="wsse:PasswordText">myPassword</wsse:Password> ; <wsu:Created>2004-05-19T08:46:04Z</wsu:Created> ; </wsse:UsernameToken> ; </wsse:Security> ; </soap:Header> ; <soap:Body> ; <getHello xmlns="http://www.oracle.com"/> ; </soap:Body> ; </soap:Envelope> ; ; First build the outer housing: $oXml = ObjCreate("Chilkat.Xml") $oXml.Tag = "soap:Envelope" $oXml.AddAttribute("xmlns:soap","http://schemas.xmlsoap.org/soap/envelope/") $oXml.UpdateChildContent "soap:Header","" $oXml.UpdateAttrAt("soap:Body|getHello",True,"xmlns","http://www.oracle.com") ; Get the current date/time in a string with this format: 2004-05-19T08:46:04Z $oDt = ObjCreate("Chilkat.CkDateTime") $oDt.SetFromCurrentSystemTime() Local $bLocal = False Local $sCreated = $oDt.GetAsTimestamp($bLocal) ; Now build each UsernameToken block: $oWsse1 = ObjCreate("Chilkat.Xml") $oWsse1.Tag = "wsse:Security" $oWsse1.AddAttribute("xmlns:wsse","http://schemas.xmlsoap.org/ws/2003/06/secext") $oWsse1.UpdateAttrAt("wsse:UsernameToken",True,"wsu:Id","sample") $oWsse1.UpdateAttrAt("wsse:UsernameToken",True,"xmlns:wsu","http://schemas.xmlsoap.org/ws/2003/06/utility") $oWsse1.UpdateChildContent "wsse:UsernameToken|wsse:Username","sample" $oWsse1.UpdateAttrAt("wsse:UsernameToken|wsse:Password",True,"Type","wsse:PasswordText") $oWsse1.UpdateChildContent "wsse:UsernameToken|wsse:Password","oracle" $oWsse1.UpdateChildContent "wsse:UsernameToken|wsu:Created",$sCreated $oWsse2 = ObjCreate("Chilkat.Xml") $oWsse2.Tag = "wsse:Security" $oWsse2.AddAttribute("soap:actor","oracle") $oWsse2.AddAttribute("xmlns:wsse","http://schemas.xmlsoap.org/ws/2003/06/secext") $oWsse2.UpdateAttrAt("wsse:UsernameToken",True,"wsu:Id","oracle") $oWsse2.UpdateAttrAt("wsse:UsernameToken",True,"xmlns:wsu","http://schemas.xmlsoap.org/ws/2003/06/utility") $oWsse2.UpdateChildContent "wsse:UsernameToken|wsse:Username","oracle" $oWsse2.UpdateAttrAt("wsse:UsernameToken|wsse:Password",True,"Type","wsse:PasswordText") $oWsse2.UpdateChildContent "wsse:UsernameToken|wsse:Password","oracle" $oWsse2.UpdateChildContent "wsse:UsernameToken|wsu:Created",$sCreated ; Insert the UsernameToken blocks: Local $oXHeader = $oXml.GetChildWithTag("soap:Header") $oXHeader.AddChildTree($oWsse1) $oXHeader.AddChildTree($oWsse2) ; Show the XML: ConsoleWrite($oXml.GetXml() & @CRLF) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.