如何在Python Flask OpenID中获取id_token?

问题描述 投票:0回答:1

我已经成功地使用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吗?

python flask openid
1个回答
0
投票

我找到了解决方案,

from oauth2client.client import OAuth2Credentials
id_token_jwt = OAuth2Credentials.from_json(oidc.credentials_store[info.get('sub')]).id_token_jwt
© www.soinside.com 2019 - 2024. All rights reserved.