Я настроил нового клиента B2C в Azure и использую oauth2_proxy (более конкретно: docker-oauth2_proxy) для аутентификации против него.
Требовалось настроить пользовательские URL-адреса для входа, но сам процесс входа в систему работает:
- name: OAUTH2_PROXY_LOGIN_URL
value: https://login.microsoftonline.com/tfp/<my-tenant-name>.onmicrosoft.com/b2c_1_policy/oauth2/v2.0/authorize
- name: OAUTH2_PROXY_REDEEM_URL
value: https://login.microsoftonline.com/tfp/<my-tenant-name>.onmicrosoft.com/b2c_1_policy/oauth2/v2.0/token
Однако я получаю сообщение об ошибке после того, как меня перенаправляют обратно на https://my-app.example.com а>:
oauthproxy.go:527: error redeeming code missing email
Я попытался просмотреть полученный токен, но не смог его декодировать через https://jwt.ms.
Так как я не знаю, что именно там содержится, я не хочу публиковать его здесь, но он начинается с eyJraWQi...
, который может быть декодирован по base-64 в {"kid":"cpimcore_09252015","ver":"1.0","zip":"Deflate","ser":"1.0"}
Полный формат ответа:
/oauth2/callback?state=a0d367fd2d7337b8fbae8d72052022c7%3a%2f&code=eyJraWQiOiJjcGltY29yZV8wOTI1MjAxNSIsInZlciI6IjEuMCIsInppcCI6IkRlZmxhdGUiLCJzZXIiOiIxLjAifQ..[base64*16].[base64*568].[base64*22]
где [base64*n]
обозначает строку из n
символов, которые выглядят как данные в кодировке base 64.
Есть идеи, как декодировать этот токен?