+from django.dispatch import receiver
+from django_openid_auth.signals import openid_login_complete
+from openid.extensions import ax
+
+
+@receiver(openid_login_complete)
+def post_openid_login(sender, request, openid_response, **kwargs):
+ fetch_response = ax.FetchResponse.fromSuccessResponse(openid_response)
+ if fetch_response:
+ proxy = fetch_response.getSingle('http://openid.plgrid.pl/certificate/proxy')
+ user_cert = fetch_response.getSingle('http://openid.plgrid.pl/certificate/userCert')
+ proxy_priv_key = fetch_response.getSingle('http://openid.plgrid.pl/certificate/proxyPrivKey')
+
+ request.session['proxy'] = (proxy + proxy_priv_key + user_cert).replace('<br>', '\n')