EasyUnlock grandfathered support will not work correctly |
|||||||||
Issue descriptionSee b/112856481 On the CrOS side, EASY_UNLOCK_HOST needs to be disabled when BETTER_TOGETHER_HOST is explicitly disabled (ie when the user clicks the "Forget Phone" button).
,
Sep 6
I no longer have a working chromium setup handy. I could set everything back up and hopefully have this change in by the end of the week/early next week, but I think it would be a lot quicker to let someone else take this.
,
Sep 7
Josh, I think this might be a good thing for you to grab that's a bit higher priority than the other bug you're currently working on. Leslie, do you mind giving Josh some context off-thread and walking him through what he'd need to change?
,
Sep 7
Yep! Josh, let me know when you're ready to manually test the changes with a phone.
,
Sep 8
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/14af52f2c0b2928008dcbb87acb81e75a05cf86e commit 14af52f2c0b2928008dcbb87acb81e75a05cf86e Author: Josh Nohle <nohle@google.com> Date: Sat Sep 08 00:07:36 2018 [CrOS MultiDevice] Disable EASY_UNLOCK_HOST when BETTER_TOGETHER_HOST disabled On the GmsCore side, EASY_UNLOCK_HOST is blacklisted from being automatically disabled when BETTER_TOGETHER_HOST is disabled. This is done to prevent CryptAuth from losing the enabled status of EasyUnlock on host devices that have grandfathered-in EasyUnlock support. In order to disable EasyUnlock, it must be done so explicitly. Therefore, when the user chooses to manually disable all Better Together features via the "Forget this device" button in Chrome OS or a comparable method on Android, EASY_UNLOCK_HOST should be explicitly disabled in addition to BETTER_TOGETHER_HOST. - before this change, EASY_UNLOCK_HOST was *not* disabled when "Forget this device" button was used, and - after this change, EASY_UNLOCK_HOST *was* disabled when "Forget this device" button was used. Bug: 881612 Change-Id: If1f1898a8942f9c42a0f5cceb20095ad1ef087d5 Tested: Manually verified that when EASY_UNLOCK_HOST is blacklisted, Reviewed-on: https://chromium-review.googlesource.com/1212742 Reviewed-by: Jeremy Klein <jlklein@chromium.org> Commit-Queue: Josh Nohle <nohle@chromium.org> Cr-Commit-Position: refs/heads/master@{#589727} [modify] https://crrev.com/14af52f2c0b2928008dcbb87acb81e75a05cf86e/chromeos/services/device_sync/public/cpp/fake_device_sync_client.cc [modify] https://crrev.com/14af52f2c0b2928008dcbb87acb81e75a05cf86e/chromeos/services/device_sync/public/cpp/fake_device_sync_client.h [modify] https://crrev.com/14af52f2c0b2928008dcbb87acb81e75a05cf86e/chromeos/services/multidevice_setup/host_backend_delegate_impl.cc [modify] https://crrev.com/14af52f2c0b2928008dcbb87acb81e75a05cf86e/chromeos/services/multidevice_setup/host_backend_delegate_impl_unittest.cc
,
Sep 8
,
Sep 9
Your change meets the bar and is auto-approved for M70. Please go ahead and merge the CL to branch 3538 manually. Please contact milestone owner if you have questions. Owners: benmason@(Android), kariahda@(iOS), geohsu@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e16e3b72279f824c9a54d28439309bfd558408c0 commit e16e3b72279f824c9a54d28439309bfd558408c0 Author: Josh Nohle <nohle@google.com> Date: Mon Sep 10 16:31:10 2018 [CrOS MultiDevice] Disable EASY_UNLOCK_HOST when BETTER_TOGETHER_HOST disabled On the GmsCore side, EASY_UNLOCK_HOST is blacklisted from being automatically disabled when BETTER_TOGETHER_HOST is disabled. This is done to prevent CryptAuth from losing the enabled status of EasyUnlock on host devices that have grandfathered-in EasyUnlock support. In order to disable EasyUnlock, it must be done so explicitly. Therefore, when the user chooses to manually disable all Better Together features via the "Forget this device" button in Chrome OS or a comparable method on Android, EASY_UNLOCK_HOST should be explicitly disabled in addition to BETTER_TOGETHER_HOST. - before this change, EASY_UNLOCK_HOST was *not* disabled when "Forget this device" button was used, and - after this change, EASY_UNLOCK_HOST *was* disabled when "Forget this device" button was used. Bug: 881612 Change-Id: If1f1898a8942f9c42a0f5cceb20095ad1ef087d5 Tested: Manually verified that when EASY_UNLOCK_HOST is blacklisted, Reviewed-on: https://chromium-review.googlesource.com/1212742 Reviewed-by: Jeremy Klein <jlklein@chromium.org> Commit-Queue: Josh Nohle <nohle@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#589727}(cherry picked from commit 14af52f2c0b2928008dcbb87acb81e75a05cf86e) Reviewed-on: https://chromium-review.googlesource.com/1216709 Cr-Commit-Position: refs/branch-heads/3538@{#223} Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811} [modify] https://crrev.com/e16e3b72279f824c9a54d28439309bfd558408c0/chromeos/services/device_sync/public/cpp/fake_device_sync_client.cc [modify] https://crrev.com/e16e3b72279f824c9a54d28439309bfd558408c0/chromeos/services/device_sync/public/cpp/fake_device_sync_client.h [modify] https://crrev.com/e16e3b72279f824c9a54d28439309bfd558408c0/chromeos/services/multidevice_setup/host_backend_delegate_impl.cc [modify] https://crrev.com/e16e3b72279f824c9a54d28439309bfd558408c0/chromeos/services/multidevice_setup/host_backend_delegate_impl_unittest.cc
,
Sep 10
,
Sep 20
See review comments post-submission for https://chromium-review.googlesource.com/c/chromium/src/+/1212742. We still have an edge case to fix here. That being said, the fixes above should work for most cases, so I don't think the extra fix needs to be merged to M-70, so I'm moving the target for this fix to M-71.
,
Sep 20
,
Sep 28
Here's a little more context: On the GmsCore side, the enabled/disabled state of supported features (eg., MAGIC_TETHER_HOST) are aligned with that of BETTER_TOGETHER_HOST (cl/207356721). So, if BETTER_TOGETHER_HOST is enabled/disabled, all other supported features should be enabled/disabled as well. However, EASY_UNLOCK_HOST is blacklisted from being automatically disabled (cl/212997905). This is done to prevent CryptAuth from losing the enabled status of EasyUnlock on host devices that have grandfathered-in EasyUnlock support. In order to disable EasyUnlock, it must be done so explicitly. Therefore, when the user chooses to manually disable all BetterTogether features via the "Forget this device" button in ChromeOS or a comparable method on Android, EASY_UNLOCK_HOST should be explicitly disabled in addition to BETTER_TOGETHER_HOST.
,
Oct 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec commit 3bf5ee0d9bf8308fd12803a4be3fab95c56874ec Author: Josh Nohle <nohle@google.com> Date: Wed Oct 10 00:18:31 2018 [CrOS MultiDevice] Refactor: Disable EASY_UNLOCK_HOST when BETTER_TOGETHER_HOST disabled This CL is a rework of https://chromium-review.googlesource.com/c/chromium/src/+/1212742. This class watches for BETTER_TOGETHER_HOST to be disabled on all devices and responds by also disabling EASY_UNLOCK_HOST. If the attempt to disable EASY_UNLOCK_HOST fails, a retry attempt takes place every 5 minutes or when ChromeOS is restarted. Bug: 881612 Change-Id: If579c64322f876d59a6d6cfd38bbe8cda87895c7 Tested: Manual and chromeos_unittests Reviewed-on: https://chromium-review.googlesource.com/c/1250096 Commit-Queue: Josh Nohle <nohle@chromium.org> Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Cr-Commit-Position: refs/heads/master@{#598143} [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/BUILD.gn [add] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/grandfathered_easy_unlock_host_disabler.cc [add] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/grandfathered_easy_unlock_host_disabler.h [add] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/grandfathered_easy_unlock_host_disabler_unittest.cc [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/host_backend_delegate_impl.cc [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/host_backend_delegate_impl_unittest.cc [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/multidevice_setup_impl.cc [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/multidevice_setup_impl.h [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/multidevice_setup_impl_unittest.cc [modify] https://crrev.com/3bf5ee0d9bf8308fd12803a4be3fab95c56874ec/chromeos/services/multidevice_setup/multidevice_setup_service.cc
,
Oct 10
|
|||||||||
►
Sign in to add a comment |
|||||||||
Comment 1 by jlklein@chromium.org
, Sep 6Owner: lesliewatkins@chromium.org
Status: Assigned (was: Untriaged)