[openstack-dev] [Keystone][Mistral][Devstack] Confusion between auth_url and auth_uri in keystone middleware

Gyorgy Szombathelyi gyorgy.szombathelyi at doclerholding.com
Thu Jun 15 15:15:44 UTC 2017

> >
> > 	auth_url is actually a dynamic parameter and depends on the
> keystone
> > auth plugin used
> > 	(auth_type=xxx). The plugin which needs this parameter, registers it.
> >
> >
> >
> > Based on this http://paste.openstack.org/show/612664/ I would say that
> > the plugin doesn't register it :( It either can be a bug, or it was
> > done intentionally, I don't know.
> >
> It should register it after you load it, via
> keystonauth1.loading.load_auth_plugin_from_conf_options()
> There are also register_auth_conf_options() and
> get_auth_plugin_conf_options,  which I think are mainly used for listing the
> most used plugins' options in the debug log. But I don't think it would be wise
> just to choose a plugin and register its options for auth_url, because it is ugly,
> I think, and can lead to other problems.

Another note: if you write this code, I think you should not use auth_url directly
creating the keystone client (did not look at the code in question, just thinking loud looking at the stacktrace).
Use keystoneauth1's loading.load_auth_plugin_from_conf_options()
and loading.load_session_from_conf_options(). You don't have to register anything if you're 
using the [keystone_authtoken] section. Lots of components introduce another config sections
for credentials, like [nova], [neutron], in this case one has to use register_auth_conf_options()
and register_session_conf_options().

More information about the OpenStack-dev mailing list