19:07:42 #startmeeting keystone-office-hours 19:07:43 Meeting started Tue Nov 21 19:07:42 2017 UTC and is due to finish in 60 minutes. The chair is lbragstad. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:07:45 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 19:07:47 The meeting name has been set to 'keystone_office_hours' 19:08:49 1) I can't create the resource at all. and now i am stuck because someone squatted/created/owns it 19:08:49 2) I error, but can still use the resource, but someone else can as well 19:08:49 (one of two issues*) 19:08:49 randomized creation explicitly dodged these issues. 19:08:49 let me be clear, i am not going to block or say we are unable to add this feature 19:08:49 we have to be *Very* careful if we are adding it 19:08:49 and we have to consider interop between deployments/use 19:09:17 fair enough 19:09:20 if some clouds allow you to create ids and some don't - it adds to the already awful UX we have where options change the API behavior 19:09:36 the concern I have with autoprovisioning is that the resources are not cleaned up 19:09:48 you lose track from the user because it's not yours 19:09:49 josecastroleon: no resources are really auto-cleaned up 19:10:00 and on a public cloud you have your credit card 19:10:01 you lose track the moment is is created in keystone. 19:10:04 so you don't care 19:10:10 it is the CRM's job to track that stuff 19:10:23 yes 19:10:24 (customer relations management software, aka salesforce or sugar, etc) 19:10:47 another interesting side-effect of project IDs over the API is if a token is revoked in one region 19:10:50 FTR: i disagreed with adding autoprovisioning 19:10:52 it won't be revoked in another 19:11:23 i wish i had been at the forum, so i could have worked w/ orange folks to understand the specific replication concerns 19:11:35 it is likely that it is PII-specific not "zero replication" 19:11:46 since the data base isn't replicated - if the token is revoked in region A it won't be revoked in region B 19:11:52 which could lead towards isolation of data and certifying what is replicatable 19:12:13 true - i asked for some more information on the actually restriction 19:12:20 i'll be sure to send it out if i get it 19:12:28 actual* 19:12:44 i am fairly certain it is not "you cannot replicate" but most orgs default to that because it dodges issues with "well but we got item Y by accident" 19:13:36 the other requirement was that authZ data can't come from the source of authN 19:13:59 that was orange's requirement? 19:14:09 eh, thats easy enough with some SSO things. 19:14:13 not sure - it came up in discussion somewhere and i wrote it down 19:14:29 but you could also do that today by not having a mapping 19:14:30 i wonder if that means the authoritative authn or any authn 19:14:39 and just manually managing role assignment on the shadow user 19:14:40 because what if keystone is backed by ldap 19:14:49 ldap is providing authn but by proxy to ldap 19:14:52 is that sufficient 19:15:03 and what you said about mapping 19:15:30 in short, autogeneration of IDs is the best option for most of keystone's use-cases 19:15:35 right authZ from an openstack perspective would be completely isolated from authN 19:16:13 Gentlemen, I have to retire now. 19:16:15 i *might* be willing to add id-specification (for projects and users) as resource-options to a domain 19:16:22 so you create the domain with that option set 19:16:29 and then you're allowed to specify ids. 19:16:32 KwozyMan: no worries - thanks for coming 19:16:34 but it has to be discoverable 19:16:37 We'll try to rewrite the spec to consider your concerns 19:16:44 KwozyMan: ^ 19:16:58 kmalloc: yeah - that'd be another way to go about it 19:17:15 lbragstad: that makes me a bit happier since you can look at the domain object to know if it's allowed 19:17:24 and then you can provide or not 19:17:33 which should be specific to an idp 19:17:38 it doesn't really break APIs and it makes it so it is every explicitly opted into 19:17:58 which gets around the stealing of namespace before someone hooks things up from the Idp, right? 19:17:58 now ids are still 100% globally unique 19:18:11 so i would probably force a prefix that we can control 19:18:22 do a UUID5(namespace-prefix, uuid4) 19:18:42 so they can generate it but it must conform to a way we can avoid conflicts and we can reject uuids in other places that don't conform 19:19:02 or prefix + uuid4[4:] 19:19:14 the project id will be then the uuid4 or the whole blob? 19:19:31 josecastroleon: the id would be the whole blob. it makes this viable going forward 19:19:34 it would be munged together 19:19:35 not retroactively 19:19:52 (token payloads would be a bit longer) 19:19:57 lbragstad: nah 19:20:13 lbragstad: we'd still 32 byte ids 19:20:27 unless you deconstruct the token and serialize them separately? 19:20:29 just say first 4 bytes would be restricted or frist 10 19:20:39 lbragstad: ids are imuutable 19:20:43 so 2 cases: 19:20:56 auto creation of id, lets say 10-bytes unique (lots ot space) 19:21:12 domain-specific-10-by-prefix + uuid4()[10:] 19:21:38 so 1234567890 + uuid4() and drop the first 10 bytes of the uuid before munging 19:21:49 then they need to have the same domain id in both enviroments right? 19:21:56 right 19:22:23 we would need to address that, but domain-flagged projects, I'm more willing to be flexible on 19:22:27 but when you are creating it, would you be able to specify it? 19:22:36 i meant the domain 19:22:52 ugh but we run into the same issues since domains and projects are the same type 19:23:01 yep 19:23:05 josecastroleon: well you can specify domain-names for everything 19:23:15 and you could specify the domain-prefix id 19:23:26 this is awful. 19:23:47 i don't think we can reasonably supply a consistent API to allow specification of IDs 19:24:42 can we do some kind of configuration option to allow them to go forward? with a very big warning message with all the things that will fail 19:25:00 josecastroleon: i can't +2 that, but i can "not block it" 19:25:14 because i never feel good with the "set an option that changes the API behavior" 19:25:54 it's more on orange side 19:26:11 right. and it still comes down to a general purposew config to handle that use case 19:26:12 we can workaround it 19:26:51 right. 19:27:20 i think i need to know more about the orange restrictions 19:27:28 what are the real limitations 19:27:41 but that said... i understand what they're trying to do. 19:28:44 yeah - if it is a law thing, we should hopefully be able to dig into some public documentation on it somewhere 19:29:00 maybe that helps clarify requirements 19:31:37 yep 19:31:48 josecastroleon: either way - let's see if we can get this stuff captured somewhere 19:32:00 especially since this conversation comes up frequently 19:32:06 sure 19:32:27 it'll hopefully be easier to iterate towards a solution when we have things documented 19:32:39 or come up with alternatives that work 19:35:01 thanks, i need to retire, it's getting late here :D 19:42:47 josecastroleon: sounds good - thanks for sticking around 19:52:14 for those here for office hours - i'll be working on bug triage 19:52:36 i haven't done much of that in the last couple weeks with all the things going on, so i'll be catching up on that 19:52:58 i have stumbled across several good candidates if anyone is looking for something though 21:07:55 lamt: https://bugs.launchpad.net/oslo.cache/+bug/1731921 21:07:55 Launchpad bug 1731921 in keystonemiddleware "memcache_socket_timeout is too high" [Undecided,In progress] - Assigned to Vincent Untz (vuntz) 21:08:09 ^ that might be something that gets fixed once we port ksm to use oslo.cache 21:52:57 lbragstad : am planning to start oslo.cache work after Thanksgiving 21:52:58 i parsed most of the recent bug activity and updated various reports with office-hours tags https://bugs.launchpad.net/keystone/+bugs?field.tag=office-hours 21:53:05 lamt: awesome 21:53:29 most of those bugs seem like things that can be accomplished in a few hours 21:53:38 if anyone is looking for bugs to work on 22:53:23 Lance Bragstad proposed openstack/oslo.policy master: Add scope_types to RuleDefault objects https://review.openstack.org/510222 23:02:52 #endmeeting