De duur van de geldigheid van Enphase access tokens is afhankelijk van welke soort gebruiker het token heeft aangemaakt. Indien het token met de rol system owner is aangemaakt dan is het token één jaar geldig, indien de installateur het token aangemaakt is dan is de geldigheidsduur slechts 12 uur.
Met onderstaand PHP-script kun je heel eenvoudig controleren of een token nog geldig is en welke gebruiker het token heeft aangemaakt. Hieronder het script en een voorbeeld van de output:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php // HERE YOUR TOKEN $token = 'eyJraWQiOiI6ZDEwMDA1ZC03ODk4NTRkNGQtZnNiNC1yNDRmOThlZTE3NmIiLCJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiJ9.eyJhdWQiOiIxMTI1NDU3ODMwMTIiLCJpc3MiOiJFbnRyZXoiLCJlbnBoYXNlVXNlciI6Im93bmVyIiwiZXhwIjoiMTcwODg2MDMyMyIsImlhdCI6IjE2NzczMjQzMjMiLCJqdGkiOiI2ZTQ5NTIwMS1lN2JlLTNnMTUtYjk3NC00NjJiYmNlNWQ0NTciLCJ1c2VybmFtZSI6ImluZm9AZW5ldmVyLm5sIn0.gx-RRzctXpSjQAWVHk5OAEdTxC9MfzXFb3zax2L-BoI'; //DO NOT EDIT BELOW THIS LINE $data = json_decode(base64_decode(str_replace('_', '/', str_replace('-','+',explode('.', $token)[1])))); echo 'Serienummer: '.$data->aud.PHP_EOL; echo 'Uitgever: '.$data->iss.PHP_EOL; echo 'Soort gebruiker: '.$data->enphaseUser.PHP_EOL; echo 'Geldig tot: '.date('d-m-Y H:i:s', $data->exp).PHP_EOL; echo 'Aangemaakt op: '.date('d-m-Y H:i:s', $data->iat).PHP_EOL; echo 'JTI: '.$data->jti.PHP_EOL; echo 'Username: '.$data->username.PHP_EOL; ?> |
Indien je dit script uitvoert dan zal je onderstaande output krijgen: