WEBサイト制作・アプリ開発・システム開発・ブランディングデザイン制作に関するご相談はお気軽にご連絡ください。
構想段階からじっくりとヒアリングし、お客様の課題にあわせたアプローチ手法でお客様の“欲しかった”をカタチにしてご提案いたします。
Blog スタッフブログ
PHP
システム開発
[PHP]OpenIDのIDトークンからデータを取得する
システム開発担当のTFです。
やり方
- IDトークンを、「.」で分割する
- 分割すると、ヘッダー・ペイロード・署名にわかれる
- 分割したそれぞれを、Base64URLデコードをかける
- ペイロードをjsonデコードし、必要な値を取り出す
参考
OpenID Connect IDトークン署名検証
IDトークンが分かれば OpenID Connect が分かる
サンプル
<?php
// id_tokenを「.」で分割する
$id_tokens = explode('.', $_POST['id_token']);
// base64デコードする
$id_token_jsons = [];
foreach($id_tokens AS $id_token){
$id_token_jsons[] = base64_decode($id_token);
}
// ペイロードをjsonデコードする
$payload = json_decode($id_token_jsons[1], true);
// ペイロードの値を使って処理
?>