Innhold
1 Generelt
Cerebrum har en generaliserte WebService. WebServicen snakker SOAP.
2 Oppsett av webservice
For å sette opp Cerebrums WebService forutsettes det at man har et eksisterende Cerebrum-miljø for utvikling. Oppsett av dette er beskrevet i dokumentet om verktøy for utvikling av Cerebrum
Følgende steg må utføres for å starte den generaliserte SoapServeren:
Generere nøkler
Konfigurere SoapServer
SoapServeren laster inn funksjonalitet på bakgrunn av konfigurasjon. Følgelig må eventuelle nye utvidelser være inkludert i CLASS_CONFIG parameteret i cisconf.cerebrum_ws. Man bør i tillegg definere stedet det skal logges til, port som brukes, interface tjeneren skal kjøre på, sertifikatplasseringer (SERVER_CERTIFICATE_FILE og SERVER_PRIVATE_KEY_FILE), samt legge til klientens fingeravtrykk i FINGERPRINTS.
Videre kan det være aktuelt å skru av/på autentisering eller tørrkjørings-modus gjennom variablene AUTH og DRYRUN.
Se gjerne basiskonfigurasjonen for pekepinner til hva som er aktuelt å kjøre.
Starte SoapServer
Tjeneren bør nå kunne startes. Dette gjøres enkelt med kommandoen python cerebrum/servers/cis/SoapServer.py --service-name min_webservice_test. Det kan være lurt å starte tjeneren med -h opsjonen første gang, for å få en oversikt over hvilke argumenter den kan ta. --service-name-parameteret definerer hvilken konfigurasjon tjeneren startes med (bruk gjerne den du definerte i punktet over).
Testing mot SoapServer
Når tjeneren kjører, kan det være ønskelig å teste kall mot tjeneren via Cerebrums egen testklient. Dette kan gjøres ved å kjøre f.eks. cisclient/CerebrumWSClient.py. Klienten har en -h-opsjon som gir nyttige pekepinner. Du vil antakelig bruke --auth-opsjonen for å autentisere mot tjeneren. --debug vil skrive ut XML-beskjedene som tas import og sendes til tjeneren.
En kjøring kan eksempelvis se slik ut:
python cisclient/CerebrumWSClient.py -w https://localhost:6666/SOAP/?wsdl \ -c tjeners_CA.cert --client-cert klientens_sertifikat.pem \ --client-key klientens.key --auth \ group_set_expire group_name testgruppe 2014-02-09T00:00:00.00