Wednesday, 2026-09-02

*** zseguin is now known as Guest1691406:31
opendevreviewAndre Aranha proposed openstack/python-keystoneclient master: Allow specifying project and domain IDs at create time  https://review.opendev.org/c/openstack/python-keystoneclient/+/100351912:10
gtema#startmeeting keystone15:03
opendevmeetMeeting started Wed Sep  2 15:03:55 2026 UTC and is due to finish in 60 minutes.  The chair is gtema. Information about MeetBot at http://wiki.debian.org/MeetBot.15:03
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.15:03
opendevmeetThe meeting name has been set to 'keystone'15:03
gtemaReminder: This meeting takes place under the OpenInfra Foundation Code of Conduct15:04
gtema#link https://openinfra.dev/legal/code-of-conduct15:04
gtema#topic roll call15:04
gtemabbobrov, d34dh0r53, xek, gmann, dmendiza[m], dmendiza, mharley, jph, gtema, cardoe, deydra15:04
cardoeo/15:04
gtemaehm, not that many15:05
dmendiza[m]🙋‍♂️15:06
gtemaoh yeah, looks better15:06
moutazchaara[m]/o15:06
gtema#topic review past meeting work items15:06
gtema#link https://meetings.opendev.org/meetings/keystone/202615:06
gtemalast meeting was month ago and it was pretty empty, so no actions15:07
gtema#topic liaison updates15:07
gtemaI do not have many. We are also in the Feature Freeze15:07
gtemas/many/any15:07
d34dh0r53o/ sorry, was in a meeting that went long15:08
gteman.p. Dave Wilde (d34dh0r53) 15:08
gtema#topic specification15:08
gtema#topic Secure RBAC (dmendiza)15:08
gtema#link https://governance.openstack.org/tc/goals/selected/consistent-and-secure-rbac.html#z-release-timeline_15:08
gtemaaren't we done with it?15:09
dmendiza[m]I remember there was something pending, but I don't remember what it was? 🤔15:09
gtemawell, most of us need to recall things forgotten during PTO or whatever else was disturbing15:10
dmendiza[m]Yeah, big move for me.  Finally at my house, but everything is in chaos.  It'll be a few weeks before everything is unpacked and renovation projects are wrapped up. 😅15:11
dmendiza[m]I'll look through evesdrop and figure out what it was15:12
gtemaok, let's move on15:12
gtema#topic Secuirty Compliance Testing (dmendiza)15:12
gtema#link https://review.opendev.org/c/openstack/devstack/+/95796915:12
dmendiza[m]Need to dus off the cobwebs from those patches15:13
dmendiza[m]No progress until Indri probably15:13
gtemaok, next up15:13
gtema#topic User Specified Project/User UUIDs (dmendiza, alee)15:13
gtema#link https://review.opendev.org/c/openstack/keystone-specs/+/99732015:13
gtemaI've seen work on specs restarted, that's good15:14
gtemanot sure there would be any other updates on that one15:15
gtemanext one15:15
gtema#topic Add IP allowlist for users, domains, and projects15:15
gtema#link https://blueprints.launchpad.net/keystone/+spec/keystone-ip-allowlist15:16
gtema#link https://review.opendev.org/c/openstack/keystone/+/98540615:16
gtemamost likely those interested in that topic are not here15:16
gtemaI remember I was providing some initial feedback to the spec, later was thinking further about that having a sligtly different idea, but haven't re-checked the spec due to other prios15:17
gtemanext15:17
gtema#topic keystone-rs15:18
gtemaI am just back from PTO, so not much update here as well15:18
gtemabut I have started working on switching the whole control plane of openstack to mTLS switching to JWT tokens15:18
gtemathis is a pretty massive one, so I do not expect to end it in next few days ;-) But the plan is fixed and goes good15:19
gtemaok, next one15:20
gtema#topic open discussion15:20
cardoehttps://review.opendev.org/c/openstack/keystone/+/979789 is one I want to revisit15:20
cardoeYou can denial of service keystone by just running skyline and having federated users.15:20
gtemayeah, I am just unsure we want to grant system scope to federated users15:21
cardoeYou already can and it's in the test.15:22
cardoeAnd I do.15:22
gtemaand you crash15:22
cardoesystem-scope should be for non-project scoped objects like neutron network segment ranges and nova public flavors.15:22
cardoeI crash with skyline.15:22
gtemawe do not have the payload what the change is doing15:23
cardoeironic uses system-scope for non-project scoped objects already.15:23
cardoeI don't use any local users.15:23
gtemaand I think lack of system scope payload for federated users was intentional15:23
cardoeI mean the function has to return a class today. There's a fallout case which returns a None and crashes keystone.15:24
cardoeIt should throw an exception of invalid then.15:24
gtemaI have no problem with throwing exception or whatever else. To repeat I am not sure we want to support properly system scope for federated users in the token payload15:25
cardoehttps://opendev.org/openstack/keystone/src/commit/f4c4b1924356551c3130593bef96a97cb5e83b63/keystone/token/providers/fernet/core.py#L50 is the function I'm referring to.15:25
gtemabut the change is explicitly allowing this15:26
gtemaI remember what you are referring to15:26
cardoeI don't know why we'd exclude system scope for federated users.15:28
cardoeI don't put my users into keystone and they're federated in.15:28
gtemabecause it's privileged15:29
cardoeMy ironic admins get a system-scope token15:29
cardoeNo more privileged than project scoped admin for many projects.15:29
gtemaI dislike the whole system-scope idea as a whole15:29
gtemaright, and you should not be having project admin, if only things were done correctly15:30
gtemasad that there are no other people with opinions15:33
gtemacardoe, if I recall correctly we were discussing that in the referred method we could (at least as intended) to fallback to the unscoped token. Do you remember details?15:35
gtemaI am just really wondering that you say you already use system scope tokens for federated users, what can not really work properly since we do not have this token payload15:37
cardoeI've got a patched keystone.15:42
gtemahow cool that we then wonder that things are going differently15:43
cardoeThis is just how I'm experimenting. Not what I'm running in prod.15:43
cardoeYou've commented on my email on the ML wrt this.15:44
gtemaanyway, we need more cores actively present to decide whether we want to allow this payload or not. If not than we would need to go for other solution15:44
cardoegimme 5 minutes and I'll be back15:45
gtemaok, we go on for now with next topics15:45
gtema#topic bug review15:45
gtema#link https://bugs.launchpad.net/keystone/?orderby=-id&start=015:46
d34dh0r53I'm still not sure which is part of the problem, I see both sides which is why I'm very much in favor of the rip and replace15:46
gtemarip and replace what exactly? the federation or the system scope?15:47
gtemaor keystone as whole?15:47
gtema:)15:47
gtemaback to bugs15:49
gtemawe have 2 bugs in keystone15:49
gtemahttps://bugs.launchpad.net/keystone/+bug/2165018#link15:49
gtema#link https://bugs.launchpad.net/keystone/+bug/216501815:49
gtemaand15:49
gtema#link https://bugs.launchpad.net/keystone/+bug/216514315:49
gtemaI will have a look at the first one to fix the jsonschema15:50
gtemafor the other one I need to check, the job is indeed failing since ages, but it's a non-voting one15:54
gtemato be short: other deliverables are not having new public bugs15:55
gtema#topic conclusion15:55
chung00lee[m]Hello. I've reported a bug at https://bugs.launchpad.net/keystone/+bug/2163597 and submitted a patch at https://review.opendev.org/c/openstack/keystone/+/1001033. Could you please take a look when you have a chance?15:56
gtemaack15:57
gtemathis is a mine field territory for sure, but let's see15:57
gtemaanything else to say, folks?15:58
gtemaokay, time is up15:59
gtemathanks for participation16:00
gtemaand see you around16:00
gtema#endmeeting16:00
opendevmeetMeeting ended Wed Sep  2 16:00:16 2026 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)16:00
opendevmeetMinutes:        https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-09-02-15.03.html16:00
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-09-02-15.03.txt16:00
opendevmeetLog:            https://meetings.opendev.org/meetings/keystone/2026/keystone.2026-09-02-15.03.log.html16:00
cardoegtema: sorry I had a 1:1 at the 30 minute mark... I thought it was going to go quickly.16:05
gtemaI am at my EOB, but we can still chat a bit16:05
cardoegtema: so for me conceptually we have resources in different OpenStack projects which are "system" wide. 16:06
cardoeFor example neutron agents, which can be deleted. They don't belong to a project and never will.16:06
cardoeAnd they can be edited.16:06
cardoeSo that's a cloud admin type persona16:06
cardoeToday neutron lets any project-scoped role:admin operate on those.16:06
cardoeBut that just feels wrong from a design.16:07
gtemacorrect16:07
cardoeSo I'm just trying to have the discussion on the ML around the right shape of the problem with the various projects.16:07
gtemasame for nova with it's is_admin16:07
cardoeyep16:07
cardoeSo just experimentally, I've patched some things to try and have real hands on things for folks when discussing with them.16:08
gtemaand since more and more people recognize those problems to use a chance and rethink the whole madness from scratch instead on implementing another workaround how OpenStack used to do for a while16:08
gtemaI strongly believe we should not fix system scope, we should evaluate whether we are correct with our authz model16:09
cardoeUltimately for me in prod however, all my users will be federated. 16:09
gtemaincluding root?16:09
cardoeyeah and that'd be good with me too. If you've got some replacement suggestions let's get it on the ML16:10
gtemakeystone has the absolute admin as a local user, and I am not sure you can do much about this16:10
cardoeyeah so that's hardcoded in there in the default domain and that'll stay16:10
gtemaI don't want to open another shit storm over ML, this is something what should be discussed among interested and dedicated people in PTG16:11
cardoeSure that works for me.16:11
gtemayou know how people react on my "let's rethink" statements over ML16:11
gtemamy idea is how I described in keystone-rs update: switch control plane to mTLS so that services do not need dedicated users to talk to each other anymore. Next step is switch to OpenPolicyAgent for policies (as we were presenting last summit). With that OPA can also talk to keystone asking whether user is allowed to this this or that16:13
gtemathen we switch to JWT away from fernet16:14
gtemathen we should go back introducing project_id to the URLs of the project owned resources16:14
gtemathis way we remove authorization binding within tokens and authz can be relieved from scope/role/persona bindings16:15
gtemathat's a short story16:16
gtemamost can be done out of keystone deliverables16:16
gtemabut projects would need to catch up16:16
cardoeYeah16:17
gtemathat's also one of those reasons I am not actively reviewing new features to python keystone. For me we need a strategical switch better yesterday than today16:18
gtemawe need big changes, not continuing the workaround path16:21
cardoeI understand. Unfortunately it's the system we've got today.16:21
cardoeI'm happy to review stuff that exists today.16:21
gtemathat doesn't help. We have bunch of workarounds left by people who were promising support while fighting for adding new features. Now it is a badly designed code no current core purely understand or "supports". We do not want to accept things we do not commit to16:23
gtemalast security vulnerabilities are demoing this problem strongly - we can't close holes just because it is not possible with all those workarounds from every side in every method16:24
opendevreviewMerged openstack/keystoneauth master: trivial: Update docs for Adapter.register_conf_options  https://review.opendev.org/c/openstack/keystoneauth/+/100323021:00
opendevreviewMerged openstack/keystonemiddleware master: Drop remaining logic for identity v2 API  https://review.opendev.org/c/openstack/keystonemiddleware/+/97937621:58
opendevreviewMerged openstack/keystoneauth master: loading: Accept OptGroup  https://review.opendev.org/c/openstack/keystoneauth/+/100323123:52

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