Sziasztok!
Kolárovics Gábortól (Mindennap Kft.) kaptam segítséget, amit most
a saját tapasztalatokkal együtt megosztok Veletek, hátha jól jön
majd valaki másnak is.
Kétféle módon lehetne kezelni ezt a problémát. Az egyik módszer,
hogy beállítjuk a Magic.ini SSLCACertificateFile,
SSLClientCertificateFile és SSLClientCertificatePassword
tulajdonságait. Ennek a megoldásnak - ugye - az a gyengéje, hogy
minden - ezzel a Magic.ini-vel futó - uniPaaS minden https
kéréséhez az itt megadott tanúsítványt fogja elküldeni a rendszer.
A másik módszer a uniPaaS ClientCertificateAdd és
ClientCertificateDiscard függvények használata lenne a HTTPPost
függvény hívása előtt és után. Ez a megoldás tulajdonképpen jó,
csak nagyon alul dokumentált, és hiba fellépése esetén lehet túrni
mondjuk a Yahoo-s Magic levelezőlistát megoldásért.
Nekünk egyik megoldás sem működik, mert saját maga által aláírt
(ún. self-signed) tanúsítványt kaptunk, amit a uniPaaS nem
támogat, úgyhogy marad az, hogy megírjuk a hívást PHP-ben, és azt
hívogatjuk uniPaaS-ból. A PHP-s megvalósításra láthattok itt egy
példát:
http://arguments.callee.info/2009/02/10/http-https-and-ssl-via-php/
A lehetőségek közül ez tűnik a legegyszerűbbnek, bár még nem
próbáltam. (Ennél lehet sokkal egyszerűbben is hívni web
szolgáltatást PHP-ből. Ez most a tanúsítvány miatt ilyen
bonyolult!)
Üdvözlettel:
Dávid