Wednesday, 2026-05-27

opendevreviewAde Lee proposed openstack/keystone master: Allow admins to create projects, users and domains with explicit IDs  https://review.opendev.org/c/openstack/keystone/+/98344101:43
*** ralonsoh is now known as ralonsoh_lunch11:23
*** ralonsoh_lunch is now known as ralonsoh12:48
d34dh0r53#startmeeting keystone15:02
opendevmeetMeeting started Wed May 27 15:02:37 2026 UTC and is due to finish in 60 minutes.  The chair is d34dh0r53. Information about MeetBot at http://wiki.debian.org/MeetBot.15:02
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.15:02
opendevmeetThe meeting name has been set to 'keystone'15:02
d34dh0r53Reminder: This meeting takes place under the OpenInfra Foundation Code of Conduct15:03
d34dh0r53#link https://openinfra.dev/legal/code-of-conduct15:03
d34dh0r53#topic roll call15:03
gtemao/15:03
d34dh0r53admiyo, bbobrov, crisloma, d34dh0r53, dpar, dstanek, hrybacki, lbragstad, lwanderley, kmalloc, rodrigods, samueldmq, ruan_he, wxy, sonuk, vishakha, Ajay, rafaelwe, xek, gmann, zaitcev, reqa, dmendiza[m], dmendiza, mharley, jph, gtema, cardoe, deydra15:03
d34dh0r53dmendiza: 👋15:03
d34dh0r53#topic review past meeting work items15:04
d34dh0r53#link https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-05-20-15.05.html15:05
d34dh0r53nothing to review from last meeting15:05
d34dh0r53#topic liaison updates15:05
d34dh0r53nothing from me15:05
gtemaneither from me15:05
d34dh0r53#topic specification Secure RBAC (dmendiza)15:06
d34dh0r53#link https://governance.openstack.org/tc/goals/selected/consistent-and-secure-rbac.html#z-release-timeline_15:06
d34dh0r532026.1 Release Timeline15:06
d34dh0r53Update oslo.policy in keystone to enforce_new_defaults=True15:06
d34dh0r53Update oslo.policy in keystone to enforce_scope=True15:06
d34dh0r53I guess dmendiza isn't around15:08
d34dh0r53#topic specification Secuirty Compliance Testing (dmendiza)15:08
d34dh0r53#link https://review.opendev.org/c/openstack/devstack/+/95796915:08
d34dh0r53#topic keystone-rs15:08
d34dh0r53#link https://github.com/openstack-experimental/keystone15:08
gtemaI have completed rework of the auth to build a ValidatedSecurityContext15:09
gtemathat gives possibility to authenticate using token, SPIFFE mTLS, etc without trying to "map" those other methods to the traditional token type15:09
gtemawith this I have now possibility to send requests with mTLS and map them to identities15:10
gtemathe storage for those bindings is raft15:10
gtemawhat is missing for that to be really useful is a real admin interface which gives possibility to manage mappings in a trusted environment (bootstrap)15:11
gtemaso for that I added the admin listener which is based on the UDS and also uses SPIFFE for authentication15:11
gtemawith the difference that in the config it is possible to specify the SVID (this is how the ID of spiffe is called).15:12
gtemathis is the mapped in the context into the "admin" user and it allows bootstrapping keystone while already having authentication/authorization enforced without going directly into the database15:12
gtemaidea is to extend policies with "is_admin" (which exactly stands for user authenticated as admin and not having the admin role) and in addition to that to enforce ceratin operations to be performed only through the internal/admin interface15:14
gtemaone soft disadvantage is that with that I make SPIFFE mandatory dependency. But it is a de-facto standard nowadays anyway in any zero-trust env, so it should not be a problem15:14
gtemaand when necessary other "fallbacks" can be implemented. Just for now this is the easiest (and actually the safest) possible method15:15
gtemaAnother topic15:15
gtemaI had a first meeting with the students last week that would be supporting the RS development over the next 10-11 weeks. They just started onboarding, but ... I am happy to have more hands15:16
d34dh0r53ack15:16
d34dh0r53that's awesome!15:16
gtemathat's it on the topic15:16
d34dh0r53thanks gtema 15:17
d34dh0r53#topic open discussion15:17
d34dh0r53#link https://review.opendev.org/c/openstack/keystone-specs/+/98399315:18
d34dh0r53I need to review that one15:18
gtemaI guess that's from 2 weeks ago. I still had no time to go thoroughly, but there were few points where I was not feeling comfortable15:18
d34dh0r53okay15:19
d34dh0r53anything else for open discussion?15:20
gtemaI doubt, looks like there are only 2 of us15:20
d34dh0r53yeah, let's run through the bugs15:20
d34dh0r53#topic bug review15:20
d34dh0r53#link https://bugs.launchpad.net/keystone/?orderby=-id&start=015:20
d34dh0r53no new bugs for keystone15:21
d34dh0r53#link https://bugs.launchpad.net/python-keystoneclient/?orderby=-id&start=015:21
d34dh0r53nothing new in python-keystoneclient15:21
d34dh0r53#link https://bugs.launchpad.net/keystoneauth/+bugs?orderby=-id&start=015:21
d34dh0r53keystoneauth is good15:22
d34dh0r53#link https://bugs.launchpad.net/keystonemiddleware/+bugs?orderby=-id&start=015:22
d34dh0r53looks like we do have a new bug in keystonemiddleware15:22
d34dh0r53#link https://bugs.launchpad.net/keystonemiddleware/+bug/215356115:22
gtemaI was proposing a fix for it but now I see there was a comment in bug afterwards that I haven't seen15:23
* dmendiza[m] sneaks in at the last minute15:23
d34dh0r53yeah, gmann made a comment15:24
d34dh0r53hi dmendiza 👋15:25
d34dh0r53I think gmann makes a good point15:28
gtemaI am not convinced. At the end there is and always was a certain interpretation freedom (in HTTP) leading to many weird confusions15:29
d34dh0r53yeah, especially with the 4xx returns15:30
gtemaI guess the "security" aspect could be addressed by the CSP by simply forbidding all requests with x-service-token header set on the proxy level15:30
gtemasince in the ideal world 403 means you are not authorized to do that operation, but I know who you are15:31
gtemawhich fits in this case15:32
d34dh0r53yeah15:32
gtemaI am actually wondering that the bug itself was created refering the tempest failures, and now gmann says it is not actually an issue for tempest15:33
d34dh0r53I guess we should discuss it in the bug itself15:37
d34dh0r53moving on to pycadf15:37
d34dh0r53#link https://bugs.launchpad.net/pycadf/+bugs?orderby=-id&start=015:37
d34dh0r53no new bugs there15:38
d34dh0r53#link https://bugs.launchpad.net/ldappool/+bugs?orderby=-id&start=015:38
d34dh0r53ldappool is also good15:38
d34dh0r53#topic conclusion15:38
d34dh0r53Thanks all!15:38
gtemathanks Dave15:38
d34dh0r53#endmeeting15:38
opendevmeetMeeting ended Wed May 27 15:38:39 2026 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)15:38
opendevmeetMinutes:        https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-05-27-15.02.html15:38
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-05-27-15.02.txt15:38
opendevmeetLog:            https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-05-27-15.02.log.html15:38
gmaangtema: I opened the bug and then found it is tempest test bug but cinder that is why mark invalid for cinder. My main concern is not 403 vs 401 but telling that this is not right role for the service which is security leak at some way17:44
gtemathanks for explaining. In reality there are many more reasons why 403 may be returned (I know it is not really the case for the middleware), but imagine the keystone policy actually block token verification17:46
gtemaand when in keystone user does not have the privilege to do something we also return 403 (sometimes of course we explicitly hide it behind 404 to not to expose resource existence)17:47
gtemaand I think we can return 403 from the token validation (i.e. x-auth-token is not admin/service/whatever and x-subject-token is not owned by the user)17:51
gmaanI agree with the user token, but the service token is a little different, and I feel that, as much as we can hide internal details, it is better. User can pass their token, and if we return 403 they can get to know they need some extra role to be qualified as a service token. 17:55
gmaanThe service token use case is only to extend the user token expisr and only valid when they have the required roles, so denying that with 401 always make sense to me17:55
gtemaI understand what you mean, but not convinced. I guess this can go really both ways and they both can be "valid"18:00
gmaanyeah, I am not saying this is very wrong but it can be more correct. again my opinion might differ from many but that is whsat I thought when it comes to service token18:01
opendevreviewArtem Goncharov proposed openstack/keystonemiddleware master: Adopt pre-commit  https://review.opendev.org/c/openstack/keystonemiddleware/+/98965118:12
opendevreviewArtem Goncharov proposed openstack/keystonemiddleware master: Enable mypy for typing in pre-commit  https://review.opendev.org/c/openstack/keystonemiddleware/+/98965218:12

Generated by irclog2html.py 4.1.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!