13:03:26 #startmeeting 13:03:26 Meeting started Wed Oct 22 13:03:26 2014 UTC. The chair is alinefm. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:03:26 Useful Commands: #action #agreed #help #info #idea #link #topic. 13:03:27 #meetingname scrum 13:03:27 The meeting name has been set to 'scrum' 13:03:48 #info Agenda 1) Status 2) Open discussion 13:03:48 anything else? 13:04:25 Good for me 13:04:47 #topic Status 13:04:47 #info Please provide your status using the #info command: #info 13:04:52 #info YuXin Guest Clone UI Patch sent 13:05:12 #info vianac sent initial version of the patchset to clone a VM; reviewed patches on the mailing list 13:05:26 #info YuXin Investigate Brower based web console to access Serial Console 13:05:28 #info wenwang sent patch Guest disk hot plug UI 13:05:52 #info alinefm got the spice patches merged (it uses the spice-html5 package when possible) 13:06:09 #info royce sent v1 patches about authentication for LDAP, verified common scenarios, now still discussing authorization part 13:06:14 #info wenwang working on redefining the template dialogue 13:06:14 #info alinefm sent patches to create a new module xmlutils to hold all the XML manipulation (already merged) 13:06:37 #info alinefm is now working on VMTemplate refactor to put all XML manipulation under /xmlutils 13:06:52 #info royce is writing UI change graphics for vm, plan to send tomorrow, also some patch reviews 13:06:55 #info wenwang working with Zheng Sheng improve PCI Passthrough 13:07:43 royce, do you mean, the patches sent before by Simon? 13:08:12 YuXin, wenwang, royce, have you investigated the problem with upload feature? any update on that? 13:08:46 alinefm, did simon working on patch of that? I was assigned of the UI 13:09:36 alinefm, not yet for the upload, but I can take a look afterwards 13:09:40 royce, not sure it is the same 13:09:43 royce, [v3 0/1] Ticket UI to set vnc ticket password 13:09:55 alinefm: not yet, still working on redefining the template 13:10:09 then I commented we will add the graphics switch too and we could add a new tab to handle all tab: graphics type, password and expiration time 13:10:33 aline, it is just password, right? 13:10:44 royce, wenwang, (about upload) ok - take you time - I only think we need to have it working for 1.4 13:10:46 alinefm: I will do that after that patch finished. Also, I might need some help of the back-end 13:11:03 alinefm, +1, will get it work 13:11:15 alinefm: Ok, I think we can finish it 13:11:23 wenwang, feel free to ping me or ask for help on ML 13:12:11 royce, my comments: http://fpaste.org/144148/41398350/ 13:12:12 alinefm: Sure, thanks for your support 13:12:16 on Simon patches 13:12:17 :-D 13:13:15 any more status or can we move on to open discussion? 13:13:28 alinefm, OK, I will ask him if he want to continue or transfer to me 13:13:53 royce, OK - he hasn't replied to my comments so... =) 13:14:08 #topic Open Discussion 13:14:14 what are the topics for today? 13:14:21 Authorization,still 13:14:45 royce, please, go ahead 13:15:15 when assign vm to user under PAM 13:16:07 seems now we just tag the vm, and the tag not constrains user who can manipulate 13:17:03 it constrains so 13:17:17 when the logged user has sudo permissions he has access to all VMs 13:17:24 independent who is assigned to the VM 13:17:52 BUT if the logged user does not have sudo permissions he can only see and manipulate the VMs assigned to him or his group 13:18:49 makes sense? 13:19:13 Is it already in now? 13:19:23 yeap 13:19:38 you can create a user in your system without sudo permissions and test 13:19:49 I've just tested here to make sure it is working and it is =) 13:20:11 As I git grep "access" just in "lookup vm" and "update vm", haven't seen any where 13:20:40 It is control at backend, alinefm? 13:23:25 royce, it is on control/base.py 13:23:31 on filter_data() or something like it 13:23:50 royce, we match the logged user with the users and groups on resource 13:24:17 OK, that is great 13:24:27 than when it comes to LDAP 13:24:42 I have concern about if users change from PAM to LDAP 13:24:49 or different LDAP server 13:25:03 the access label would be different 13:25:51 just destory all previous labels, or keep two types of labels? 13:25:55 while using LDAP, we will set the users are the emails: alinefm@...., royce@... 13:26:17 are you saying when switching from PAM to LDAP or vice versa? 13:26:19 yes, I mean, if previously my machine use PAM 13:26:22 yes 13:26:40 or switch from one LDAP to another 13:27:02 hmm... we could destroy the previous labels, but how we identify the authentication method was changed? 13:27:38 compare the label and current config 13:27:46 that need to extend the label 13:28:57 do you mean have: users: {pam: [....], ldap: [...]} ? 13:29:35 and get/update the values according to auth type? 13:29:51 so during the switch the user does not loose data 13:29:51 ? 13:29:57 I mean in access metadata in vm add: authorization method, and base info 13:30:00 is that what you have in mind? 13:30:17 for two tyes it is as you said 13:30:31 but still change from one LDAP to another lose data 13:31:40 royce, yes - but in that case we can't ensure the data is correct, so we will ignore 13:31:44 royce, http://fpaste.org/144157/41398465/ 13:31:54 that is how the metadata is set today ^ 13:32:20 1. keep or destroy previous metadata, 2. how to identify change authorization method 13:32:55 http://fpaste.org/144158/14139847/ 13:33:08 do you think the "method" attrib is good for it? 13:33:26 1. keep 13:33:51 2. we can not do it 13:35:02 for ldap, if server changes or search base changes, still the previous data needs to be destoried 13:35:09 but chances are smaller 13:35:41 chances of switch between two ldap is smaller 13:36:06 royce, the big problem is how identify it 13:36:30 wait, we can verify the users set with the current authentication method 13:36:50 example: my-vm has "alinefm, vianac" set as users 13:37:06 and when switching to ldap those values will not be valid 13:37:21 alinefm, we have filter 13:37:47 we can let the UI carry this message too 13:37:53 so on vm lookup we can check: for each users in vm-users: if users not in auth-method.users: remove user from vm settings 13:38:23 auth-method.users() will be a function to verify a specific user exists or not 13:38:45 that way we ensure only valid data will be on VM according to auth method 13:38:47 after session established 13:38:58 including when changing LDAP server 13:39:02 where can we get password? 13:39:22 password for what? 13:40:10 the password is only required for login 13:40:14 if user like you, alinefm you used in your PC, also use in bluepage ldap alinefm@br.ibm.com 13:41:02 "alinefm" does not exist in LDAP - but "alinefm@..." exists 13:41:16 OK, we do this way 13:41:25 if you query for "alinefm" on LDAP it will fail 13:41:27 very creative 13:41:59 it is like openstack keystone, apis and users both query ldap for authentication 13:42:29 so on vm.lookup() you can verify the valid users according to auth method and only return them 13:42:55 agree? 13:43:11 agree! 13:44:19 royce, and we will have a new UI for "Permission" tab when the auth method is LDAP? 13:44:34 and only allow setting user on that case 13:44:35 then no more questions for me, besides, alinefm, can you take another look at my patch and comments? 13:44:41 as groups does not make sense in that case? 13:44:44 ok, alinefm 13:44:53 YuXin, wenwang, are you OK with that ^? 13:45:08 That one is assigned to me:) 13:45:15 royce, the UI? 13:45:19 yeah 13:45:20 great! =) 13:45:30 royce, what do you have in mind for it? 13:45:37 when no group, just an empty list is the group column 13:45:48 the user enter a new email? or a string for search? 13:46:22 search or filter? 13:46:29 Need to check ldap api, but I suppose there will be such support 13:46:39 in LDAP case, it is search 13:46:44 ok 13:47:00 can ldap and linux local user coexist at the same time? 13:47:08 for example I enter: "alinefm" and the API list all the "alinefm" emails for the user 13:47:16 YuXin, for kImchi, no 13:47:43 yeah, I see in blue page even you enter Aline there will be list of candidate 13:47:55 royce, yeap - maybe a big list =P 13:48:04 So I suppose there will be such support in LDAP 13:48:10 then before switch to ldap, how can make a certain person to be super admin? 13:48:24 I'll look at LDAP apis 13:48:25 royce, you will need to change the host Users() and Groups() to do that 13:48:31 I mean ldap user 13:48:46 YuXin, for LDAP, a list of IDs will be on Kimchi config file 13:48:58 ldap_admin_users = "alinefm@... yuxin@... royce@..." 13:49:11 all users not listed there have "user" role 13:49:24 ok 13:49:46 royce, I've already replied to your comments on ML 13:49:54 do you have more questions related to them? 13:50:13 royce, you will need to change the host Users() and Groups() to do that---For search? 13:50:33 alinefm, let me see 13:50:34 (are you talking alone? hehe) 13:50:40 royce, I think so 13:51:03 today we call GET /host/users and GET /host/groups to get all the system users and groups 13:51:10 but it is only valid for pam authentication 13:51:20 for ldap UI, we need to have a new API to do the search 13:51:38 I mean, not modify /host/users but create a new API for LDAP matters 13:52:04 since linux os users and ldap users are exclusive, so for UI, when ldap, just remove the group columns in both available and select box 13:52:21 OK, alinefm 13:52:38 YuXin, yes - but for groups there is no way to list all LDAP users as we do for pam 13:52:38 when user input some search text, for available users, dynamically add the users to the available box 13:53:07 yes, we use search 13:53:14 oh yeap 13:53:16 got it 13:53:30 alinefm, then we do not need to expose user or group query for users any more... 13:53:39 initially, the box is empty, only when input text, then trigger search, when got response, fill in that box 13:53:51 I mean /host/users will not be available anymore 13:53:54 YuXin, yeap - that is what I had in mind too 13:54:04 royce, it is! it is used for pam 13:54:12 OK 13:54:27 so under ldap just disable these api 13:55:19 just don't use it 13:55:48 for example, on model/vms.py in _vm_update_access_metadata() we verify the values against those APIs 13:56:00 but when using LDAP you will verify if against a new API 13:56:15 you can do the same refactor you did for auth.py 13:56:21 OK, seems I occupied all the time 13:56:35 don't worried about it! =D 13:56:43 any other topic for today? 13:56:58 royce, important is to use this time to solve all doubts 13:57:27 But still /host/users/ are expoesed as REST 13:57:31 yes 13:58:10 so we need not to reload some function, and when no get_user function under LDAPUser we just deny it 13:59:24 yes 14:00:22 no doubt now 14:00:30 you can change the API /host/users to /users and make the get_list() return according to auth method 14:00:49 example: on PAM: GET /users will identify it is PAM and return the system users 14:01:22 on LDAP: GET /users will identify it is LDAP and expect an query parameter (/users?username=alinefm) 14:01:26 it is just an idea 14:01:43 you can verify what is the best solution to handle both cases 14:01:52 OK 14:01:59 that is a good idea 14:02:28 anything else, team? 14:04:41 well... apparently not 14:04:55 so thanks everyone for joining and for the great discussions 14:05:02 #endmeeting