Public bug reported:

If the federation mapping depends on a request variable that is not
present (e.g. REMOTE_USER is not set) then keystone blows up with a
stack trace.

Ideally, something a little more user-friendly might happen.

Trace below:


[Wed Jul 15 04:29:44 2015] [error] 1827 ERROR keystone.common.wsgi [-] tuple 
index out of range
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi Traceback 
(most recent call last):
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/common/wsgi.py", line 239, in __call__
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     result = 
method(context, **params)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/controllers.py", line 292, in 
federated_sso_auth
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
protocol_id)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/controllers.py", line 267, in 
federated_authentication
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     return 
self.authenticate_for_token(context, auth=auth)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/controllers.py", line 377, in 
authenticate_for_token
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
self.authenticate(context, auth_info, auth_context)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/controllers.py", line 502, in authenticate
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
auth_context)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/plugins/mapped.py", line 70, in authenticate
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
self.identity_api)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/plugins/mapped.py", line 144, in 
handle_unscoped_token
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
federation_api, identity_api)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/plugins/mapped.py", line 193, in 
apply_mapping_filter
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
mapped_properties = rule_processor.process(assertion)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/utils.py", line 471, in process
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
new_local = self._update_local_mapping(local, direct_maps)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/utils.py", line 613, in 
_update_local_mapping
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
new_value = self._update_local_mapping(v, direct_maps)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/utils.py", line 615, in 
_update_local_mapping
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
new_value = v.format(*direct_maps)
[Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi IndexError: 
tuple index out of range

** Affects: keystone
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1474660

Title:
  Stack trace if federation mapping references unavailable request
  variables

Status in Keystone:
  New

Bug description:
  If the federation mapping depends on a request variable that is not
  present (e.g. REMOTE_USER is not set) then keystone blows up with a
  stack trace.

  Ideally, something a little more user-friendly might happen.

  Trace below:

  
  [Wed Jul 15 04:29:44 2015] [error] 1827 ERROR keystone.common.wsgi [-] tuple 
index out of range
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi Traceback 
(most recent call last):
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/common/wsgi.py", line 239, in __call__
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     result 
= method(context, **params)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/controllers.py", line 292, in 
federated_sso_auth
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
protocol_id)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/controllers.py", line 267, in 
federated_authentication
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     return 
self.authenticate_for_token(context, auth=auth)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/controllers.py", line 377, in 
authenticate_for_token
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
self.authenticate(context, auth_info, auth_context)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/controllers.py", line 502, in authenticate
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
auth_context)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/plugins/mapped.py", line 70, in authenticate
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
self.identity_api)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/plugins/mapped.py", line 144, in 
handle_unscoped_token
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
federation_api, identity_api)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/auth/plugins/mapped.py", line 193, in 
apply_mapping_filter
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
mapped_properties = rule_processor.process(assertion)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/utils.py", line 471, in process
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
new_local = self._update_local_mapping(local, direct_maps)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/utils.py", line 613, in 
_update_local_mapping
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
new_value = self._update_local_mapping(v, direct_maps)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi   File 
"/opt/stack/keystone/keystone/contrib/federation/utils.py", line 615, in 
_update_local_mapping
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi     
new_value = v.format(*direct_maps)
  [Wed Jul 15 04:29:44 2015] [error] 1827 TRACE keystone.common.wsgi 
IndexError: tuple index out of range

To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1474660/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to