Revision ed355f9a
b/snf-astakos-app/astakos/im/tests/auth.py | ||
---|---|---|
76 | 76 |
client.set_tokens(mail="kpap@synnefo.org", eppn="kpapeppn", |
77 | 77 |
cn="Kostas Papadimitriou", |
78 | 78 |
ep_affiliation="Test Affiliation") |
79 |
r = client.get(ui_url('login/shibboleth?'), follow=True) |
|
79 |
r = client.get(ui_url('login/shibboleth?'), follow=True, |
|
80 |
**{'HTTP_SHIB_CUSTOM_IDP_KEY': 'test'}) |
|
80 | 81 |
token = PendingThirdPartyUser.objects.get().token |
81 | 82 |
self.assertRedirects(r, ui_url('signup?third_party_token=%s' % token)) |
82 | 83 |
self.assertEqual(r.status_code, 200) |
... | ... | |
128 | 129 |
self.assertEqual(AstakosUserAuthProvider.objects.count(), 1) |
129 | 130 |
self.assertEqual(PendingThirdPartyUser.objects.count(), 0) |
130 | 131 |
|
132 |
user = AstakosUser.objects.get() |
|
133 |
provider = user.get_auth_provider("shibboleth") |
|
134 |
headers = provider.provider_details['info']['headers'] |
|
135 |
self.assertEqual(headers.get('SHIB_CUSTOM_IDP_KEY'), 'test') |
|
136 |
|
|
131 | 137 |
# provider info stored |
132 | 138 |
provider = AstakosUserAuthProvider.objects.get(module="shibboleth") |
133 | 139 |
self.assertEqual(provider.affiliation, 'Test Affiliation') |
... | ... | |
238 | 244 |
self.assertTrue(r.context['request'].user.email == "kpap@synnefo.org") |
239 | 245 |
self.assertRedirects(r, ui_url('landing')) |
240 | 246 |
self.assertEqual(r.status_code, 200) |
247 |
|
|
248 |
user = r.context['request'].user |
|
241 | 249 |
client.logout() |
242 | 250 |
client.reset_tokens() |
243 | 251 |
|
b/snf-astakos-app/astakos/im/views/target/shibboleth.py | ||
---|---|---|
84 | 84 |
shibboleth_headers[token] = request.META.get(getattr(Tokens, |
85 | 85 |
token), |
86 | 86 |
'NOT_SET') |
87 |
# also include arbitrary shibboleth headers |
|
88 |
for key in request.META.keys(): |
|
89 |
if key.startswith('HTTP_SHIB_'): |
|
90 |
shibboleth_headers[key.replace('HTTP_', '')] = \ |
|
91 |
request.META.get(key) |
|
87 | 92 |
|
88 | 93 |
# log shibboleth headers |
89 | 94 |
# TODO: info -> debug |
Also available in: Unified diff