Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Keystone v3 Bug Domain always falls on default

This should be a bug on keystone v3, I try to a authenticate a user but the end point auth always defaults to a default installation domain even though I pass a valid user domain during auth.

Here is how I do it

from keystoneclient.v3 import client
from keystoneclient.auth.identity import v3
from keystoneclient import session
#from keystoneclient import client
from keystoneclient.v3.client import exceptions

keystone = client.Client(user_domain="TestDomainAgain",
                        username="dev@s8-software.com", password="Test",
                        project_domain_name="TestDomain",
                        project_name="S8Wangolo",
                        auth_url="http://192.168.1.142:5000/v3"
                       )

The above always resulted in the following error

keystoneclient.openstack.common.apiclient.exceptions.Unauthorized: The request you have made requires authentication. (HTTP 401)

When I hooked in the endpoint and put some debugging message on the password module I realized that the domain I pass was ignored silently. Here we go below

AUTH PAYLOAD  {u'user': {u'domain': {u'id': u'default'}, u'password': u'Test', u'name': u'dev@s8-software.com'}}
USER INFO  {u'domain': {u'id': u'default'}, u'password': u'Test', u'name': u'dev@s8-software.com'}
Password Is  Test UserName is  dev@s8-software.com
DOMAIN REF  {'enabled': True, u'description': u'Owns users and tenants (i.e. projects) available on Identity API v2.', 'name': u'Default', 'id': u'default'} ID  default

The domain I pass in silently ignored and the default is used, which in these cases is seems to be v2. It seems they are trying to locate the user in the default domain with pain because he does not exists.

1) Am i missing something in the client.Client 2) Is it a bug

Am using Ubuntu 14.04 Icehouse.