Azure AD B2C使用PHP验证JWT
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Azure AD B2C使用PHP验证JWT,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2560字,纯文字阅读大概需要4分钟。
内容图文
![Azure AD B2C使用PHP验证JWT](/upload/InfoBanner/zyjiaocheng/781/2c97c32c50ba493f94876310846d7de8.jpg)
警告:我是一个全新的JWT新手,并试图弄明白.
首先……我的理解:
JWT包含三个分隔的段.第一部分可以是base64解码得到“东西”,我可以在第二(和第三?)段中验证声明.
我能够返回id_token,并可以将每个段分成各自的JSON对象……但这根本不安全:)
我看了一下这个https://github.com/firebase/php-jwt,但我不确定我需要提供哪些KEY来解码JWT(我知道我可以解码第一段并让孩子用于JWT但是当我有那个特定的关键对象时…我我不知道要通过什么传递给firebase进行解码呢?https://login.microsoftonline.com/fabrikamb2c.onmicrosoft.com/discovery/v2.0/keys?p=b2c_1_sign_in
请原谅我对JWT的可怕理解:/
编辑:更多信息
使用此ID TOKEN:
eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IklkVG9rZW5TaWduaW5nS2V5Q29udGFpbmVyIn0.
eyJleHAiOjE0NDIzNjAwMzQsIm5iZiI6MTQ0MjM1NjQzNCwidmVyIjoiMS4wIiwiaXNzIjoiaHR0cHM6Ly9s
b2dpbi5taWNyb3NvZnRvbmxpbmUuY29tLzc3NTUyN2ZmLTlhMzctNDMwNy04YjNkLWNjMzExZjU4ZDkyNS92
Mi4wLyIsImFjciI6ImIyY18xX3NpZ25faW5fc3RvY2siLCJzdWIiOiJOb3Qgc3VwcG9ydGVkIGN1cnJlbnRs
eS4gVXNlIG9pZCBjbGFpbS4iLCJhdWQiOiI5MGMwZmU2My1iY2YyLTQ0ZDUtOGZiNy1iOGJiYzBiMjlkYzYi
LCJpYXQiOjE0NDIzNTY0MzQsImF1dGhfdGltZSI6MTQ0MjM1NjQzNCwiaWRwIjoiZmFjZWJvb2suY29tIn0.
H-uiKcrT882pSKUtWCpj-_3b3vPs3bOWsESAhPMrL-iIIacKc6_uZrWxaWvIYkLra5czBcGKWrYwrAC8ZvQe
DJWZ50WXQrZYODEW1OUwzaD_I1f1HE0c2uvaWdGXBpDEVdsD3ExKaFlKGjFR2V7F-fPThkVDdKmkUDQX3bVc
yyj2V2nlCQ9jd7aGnokTPfLfpOjuIrTsAdPcGpe5hfSEuwYDmqOJjGs9Jp1f-eSNEiCDQOaTBSvr479L5ptP
XWeQZyX2SypN05Rjr05bjZh3j70ZUimiocfJzjibeoDCaQTz907yAg91WYuFOrQxb-5BaUoR7K-O7vxr2M-_
CQhoFA
我可以解码标题段eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IklkVG9rZW5TaWduaW5nS2V5Q29udGFpbmVyIn0到{“typ”:“JWT”,“alg”:“RS256”,“kid”:“IdTokenSigningKeyContainer”}
然后看着https://login.microsoftonline.com/fabrikamb2c.onmicrosoft.com/discovery/v2.0/keys?p=b2c_1_sign_in
我知道使用了这个关键对象
{ “孩子”: “IdTokenSigningKeyContainer”, “使用”: “SIG”, “KTY”: “RSA”, “E”: “AQAB” 中, “n”: “tLDZVZ2Eq_DFwNp24yeSq_Ha0MYbYOJs_WXIgVxQGabu5cZ9561OUtYWdB6xXXZLaZxFG02P5U2rC_CT1r0lPfC_KHYrviJ5Y_Ekif7iFV_1omLAiRksQziwA1i-hND32N5kxwEGNmZViVjWMBZ43wbIdWss4IMhrJy1WNQ07Fqp1Ee6o7QM1hTBve7bbkJkUAfjtC7mwIWqZdWoYIWBTZRXvhMgs_Aeb_pnDekosqDoWQ5aMklk3NvaaBBESqlRAJZUUf5WDFoJh7yRELOFF4lWJxtArTEiQPWVTX6PCs0klVPU6SRQqrtc4kKLCp1AC5EJqPYRGiEJpSz2nUhmAQ”}
那么……我会把钥匙的价值传给火力棒?
解决方法:
以防任何人想要快速起床和/或像我一样困惑;我可以推荐@astaykov在问题评论中指出的链接
https://github.com/Azure-Samples/active-directory-b2c-php-webapp-openidconnect
我为授权代码授权创建了一个简单的类(处理获取SSO URL,OAuth2令牌和使用外部库验证id_token)
https://gist.github.com/rcosgrave/ec92938181096fd8847a38c9cc6a37d0
内容总结
以上是互联网集市为您收集整理的Azure AD B2C使用PHP验证JWT全部内容,希望文章能够帮你解决Azure AD B2C使用PHP验证JWT所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。