Авторизация пользователя
Когда пользователь авторизован для входа в приложение IOS, приложение может получить идентификационный токен , Код авторизации , Идентификатор пользователя Данные для этих трех полей.
php–jwt
Серверная часть получила от переднего конца идентификационный токен После строки, потому что identityToken Это JWT , поэтому нам нужно установить следующие пары сторонних библиотек identityToken Синтаксический анализ
composer require firebase/php-jwt
JWK
После установки нам необходимо получить расшифровку JWT Из JWK , которую можно получить , посетив https://appleid.apple.com/auth/keys
{
"keys": [
{
"kty": "RSA",
"kid": "AIDOPK1",
"use": "sig",
"alg": "RS256",
"n": "lxrwmuYSAsTfn-lUu4goZSXBD9ackM9OJuwUVQHmbZo6GW4Fu_auUdN5zI7Y1dEDfgt7m7QXWbHuMD01HLnD4eRtY-RNwCWdjNfEaY_esUPY3OVMrNDI15Ns13xspWS3q-13kdGv9jHI28P87RvMpjz_JCpQ5IM44oSyRnYtVJO-320SB8E2Bw92pmrenbp67KRUzTEVfGU4-obP5RZ09OxvCr1io4KJvEOjDJuuoClF66AT72WymtoMdwzUmhINjR0XSqK6H0MdWsjw7ysyd_JhmqX5CAaT9Pgi0J8lU_pcl215oANqjy7Ob-VMhug9eGyxAWVfu_1u6QJKePlE-w",
"e": "AQAB"
}
]
}Да. JWK После этого с помощью стороннего веб-сайта https://8gwifi.org/jwkconvertfunctions.jsp, мы можем легко JWK Преобразовать в PEM Сохраненный локально
анализ
После ряда подготовительных действий, если PEM Расположение файла путь/к/apple-publickey.pem Идентификационные данные авторизованного пользователя могут быть получены с помощью следующего кода
$cert_content=file_get_contents("path/to/apple-publickey.pem");
$decode=JWT::decode($identityToken,$cert_content,['RS256']);
print_r($decode);Ссылка
- IOS 13 Apple вход в учетную запись и проверка данных, связанные https://juejin.im/post/5d551d11e51d4561cf15dfae