Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: PHP: Mikä on OASIS WS-Security UsernameToken -standardi?

walkout_ [17.06.2020 14:48:31]

#

Mikä on OASIS WS-Security UsernameToken -standardi?

Jolla authentikoidutaan SOAP Serverille?

https://www.oasis-open.org/committees/download.php/13392/wss-v1.1-spec-pr-UsernameTokenProfile-01.htm

Tai miten sitä käytetään siis?

timoh [18.06.2020 14:40:23]

#

UsernameToken on yhdenlainen tokeni minkä WS-Security -viritys sisältää. Pankit, ainakin perinteisesti, käyttävät X.509 -sertifikaatteja (BinarySecurityToken).

Mutta jos kerta UsernameTokenia vaaditaan, niin kaiketi siinä sitten vain on tarkoitus autentikoitua. Se on tarkistettava vastaanottavalta taholta mistä on kysymys. Tai jos itse olet pystyttämässä palvelinpään prosessia, niin unohda koko WSS jos mitenkään on mahdollista (⊙_☉).

walkout_ [19.06.2020 07:02:30]

#

timoh kirjoitti:

(18.06.2020 14:40:23): User­na­me­Token on yhdenlainen tokeni minkä WS...

Teen siis erääseen pilivipalveluun integraatiota ja se vaati tällaisen authentikoinnin, koska on niin vanha systeemi. Ja ks. tahon apu tehdä ks. viritelmä jos itse ei osaa maksaa xxx € / tunti + ALV 24 %.

Löysin tällaisen mutta PHP Fatal error tulee jo SOAP Clientin alustuksessa koska vastapään systeemi paluttaa kirjautumissivun HTML:nä. Vaikka käyttäjätunnus, salasana ja y-tunnus ovat oikein mitkä pitää postittaa vastapään systeemiin.

https://gist.github.com/mathdev/3280448

Olen vähän vaikeassa tilanteessa kun mulla on 5-vuoden NDA systeemin kehtityksestä ja valtava sopimussakko jos paljastelen täällä liikesalaisuuksia eli vaikka lähdekoodia.

walkout_ [19.06.2020 09:01:09]

#

Ja integroitava sovellus on Visma Fivaldi.

timoh [19.06.2020 11:28:06]

#

Jostain dokumentaatiosta parasta kaivaa esille millaista infoa UsernameTokenin tulee sisältää. Gistin koodi luo yhdenlaisen sisällön, mutta se on eri asia kelpuuttaako Visman rajapinta sen.

Debuggaamista helpottaa jos esim. SoapClientin __doRequest:ssa logitat $request:in. Pystyt tarkistamaan millainen XML on käytännössä lähdössä. Ehkä se sieltä osuu paremmin silmään missä menee vikaan.

walkout_ [19.06.2020 13:57:21]

#

timoh kirjoitti:

(19.06.2020 11:28:06): Jostain doku­men­taa­tiosta parasta kaivaa...

Tämä rivi menee PHP Fatal Erroriin, koska se lukee HTML:nä kirjautmissivun, joten tämän jälkeistä koodia ei voi käynnistää.

$client = new \SoapClient($url, $options);

Documentaatiossa puhutaan kaksivaiheisesta authentikaatiosta, eli ensin katsotaan normaalisti onko käyttäjä tietyllä salasanalla olemassa ja sitten sen jälkeen UsernameTokenilla toinen tarkistus.

timoh [22.06.2020 10:12:23]

#

Voisiko tuossa nyt olla että luot tarvittavan Soap XML:n UsernameTokeneineen ja lähetät sen osana normaalia HTTP POSTia yhdessä käyttäjätietojen kanssa?

curl https://asp.fivaldi.net/pls/fv00X/xml_web.sisaanluku -Fp_username=fvdemo-xxx -Fp_password=salasana -Fp_yt=123456 -Fp_filename=@tiedosto.xml

https://community.visma.com/t5/Visma-Fivaldi-kayttovinkit/Visma-Fivaldi-Kasikirja-RAJAPINTA-OHJE/ta-p/35780?attachment-id=5040

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta