Support a user-session mode for authenticating
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Light Display Manager |
Fix Released
|
Medium
|
Robert Ancell | ||
1.18 |
Fix Released
|
Medium
|
Robert Ancell | ||
lightdm (Ubuntu) |
Fix Released
|
High
|
Robert Ancell | ||
Xenial |
Fix Released
|
High
|
Robert Ancell | ||
Yakkety |
Fix Released
|
High
|
Robert Ancell |
Bug Description
[Impact]
Ubuntu phone development requires in session greeter functionality to perform suitably. This functionality does not exist in current versions of LightDM.
[Test Case]
1. Install a session that supports in session greeter
2. Log into that session
3. Activate greeter functionality
Expected result:
It works
Observed result:
The functionality is not implemented.
[Regression Potential]
Some risk of changing existing behaviour, reduced by regression tests still passing. Functionality is only enabled for sessions that opt-in to this behaviour so additional security risks is limited to new sessions.
Original description:
We talked about this in person in Prague.
Ideally a greeter could run as in the user's session and act as a lockscreen for the user as well as a way to authenticate/log-in as other users.
This would let us avoid running a whole other session for the greeter on the phone, which is memory intensive.
It might be easiest for unity8 if that API was still just liblightdm, just running in a special mode. But I'm not picky on how it's done.
There may be security questions around this. I asked Jamie and Tyler about it, I'll post any concerns from them.
Changed in lightdm (Ubuntu): | |
assignee: | nobody → Robert Ancell (robert-ancell) |
Changed in lightdm (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → High |
status: | Triaged → In Progress |
Changed in lightdm: | |
status: | New → Fix Committed |
milestone: | none → 1.19.2 |
importance: | Undecided → Medium |
assignee: | nobody → Robert Ancell (robert-ancell) |
Changed in lightdm (Ubuntu Xenial): | |
status: | New → Fix Committed |
importance: | Undecided → Medium |
assignee: | nobody → Robert Ancell (robert-ancell) |
importance: | Medium → Critical |
importance: | Critical → High |
description: | updated |
Changed in lightdm: | |
status: | Fix Committed → Fix Released |
tags: |
added: verification-done removed: verification-needed |
This is now in lp:lightdm. To make an in-session greeter you need to set X-LightDM- Allow-Greeter= true in the session .desktop file. Then you can run a greeter using liblightdm from inside that session.
Only one greeter is allowed at once. Any process from the logged in user can connect (so there is a denial of service risk if the correct process doesn't get the socket first or loses it).
The socket is called /var/run/ lightdm/ <user>/ greeter- socket. For security purposes it's probably worth locking this down with AppArmor rules.