← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1267636] Re: Horizon will not authenticate against keystone v3

 

For clarification, I added django-openstack-auth to the affected
project. Thanks for the fix.

** Also affects: django-openstack-auth
   Importance: Undecided
       Status: New

** Changed in: django-openstack-auth
   Importance: Undecided => High

** Changed in: django-openstack-auth
     Assignee: (unassigned) => David Lyle (david-lyle)

** Changed in: django-openstack-auth
       Status: New => Fix Committed

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1267636

Title:
  Horizon will not authenticate against keystone v3

Status in Django OpenStack Auth:
  Fix Committed
Status in OpenStack Dashboard (Horizon):
  In Progress

Bug description:

  Using devstack.
  In /opt/stack/horizon/horizon/openstack_dashboard/local/local_settings.py

  Setting the following

  OPENSTACK_API_VERSIONS = {
      "identity": 3
  }

  results in an authentication failure in keystone.

  A keystone v3 endpoint is available.

  What follows are the keystone logs for the failure case:

  (eventlet.wsgi.server): 2014-01-09 14:07:04,229 INFO log write (28305)
  accepted ('127.0.0.1', 41111)

  (routes.middleware): 2014-01-09 14:07:04,231 DEBUG middleware __call__ Matched POST /auth/tokens
  (routes.middleware): 2014-01-09 14:07:04,231 DEBUG middleware __call__ Route path: '{path_info:.*}', defaults: {'controller': <keystone.contrib.user_crud.core.CrudExtension object at 0x27757d0>}
  (routes.middleware): 2014-01-09 14:07:04,232 DEBUG middleware __call__ Match dict: {'controller': <keystone.contrib.user_crud.core.CrudExtension object at 0x27757d0>, 'path_info': '/auth/tokens'}
  (routes.middleware): 2014-01-09 14:07:04,232 DEBUG middleware __call__ Matched POST /auth/tokens
  (routes.middleware): 2014-01-09 14:07:04,232 DEBUG middleware __call__ Route path: '{path_info:.*}', defaults: {'controller': <keystone.common.wsgi.ComposingRouter object at 0x2775e50>}
  (routes.middleware): 2014-01-09 14:07:04,232 DEBUG middleware __call__ Match dict: {'controller': <keystone.common.wsgi.ComposingRouter object at 0x2775e50>, 'path_info': '/auth/tokens'}
  (routes.middleware): 2014-01-09 14:07:04,232 DEBUG middleware __call__ No route matched for POST /auth/tokens
  (access): 2014-01-09 14:07:04,233 INFO core __call__ 127.0.0.1 - - [09/Jan/2014:22:07:04 +0000] "POST http://127.0.0.1:5000/v2.0/auth/tokens HTTP/1.0" 404 93
  (eventlet.wsgi.server): 2014-01-09 14:07:04,233 INFO log write 127.0.0.1 - - [09/Jan/2014 14:07:04] "POST /v2.0/auth/tokens HTTP/1.1" 404 228 0.002791

  
  When using the default (v2.0) keystone (having the above code commented out), authentication succeeds:

  What follows are the corresponding partial  keystone logs for the
  success case:

  (eventlet.wsgi.server): 2014-01-09 14:08:41,806 INFO log write (28305)
  accepted ('127.0.0.1', 41112)

  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Matched POST /tokens
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Route path: '{path_info:.*}', defaults: {'controller': <keystone.contrib.user_crud.core.CrudExtension object at 0x27757d0>}
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Match dict: {'controller': <keystone.contrib.user_crud.core.CrudExtension object at 0x27757d0>, 'path_info': '/tokens'}
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Matched POST /tokens
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Route path: '{path_info:.*}', defaults: {'controller': <keystone.common.wsgi.ComposingRouter object at 0x2775e50>}
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Match dict: {'controller': <keystone.common.wsgi.ComposingRouter object at 0x2775e50>, 'path_info': '/tokens'}
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Matched POST /tokens
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Route path: '/tokens', defaults: {'action': u'authenticate', 'controller': <keystone.token.controllers.Auth object at 0x2775f50>}
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Match dict: {'action': u'authenticate', 'controller': <keystone.token.controllers.Auth object at 0x2775f50>}
  (keystone.common.wsgi): 2014-01-09 14:08:41,808 DEBUG wsgi __call__ arg_dict: {}
  (keystone.openstack.common.versionutils): 2014-01-09 14:08:41,809 WARNING log deprecated Deprecated: v2 API is deprecated as of Icehouse in favor of v3 API and may be removed in K.
  (dogpile.core.dogpile): 2014-01-09 14:08:41,809 DEBUG dogpile _enter NeedRegenerationException

  Using (eventlet.wsgi.server): 2014-01-09 14:08:41,806 INFO log write
  (28305) accepted ('127.0.0.1', 41112)

  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Matched POST /tokens
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Route path: '{path_info:.*}', defaults: {'controller': <keystone.contrib.user_crud.core.CrudExtension object at 0x27757d0>}
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Match dict: {'controller': <keystone.contrib.user_crud.core.CrudExtension object at 0x27757d0>, 'path_info': '/tokens'}
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Matched POST /tokens
  (routes.middleware): 2014-01-09 14:08:41,807 DEBUG middleware __call__ Route path: '{path_info:.*}', defaults: {'controller': <keystone.common.wsgi.ComposingRouter object at 0x2775e50>}
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Match dict: {'controller': <keystone.common.wsgi.ComposingRouter object at 0x2775e50>, 'path_info': '/tokens'}
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Matched POST /tokens
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Route path: '/tokens', defaults: {'action': u'authenticate', 'controller': <keystone.token.controllers.Auth object at 0x2775f50>}
  (routes.middleware): 2014-01-09 14:08:41,808 DEBUG middleware __call__ Match dict: {'action': u'authenticate', 'controller': <keystone.token.controllers.Auth object at 0x2775f50>}
  (keystone.common.wsgi): 2014-01-09 14:08:41,808 DEBUG wsgi __call__ arg_dict: {}
  (keystone.openstack.common.versionutils): 2014-01-09 14:08:41,809 WARNING log deprecated Deprecated: v2 API is deprecated as of Icehouse in favor of v3 API and may be removed in K.
  (dogpile.core.dogpile): 2014-01-09 14:08:41,809 DEBUG dogpile _enter NeedRegenerationException

  Fails with this keystone/horizon combination:

  Keystone commit hash: f33ec9e5bcd82e0debfa815c7ab551c79854f841
  (Jan 7)
  Horizon commit hash:  1dd9ec17ed81873057c3423b8632d13d159da64a
  (Nov 18)

  As well as with a keystone from around the same era:
  Keystone commit hash: 2ab2c624353067ba0989720414e5cde2d4792bcc
  (Nov 15) 

  Cheers,
  Chris

To manage notifications about this bug go to:
https://bugs.launchpad.net/django-openstack-auth/+bug/1267636/+subscriptions


References