如何在 Python Flask OpenID 中获取 id_token?
how to get id_token in Python Flask OpenID?
我已经使用 Flask-oidc 成功实现了 Keycloak OpenID + Python (v3.6) Flask 集成。
我使用下面的代码获取用户信息,access_token 和 refresh_token
oidc = OpenIDConnect(app)
info = oidc.user_getinfo(['preferred_username', 'email', 'sub', 'given_name', 'iss'])
access_token = oidc.get_access_token()
refresh_token = oidc.get_refresh_token()
也得到了结果。但出于某种原因,我也需要 id_token。我试过了,
oidc.get_cookie_id_token()
(已弃用),但它给出的是解码结果而不是编码令牌。
有人知道如何从 flask-oidc 中获取 id_token 吗?
我找到了解决方案,
from oauth2client.client import OAuth2Credentials
id_token_jwt = OAuth2Credentials.from_json(oidc.credentials_store[info.get('sub')]).id_token_jwt
我已经使用 Flask-oidc 成功实现了 Keycloak OpenID + Python (v3.6) Flask 集成。
我使用下面的代码获取用户信息,access_token 和 refresh_token
oidc = OpenIDConnect(app)
info = oidc.user_getinfo(['preferred_username', 'email', 'sub', 'given_name', 'iss'])
access_token = oidc.get_access_token()
refresh_token = oidc.get_refresh_token()
也得到了结果。但出于某种原因,我也需要 id_token。我试过了,
oidc.get_cookie_id_token()
(已弃用),但它给出的是解码结果而不是编码令牌。
有人知道如何从 flask-oidc 中获取 id_token 吗?
我找到了解决方案,
from oauth2client.client import OAuth2Credentials
id_token_jwt = OAuth2Credentials.from_json(oidc.credentials_store[info.get('sub')]).id_token_jwt