问题描述
请求,登录,服务端获得code. 然后用python SDK从authing换取id_token和access_token这些步骤都成功。用sdk通过access_token从authing获取用户信息也可以成功。
但是尝试本地用pyjwt package验证token就是invalid,这个可能是什么原因?看官方文档不是鼓励本地验证access token么?
重现步骤
from authing import AuthenticationClient
# 初始化 AuthenticationClient
authentication_client = AuthenticationClient(
# Authing 应用 ID
app_id=os.getenv(“AUTHING_APP_ID”),
# Authing 应用密钥
app_secret=os.getenv(“AUTHING_APP_SECRET”),
# Authing 应用地址,如 https://example.authing.cn
app_host=os.getenv(“AUTHING_APP_HOST”),
# Authing 应用配置的登录回调地址
redirect_uri=os.getenv(“DEV_AUTHING_APP_REDIRECT_URI”),
timeout=30000, # 30 seconds, default is 10 seconds
)
if code:
front_logger.info(f"user code:{code}")
# 使用 code 换取 access_token
resp_token = authentication_client.get_access_token_by_code(code)
front_logger.info(f"response access token:{resp_token}")
附加信息
- Version:
pyjwt 2.6.0 + authing官方python SDK. 5.0.2
-
Platform:
MacOS 12.6.1, M2chip