导致Openid错误的原因:“invalidate_handle”来自服务器

3 投票
1 回答
693 浏览
提问于 2025-04-15 22:10

我刚接触openid,遇到了一个“invalidate_handle”的错误,我不知道该怎么解决。
我正在使用django_authopenid这个工具。

[Thu Apr 29 14:13:28 2010] [error] Generated checkid_setup request to https://www.google.com/accounts/o8/ud with assocication AOxxxxxxxxOX5-V9oDc3-btHhFxzAcccccccccc2RTHgh    
[Thu Apr 29 14:13:29 2010] [error] Error attempting to use stored discovery information: <openid.consumer.consumer.TypeURIMismatch: Required type http://specs.openid.net/auth/2.0/signon not found in ['http://specs.openid.net/auth/2.0/server', 'http://openid.net/srv/ax/1.0', 'http://specs.openid.net/extensions/ui/1.0/mode/popup', 'http://specs.openid.net/extensions/ui/1.0/icon', 'http://specs.openid.net/extensions/pape/1.0'] for endpoint <openid.consumer.discover.OpenIDServiceEndpoint server_url='https://www.google.com/accounts/o8/ud' claimed_id=None local_id=None canonicalID=None used_yadis=True >>  
[Thu Apr 29 14:13:29 2010] [error] Attempting discovery to verify endpoint  
[Thu Apr 29 14:13:29 2010] [error] Performing discovery on https://www.google.com/accounts/o8/id?id=AOxxxxxxxxOX5-V9oDc3-btHhFxzAcccccccccc2RTHgh   
[Thu Apr 29 14:13:29 2010] [error] Received id_res response from https://www.google.com/accounts/o8/ud using association AOxxxxxxxxOX5-V9oDc3-btHhFxzAcccccccccc2RTHgh  
[Thu Apr 29 14:13:29 2010] [error] Using OpenID check_authentication  
[Thu Apr 29 14:13:29 2010] [error] op_endpoint  
[Thu Apr 29 14:13:29 2010] [error] claimed_id  
[Thu Apr 29 14:13:29 2010] [error] identity  
[Thu Apr 29 14:13:29 2010] [error] return_to  
[Thu Apr 29 14:13:29 2010] [error] response_nonce  
[Thu Apr 29 14:13:29 2010] [error] assoc_handle  
[Thu Apr 29 14:13:29 2010] [error] Received "invalidate_handle" from server https://www.google.com/accounts/o8/ud  

1 个回答

2

openid.invalidate_handle 是服务提供者用来告诉你的 RP(依赖方)发送了一个不存在或已经过期的关联的方式。RP 应该通过删除这个关联的句柄来回应,这样就不会在未来被重复使用。如果你总是收到 invalidate_handles 的回应,那说明你使用的 RP 有问题。

撰写回答