Revision a53ee093
b/snf-astakos-app/astakos/im/target/__init__.py | ||
---|---|---|
44 | 44 |
from astakos.im import auth_providers |
45 | 45 |
from astakos.im.util import prepare_response, get_context |
46 | 46 |
from astakos.im.views import requires_anonymous, render_response |
47 |
import logging |
|
48 |
|
|
49 |
logger = logging.getLogger(__name__) |
|
47 | 50 |
|
48 | 51 |
|
49 | 52 |
def init_third_party_session(request): |
... | ... | |
89 | 92 |
|
90 | 93 |
provider = auth_providers.get_provider(provider_module) |
91 | 94 |
if not provider.is_available_for_create(): |
95 |
logger.info('%s signup is disabled.' % |
|
96 |
(provider_module,)) |
|
92 | 97 |
messages.error(request, |
93 |
_(astakos_messages.AUTH_PROVIDER_INVALID_LOGIN)) |
|
98 |
_(astakos_messages.AUTH_PROVIDER_INVALID_LOGIN) |
|
99 |
% {'provider_name': provider.get_title_display, |
|
100 |
'provider': provider_module}) |
|
94 | 101 |
return HttpResponseRedirect(reverse('login')) |
95 | 102 |
|
96 | 103 |
# identifier not stored in astakos models, create pending profile |
... | ... | |
151 | 158 |
user = request.user |
152 | 159 |
if not request.user.can_add_auth_provider(provider_module, |
153 | 160 |
identifier=identifier): |
161 |
logger.info('%s failed to add %s: %r' % \ |
|
162 |
(user.log_display, provider_module, provider_info)) |
|
154 | 163 |
# TODO: handle existing uuid message separately |
155 | 164 |
messages.error(request, _(astakos_messages.AUTH_PROVIDER_ADD_FAILED) + |
156 | 165 |
u' ' + _(astakos_messages.AUTH_PROVIDER_ADD_EXISTS)) |
... | ... | |
159 | 168 |
user.add_auth_provider(provider_module, identifier=identifier, |
160 | 169 |
affiliation=affiliation, |
161 | 170 |
provider_info=provider_info) |
171 |
logger.info('%s added %s: %r' % \ |
|
172 |
(user.log_display, provider_module, provider_info)) |
|
162 | 173 |
provider = auth_providers.get_provider(provider_module) |
163 | 174 |
message = _(astakos_messages.AUTH_PROVIDER_ADDED) % provider.get_method_prompt_display |
164 | 175 |
messages.success(request, message) |
b/snf-astakos-app/astakos/im/target/shibboleth.py | ||
---|---|---|
88 | 88 |
tokens = request.META |
89 | 89 |
third_party_key = get_pending_key(request) |
90 | 90 |
|
91 |
shibboleth_headers = {} |
|
92 |
for token in dir(Tokens): |
|
93 |
if token == token.upper(): |
|
94 |
shibboleth_headers[token] = tokens.get(token, 'NOT_SET') |
|
95 |
# log shibboleth headers |
|
96 |
# TODO: info -> debug |
|
97 |
logger.info("shibboleth request: %r" % shibboleth_headers) |
|
98 |
|
|
91 | 99 |
try: |
92 | 100 |
eppn = tokens.get(Tokens.SHIB_EPPN) |
93 | 101 |
if not eppn: |
... | ... | |
114 | 122 |
|
115 | 123 |
affiliation = tokens.get(Tokens.SHIB_EP_AFFILIATION, 'Shibboleth') |
116 | 124 |
email = tokens.get(Tokens.SHIB_MAIL, '') |
117 |
#eppn, email, realname, affiliation = 'test@grnet-hq.admin.grnet.gr', 'test@grnet.gr', 'sff', None |
|
118 | 125 |
provider_info = {'eppn': eppn, 'email': email, 'name': realname} |
119 | 126 |
userid = eppn |
120 | 127 |
|
128 |
|
|
121 | 129 |
try: |
122 | 130 |
return handle_third_party_login(request, 'shibboleth', |
123 | 131 |
eppn, provider_info, |
b/snf-astakos-app/astakos/im/views.py | ||
---|---|---|
918 | 918 |
provider.delete() |
919 | 919 |
message = astakos_messages.AUTH_PROVIDER_REMOVED % \ |
920 | 920 |
provider.settings.get_method_prompt_display |
921 |
user = request.user |
|
922 |
logger.info("%s deleted %s provider (%d): %r" % (user.log_display, |
|
923 |
provider.module, |
|
924 |
int(pk), |
|
925 |
provider.info)) |
|
921 | 926 |
messages.success(request, message) |
922 | 927 |
return HttpResponseRedirect(reverse('edit_profile')) |
923 | 928 |
else: |
Also available in: Unified diff