[SRU] Allow plugins to decide which username to set on new accounts
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical System Image |
Fix Released
|
High
|
David Barth | ||
Online Accounts: Account plugins |
Fix Released
|
Critical
|
Alberto Mardegan | ||
Online Accounts: GNOME Control Center |
Fix Released
|
High
|
Alberto Mardegan | ||
webapps-sprint |
Fix Committed
|
High
|
Alberto Mardegan | ||
account-plugins (Ubuntu) |
Fix Released
|
Critical
|
Alberto Mardegan | ||
Xenial |
Fix Committed
|
Critical
|
Unassigned | ||
Yakkety |
Fix Released
|
Critical
|
Alberto Mardegan | ||
gnome-control-center-signon (Ubuntu) |
Fix Released
|
Critical
|
Alberto Mardegan | ||
Xenial |
Fix Committed
|
Critical
|
Unassigned | ||
Yakkety |
Fix Released
|
Critical
|
Alberto Mardegan |
Bug Description
This bug is related to bug 1547647, even though it makes sense in any case.
Currently, the ApOAuthPlugin class in libaccount-plugin gets the username from the SignonIdentity, which in turn gets it from signon-ui, which in the current WebKit1 implementation gets it from the DOM of the login webpage. This is a hack, it's fragile, not trivial to port to the Oxide web engine, and possibly against some providers' guidelines.
We should retrieve the username using some REST API provided by the service, and in order to do so we need to extend libaccounts-plugin with some hooks which subclasses can use to get the username.
Once we fix this we can also get rid of the files /etc/signon-
SRU information
===============
[Impact] The same file /etc/signon-
[Test Case] Install both account-
[Regression Potential] Users running KDE will be completely unaffected by this. Users running Unity might see a change when creating accounts in System Settings->Online Accounts: with this bugfix, the account's display name is obtained by making a REST API call to the remote service, rather than by scrapping the DOM of the server webpages (which is a hack, and prone to errors if the providers' webpage changes). The new way of retrieving the username is the proper one, and it's been tested to work reliably. In any case, the worst thing that might happen is that accounts get created with an empty display name, which is mostly an aesthetic problem (the display name is used only for UI purposes).
Related branches
- Online Accounts: Pending requested
-
Diff: 34 lines (+0/-11)3 files modifiedMakefile.am (+0/-1)
data/webkit-options/accounts.google.com.conf (+0/-9)
debian/account-plugin-google.install (+0/-1)
Changed in webapps-sprint: | |
assignee: | nobody → Alberto Mardegan (mardy) |
Changed in gnome-control-center-signon: | |
assignee: | nobody → Alberto Mardegan (mardy) |
Changed in account-plugins: | |
assignee: | nobody → Alberto Mardegan (mardy) |
Changed in webapps-sprint: | |
importance: | Undecided → High |
Changed in gnome-control-center-signon: | |
importance: | Undecided → High |
Changed in account-plugins: | |
importance: | Undecided → High |
Changed in gnome-control-center-signon: | |
status: | Confirmed → In Progress |
Changed in webapps-sprint: | |
status: | New → In Progress |
Changed in account-plugins: | |
status: | New → In Progress |
Changed in webapps-sprint: | |
milestone: | none → sprint-20 |
Changed in account-plugins: | |
status: | In Progress → Fix Committed |
status: | Fix Committed → In Progress |
Changed in webapps-sprint: | |
milestone: | sprint-20 → sprint-21 |
milestone: | sprint-21 → sprint-22 |
description: | updated |
Changed in account-plugins: | |
importance: | High → Critical |
description: | updated |
Changed in canonical-devices-system-image: | |
assignee: | nobody → David Barth (dbarth) |
importance: | Undecided → High |
milestone: | none → 12 |
status: | New → Fix Committed |
Changed in webapps-sprint: | |
status: | In Progress → Fix Committed |
Changed in account-plugins (Ubuntu): | |
status: | New → In Progress |
importance: | Undecided → Critical |
Changed in account-plugins: | |
status: | In Progress → Fix Released |
Changed in gnome-control-center-signon: | |
status: | In Progress → Fix Released |
Changed in gnome-control-center-signon (Ubuntu): | |
status: | New → In Progress |
importance: | Undecided → Critical |
tags: | added: xenial |
summary: |
- Allow plugins to decide which username to set on new accounts + [SRU] Allow plugins to decide which username to set on new accounts |
Changed in gnome-control-center-signon (Ubuntu): | |
milestone: | none → ubuntu-16.04.1 |
Changed in gnome-control-center-signon (Ubuntu Yakkety): | |
milestone: | ubuntu-16.04.1 → none |
Changed in account-plugins (Ubuntu Xenial): | |
milestone: | none → ubuntu-16.04.1 |
Changed in gnome-control-center-signon (Ubuntu Xenial): | |
milestone: | none → ubuntu-16.04.1 |
Changed in canonical-devices-system-image: | |
status: | Fix Committed → Fix Released |
tags: | added: verification-done |
tags: |
added: verification-failed removed: verification-needed |
Version 0.13+16. 04.20160405- 0ubuntu1 which fixes this bug is in Yakkety.