diff --git a/gvsds/apps/gerp/oidc.py b/gvsds/apps/gerp/oidc.py index af8e6163..db645287 100644 --- a/gvsds/apps/gerp/oidc.py +++ b/gvsds/apps/gerp/oidc.py @@ -463,7 +463,9 @@ class OIDCUserInfoView(APIView): return Response({'error': 'invalid_token'}, status=401) token = auth[7:] try: - payload = jwt.decode(token, _GetPrivateKey().public_key(), algorithms=['RS256']) + # verify_aud 关闭:pyjwt>=2.13 未传 audience 时 payload 含 aud 必抛 InvalidAudienceError; + # aud 归属由下方 _ClientIds() 手动校验 + payload = jwt.decode(token, _GetPrivateKey().public_key(), algorithms=['RS256'], options={'verify_aud': False}) except jwt.PyJWTError as e: logger.warning('[OIDC] userinfo token 校验失败: %s', e) return Response({'error': 'invalid_token'}, status=401)