Skip to content

DSorlov/phpFreja

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
jws
 
 
 
 
 
 
 
 
 
 
 
 

phpFreja

Simple PHP wrapper to talk to Freja eID REST API for use both in test and production enviroment.

  • Supports validation of the JWS but requires external library for that part (thanks to php-jws).
  • Supports both directed and inferred authentication, for use with qr-code and app.
  • Supports authentication and signature api but not the assertion service.
  • Well behaved functions that do not throw (atleast not by design) but always return objects for simpler handling.
  • Not developed, supported or endorsed by Verisec.

To setup your test enviroment, and then basic agreement (free!!) read this information Freja eID

Example

Init connection to API (test)

require_once('freja.php');

$frejaAPI = new phpFreja('testCertificate.pfx','SuperSecretPassword',false);

Create URL for QR-Code

$qrInfo = $frejaAPI->createAuthQRCode();

if ($qrInfo->success)
    $imageUrl = $qrInfo->url;

Init, monitor and cancel authentication request

$authResponse = $frejaAPI->initAuthentication('EMAIL','youremail@yourserver.com');

if ($authResponse->success)
    $authStatus = $frejaAPI->checkAuthRequest($authResponse->authRef);
    
$frejaAPI->cancelAuthentication($authResponse->authRef);

Init, monitor and cancel signature request

$signResponse = $frejaAPI->initSignatureRequest('EMAIL','youremail@yourserver.com','Testsign','This is the agreement text');

if ($signResponse->success)
    $signStatus = $frejaAPI->checkSignatureRequest($signResponse->signRef);

$frejaAPI->cancelSignatureRequest($authResponse->signRef);