Go to file
Grzegorz Grasza 47f155b242 Bytes-vs-str mismatch causes repeated ID mapping creates on list
LDAP drivers can yield refs with values encoded as bytestrings,
which inclues bytes local IDs, while the ID mapping layer
stores/returns strings.

During list post-processing, this mismatch prevents lookups from hitting
the seeded mapping and triggers create_id_mapping again on each pass,
causing unnecessary churn and latency during token issuance.

This change adds unit test for both cases:
 - bytes IDs: the original behavior was that the cumulative
   create_id_mapping count increased with each iteration.
 - string IDs: seeded mapping is reused; no creates across iterations.
The helper always seeds with a string local_id, normalizing the mapping
list local_id to string. After the fix, the results are the same for
string and bytestring.

Signed-off-by: Grzegorz Grasza <xek@redhat.com>
Change-Id: I89235b2721380544304221a2da67a30971c62bf9
(cherry picked from commit bc3e790f58)
2025-12-01 14:00:01 +00:00
2025-05-07 13:30:10 +02:00
2025-03-02 01:01:34 +09:00
2025-01-03 10:36:02 +09:00
2025-05-23 17:47:03 +00:00
2021-08-04 14:25:06 -04:00
2018-05-21 16:24:51 +08:00
2025-05-07 13:30:10 +02:00
2025-09-11 12:36:44 +00:00
2015-11-03 16:12:01 -08:00
2017-09-22 11:07:09 -05:00
2025-06-13 14:40:10 +00:00
2024-11-19 20:45:53 +01:00
2017-10-06 16:10:56 +00:00
2012-02-15 17:48:33 -08:00
2025-04-29 22:25:44 +00:00
2024-03-13 19:27:16 +09:00
2024-10-30 19:11:22 +00:00
2025-06-26 02:16:32 +00:00
2024-07-26 11:42:33 +02:00

OpenStack Keystone

image

OpenStack Keystone provides authentication, authorization and service discovery mechanisms via HTTP primarily for use by projects in the OpenStack family. It is most commonly deployed as an HTTP interface to existing identity systems, such as LDAP.

Developer documentation, the source of which is in doc/source/, is published at:

https://docs.openstack.org/keystone/latest

The API reference and documentation are available at:

https://docs.openstack.org/api-ref/identity

The canonical client library is available at:

https://opendev.org/openstack/python-keystoneclient

Documentation for cloud administrators is available at:

https://docs.openstack.org/keystone/latest/

The source of documentation for cloud administrators is available at:

https://opendev.org/openstack/openstack-manuals

Information about our team meeting is available at:

https://wiki.openstack.org/wiki/Meetings/KeystoneMeeting

Release notes is available at:

https://docs.openstack.org/releasenotes/keystone

Bugs and feature requests are tracked on Launchpad at:

https://bugs.launchpad.net/keystone

Future design work is tracked at:

https://specs.openstack.org/openstack/keystone-specs

Contributors are encouraged to join IRC (#openstack-keystone on OFTC):

https://wiki.openstack.org/wiki/IRC

Source for the project:

https://opendev.org/openstack/keystone

For information on contributing to Keystone, see CONTRIBUTING.rst.

Description
OpenStack Identity (Keystone)
Readme 242 MiB
Languages
Python 99.5%
Shell 0.5%