18:00:01 #startmeeting keystone 18:00:02 Meeting started Tue Dec 12 18:00:01 2017 UTC and is due to finish in 60 minutes. The chair is lbragstad. Information about MeetBot at http://wiki.debian.org/MeetBot. 18:00:03 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 18:00:05 The meeting name has been set to 'keystone' 18:00:08 #link https://etherpad.openstack.org/p/keystone-weekly-meeting 18:00:11 agenda ^ 18:00:27 ping ayoung, breton, cmurphy, dstanek, edmondsw, gagehugo, henrynash, hrybacki, knikolla, lamt, lbragstad, lwanderley, kmalloc, rderose, rodrigods, samueldmq, spilla, aselius, dpar 18:00:43 o/ 18:00:57 o/ 18:00:59 o/ 18:01:09 o/ 18:01:56 zzzz 18:01:59 o/ 18:02:56 #topic PTG security SIG meeting 18:02:58 gagehugo: o/ 18:03:12 so 18:03:19 o/ 18:03:29 o/ 18:03:55 the security team/SIG will likely be meeting at the PTG, and was wanting to know if keystone had anything they wanted to bring to attention 18:04:15 anything that is cross-project or cross-collaberation 18:05:00 if there is anything either let me or lhinds know 18:05:24 that's all I got 18:05:39 nothing is coming to mind at the moment, the last i talked to the security folks i wanted to get an opinion on the policy roadmap we had for security 18:06:02 I can bring that to the meeting thurday 18:06:34 cool - i just wanted another set of eyes on it from a security perspective, nothing that's a hard requirement though 18:06:46 gagehugo: anything else? 18:06:56 nope 18:07:04 #topic User defined project IDs 18:07:25 ruan_he wanted to drive this topic during the meeting 18:07:32 but I don't see him online 18:07:47 either way 18:08:02 several folks from Orange posted their usecases in https://review.openstack.org/#/c/323499/ 18:08:10 to keep the context in a single place 18:08:33 the previous reviews on that spec were asking for use cases 18:08:48 I think we had one of the same use cases 18:08:51 but they also included a couple requirements 18:08:53 distributed keystones 18:08:57 yeah... 18:09:03 and it used to work in kilo? 18:09:09 that was news to me 18:09:17 or before 18:09:30 i parsed the code base looking for the code that allowed that and i came up with nothing 18:09:38 yeah idk 18:09:45 i looked through the project API dating back to diablo 18:09:46 wait, what? 18:09:49 it worked in kilo? 18:09:57 i couldn't find proof of that 18:09:58 it worked in an earlier release 18:10:07 unlikely 18:10:15 but i could have been looking in the wrong place? 18:10:23 i'll take a gander 18:10:34 but i seriously doubt it 18:10:40 short of someone changing the code 18:10:59 It may have broke in kilo 18:11:00 afaik, we never allowed project IDs to be specified over the API 18:11:06 since that is when it came up for us 18:11:12 oh - really? 18:11:15 so perhaps before then 18:11:22 is when it worked? 18:11:49 in v2 we allowed it 18:12:06 https://github.com/openstack/keystone/blob/juno-eol/keystone/assignment/controllers.py#L114 18:12:12 known reason we also discontinued v2 18:12:17 the review says the functionality worked in Juno https://review.openstack.org/#/c/323499/4/specs/keystone/backlog/admin-to-create-project-with-id.rst@77 18:12:21 oh there we go 18:12:26 kmalloc nice 18:12:26 security 18:12:32 oh 18:12:40 v3 NEVER supported it afaict 18:12:44 ++ 18:12:51 interesting 18:12:53 that's consistent with everywhere i dug 18:12:56 yes, when we upgraded from Juno to Kilo, it stopped working, and it was one thing that was raised 18:13:29 yep, v2 only 18:13:36 v3 never supported this. 18:13:40 looking at kilo now 18:14:32 yep, in kilo v2 still supported it 18:14:50 ok - good to know 18:14:57 tl;dr, moving to v3 disabled that support, v3 never supported it (confirmed back to grizzly) 18:15:07 cool 18:15:11 ah ok 18:15:22 that's consistent with what i found with v3 support, too 18:15:33 interesting 18:16:03 and this was planned - it had a lot of implications for folks squatting on project ids, and that they weren't conforming to UUIDs (which is a requirement we started asserting for compatibility everywhere) 18:16:56 if we support this we need to ensure / assert the ids are UUID conforming. 18:17:13 i'm curious what other folks think of the reproposed specification 18:17:24 since it includes usecases 18:17:29 and requirements 18:17:38 also - if there are any alternatives that come out of it 18:17:44 so, the use-case for restoration of a deleted id, that can be soft deletes (cringe) 18:18:17 or disable/enable 18:18:27 i also want to be clear, I don't want creation of specific ids to be a "general" like domain-admin concept. 18:19:57 the other requirement i found interesting was the database replication restriction 18:20:04 the hard part here is *even* if the ids can be specified, across deployments -- it is not possible to guarantee the ID isn't used in another deployment 18:20:17 and IDs must be unique within the keystone 18:20:51 https://review.openstack.org/#/c/323499/4/specs/keystone/backlog/admin-to-create-project-with-id.rst@22 18:21:44 the only real solution i can think of is something like allow for a deployment to register a prefix or do a federated source of ids for resource subsystem 18:22:17 register a prefix? 18:22:35 aka, France cloud (for example) starts with AAEECC 18:22:48 so all projects have that, and no other cloud participating does. 18:22:54 it's soft enforcement 18:23:34 that's some half-done replication 18:23:37 i think we're going to simply run into issues where IDs are going to conflict and it will put us into a worse state than every deployment is random 18:23:45 breton: no, look at the spec, no replication 18:23:46 without all constraints a real replication has 18:23:56 it can't happen. 18:24:08 so it's admin-created and it's rough 18:24:19 according to law the replication at the db layer can't happen 18:24:44 I somehow doubt that is in-fact the law, i think it's overly cautious lawyering. but i can't change that. 18:24:57 if there was clear isolation of exactly what was replicated [separate DBs] 18:25:05 it probably would fly just fine 18:25:14 but cautious lawyers would probably still nix it 18:25:40 hmm 18:25:52 i asked for a link there if it is public so we can dig into it a bit more 18:26:43 now...... isolating resource is a big job 18:26:46 because FK issues 18:27:01 we basically nixed that last cycle for "this is hell to make happen in a migration" 18:27:40 yeah.. 18:27:42 i could probably spin up a patch that would isolate each subsystem behind a different DB connection so folks can run each subsystem in a different db. 18:28:05 and our testing would simply be different dbs so no FKs would ever work. 18:28:11 but that is a lot of work. 18:28:14 yeah... 18:28:18 that feels heavy handed 18:28:22 the whole migration repos would need to be split up 18:28:46 not the worst thing, just a "well....." 18:28:55 but - i'm curious to hear what people think of the reproposed spec 18:29:03 i dislike it greatly 18:29:07 we've had it come up several times 18:29:13 from different people 18:29:37 i'd like to find a solution or alternative that addresses the problem 18:29:46 but from a maintainability standpoint -- it doesn't solve problems, it mitigates some edge cases but causes a lot of headaches and i think we're going to see a lot of other requests ceom from it because it isn't really maintainable 18:29:48 as an operator 18:30:14 the best solution is allowing for a centralized source of truth that keystones can reference for the IDs 18:30:26 but E_WHAT_IS_THAT 18:30:52 one of the other requirements is that authZ information can't come from the same place authN does 18:32:54 regardless, let me know if you have questions on the spec, it'd be good to get the conversation started early 18:33:08 #topic 18:33:14 * lbragstad sigh 18:33:17 #topic Unified limits API specification exception 18:33:27 #link #link http://lists.openstack.org/pipermail/openstack-dev/2017-December/125331.html 18:33:32 #link https://review.openstack.org/#/c/455709/ 18:33:55 for those who missed it, we had a super productive conversation last friday around unified limits and the initial model to target for it 18:34:10 wxy: repropose the specification 18:34:39 I submitted a specification freeze exception for it 18:34:51 and based on what people say we can move forward with it this week 18:35:23 if you missed the conversation in irc be sure to checkout 18:35:25 #link http://eavesdrop.openstack.org/irclogs/%23openstack-dev/%23openstack-dev.2017-12-08.log.html#t2017-12-08T15:00:28 18:35:35 * lbragstad found it super helpful 18:36:19 #topic open discussion 18:36:54 proposal: remove past keystohne meeting data from the etherpad when we roll over cycles 18:37:01 just to make the etherpad load less slowly. 18:37:08 ++ 18:37:30 yeah - we're up to 1582 lines 18:38:06 when we have our last meeting to queens i'll back up the content and remove it 18:38:10 09-27-16 meeting was jam packed 18:39:40 yeah - stevemar had long meetings :) 18:41:00 does anyone else have anything before we start office hours in 20 minutes? 18:42:03 sounds good - thanks for coming 18:42:06 #endmeeting