Beskrivning av webbtjänst: WSDL
Det finns en WSDL-fil (Web Service Description Library) för varje tjänst. I den här XML-filen används ett språk för att beskriva tjänsten och ange tillgängliga metoder, parametrar och servern som ska kontaktas för att tjänsten ska kunna köras.
WSDL-filgenerering
Om du vill generera en WSDL-fil måste du ange följande URL från en webbläsare:
https://<server>
/nl/jsp/schemawsdl.jsp?schema=<schema>
Med:
<server>
: Adobe Campaign programserver (nlserver web)<schema>
: schemaidentifieringsnyckel (namnrymd:schema_name)
Exempel på metoden ExecuteQuery i schemat xtk:queryDef
WSDL-filen genereras från URL
https://localhost/nl/jsp/schemawsdl.jsp?schema=xtk:queryDef
En WSDL-beskrivning börjar med att definiera de typer som används för att skapa formulärmeddelanden, som är kopplade till portar, som är kopplade till ett protokoll av bindningar som skapar webbtjänster.
Typer
Typdefinitioner baseras på XML-scheman. I det här exemplet använder metoden"ExecuteQuery" strängen"s:string" och ett XML-dokument (<s:complextype>
) som parametrar. Returvärdet för metoden ("ExecuteQueryResponse") är ett XML-dokument ( <s:complextype>
).
<types>
<s:schema elementFormDefault="qualified" targetNamespace="urn:xtk:queryDef">
<s:element name="ExecuteQuery">
<s:complexType>
<s:sequence>
<s:element maxOccurs="1" minOccurs="1" name="sessiontoken" type="s:string"/>
<s:element maxOccurs="1" minOccurs="1" name="entity">
<s:complexType>
<s:sequence>
<s:any/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="ExecuteQueryResponse">
<s:complexType>
<s:sequence>
<s:element maxOccurs="1" minOccurs="1" name="pdomOutput">
<s:complexType mixed="true">
<s:sequence>
<s:any/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
Meddelanden
<message>
beskriver namn och typer för en uppsättning fält som ska skickas. I metoden används två meddelanden för att skicka som en parameter ("ExecuteQueryIn") och returvärdet ("ExecuteQueryOut").
<message name="ExecuteQueryIn">
<part element="tns:ExecuteQuery" name="parameters"/>
</message>
<message name="ExecuteQueryOut">
<part element="tns:ExecuteQueryResponse" name="parameters"/>
</message>
PortType
<porttype>
associerar meddelandena för åtgärden ExecuteQuery som utlöses av frågan ("input") som genererar ett svar ("output").
<portType name="queryDefMethodsSoap">
<operation name="ExecuteQuery">
<input message="tns:ExecuteQueryIn"/>
<output message="tns:ExecuteQueryOut"/>
</operation>
</portType>
Bindning
<binding>
-delen anger SOAP kommunikationsprotokoll ( <soap:binding>
), datatransport i HTTP (värdet för attributet transport) och dataformatet för åtgärden ExecuteQuery. SOAP innehåller meddelandesegmenten direkt utan omformning.
<binding name="queryDefMethodsSoap" type="tns:queryDefMethodsSoap">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="ExecuteQuery">
<soap:operation soapAction="xtk:queryDef#ExecuteQuery" style="document"/>
<input>
<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:xtk:queryDef" use="literal"/>
</input>
<output>
<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:xtk:queryDef" use="literal"/>
</output>
</operation>
</binding>
Tjänst
Delen <service>
beskriver tjänsten XtkQueryDef med dess URI på URL:en för Adobe Campaign-programservern.
<service name="XtkQueryDef">
<port binding="tns:queryDefMethodsSoap" name="queryDefMethodsSoap">
<soap:address location="https://localhost/nl/jsp/soaprouter.jsp"/>
</port>
</service>
Anslutningar
Adobe Campaign har ökat säkerheten för autentiseringsmekanismer genom att införa säkerhetszoner och inställningar för sessionshantering.
Det finns två autentiseringslägen:
- via ett anrop till inloggningsmetoden(). Det här läget genererar en sessionstoken och en säkerhetstoken. Det är det säkraste läget och därför det mest rekommenderade.
eller
- via Adobe Campaign-inloggning + lösenord som skapar en sessionstoken. Sessionstoken upphör automatiskt att gälla efter en angiven period. Det här läget rekommenderas inte och kräver att säkerhetsinställningarna för vissa zoninställningar reduceras (allowUserPassword="true" och sessionTokenOnly="true").
Sessionstokensegenskaper
Sessionstoken har följande egenskaper:
-
en X-timmars livscykel (livscykeln kan konfigureras i filen serverConf.xml, standardperioden är 24 timmar)
-
en slumpmässig konstruktion (den innehåller inte längre användarens inloggning och lösenord)
-
på webben:
- sessionstoken blir en permanent token, och tas inte bort när webbläsaren stängs
- den placeras i en HTTP-ONLY-cookie (cookies måste aktiveras för operatorer)