Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable PermissionLifetime feature by default in code #16646

Closed
goodov opened this issue Jun 28, 2021 · 3 comments · Fixed by brave/brave-core#9257
Closed

Enable PermissionLifetime feature by default in code #16646

goodov opened this issue Jun 28, 2021 · 3 comments · Fixed by brave/brave-core#9257

Comments

@goodov
Copy link
Member

goodov commented Jun 28, 2021

The overall feature rollout looks fine, no any issues was found, so it's safe to enable the feature by default and remove it from Griffin after some time.

@stephendonner
Copy link

Verified PASSED using a subset of my testplans from #14126 with build

Brave 1.28.64 Chromium: 92.0.4515.81 (Official Build) nightly (x86_64)
Revision dba3af0a9a48954c8b188bc641e651580b7cb7b5-refs/branch-heads/4515@{#1162}
OS macOS Version 11.4 (Build 20F71)

Confirmed:

  • feature is ENABLED by default
  • feature is still ENABLED / DISABLED toggleable via brave://flags (if that needs to change, file a bug or let me know, and I will, @goodov 👍 )
default (enabled) disabled previous UI
Screen Shot 2021-07-08 at 3 41 06 PM Screen Shot 2021-07-08 at 4 06 40 PM Screen Shot 2021-07-08 at 4 06 54 PM

Origin-based behavior, multiple tabs (location):

  1. load hulu.com
  2. log in
  3. Give permission until I close this page
  4. click Allow
  5. confirm brave://settings/content/location shows Allow for Location
  6. click Allow when prompted to install Widevine
  7. play a video
  8. open hulu.com in another tab
  9. play a video
  10. close either of the two open tabs
  11. confirm brave://settings/content/location shows Allow for Location
  12. close the remaining tab
  13. confirm brave://settings/content/location now shows Ask before accessing (recommended) and has nothing under Block and Allow
example example example example example
Screen Shot 2021-07-08 at 3 43 24 PM Screen Shot 2021-07-08 at 3 43 42 PM Screen Shot 2021-07-08 at 3 44 31 PM Screen Shot 2021-07-08 at 3 44 44 PM Screen Shot 2021-07-08 at 3 44 49 PM

24-hours positive test (23 hours) (microphone):

  1. load https://permission.site/
  2. click on Microphone
  3. give permission for 24 hours and click Allow
  4. confirm brave://settings/content shows Allow for Microphone
  5. shut down Brave
  6. set system clock forward by 23 hours
  7. confirm brave://settings/content shows Allow for Microphone
  8. load https://permission.site/
  9. confirm you do NOT get re-prompted for microphone permissions when clicking on `Microphone
example example example example example
Screen Shot 2021-07-08 at 3 50 42 PM Screen Shot 2021-07-09 at 2 50 42 PM Screen Shot 2021-07-09 at 2 50 52 PM Screen Shot 2021-07-08 at 3 49 31 PM Screen Shot 2021-07-08 at 3 49 51 PM

Allow forever (location):

  1. load https://permission.site/
  2. click on Location
  3. give permission forever
  4. confirm brave://settings/content/location shows Allow for Location
  5. shut down Brave
  6. set system clock forward by 2+ months
  7. confirm brave://settings/content/location shows Allow for Location
  8. load https://permission.site/ and click on Location again
  9. confirm you get do NOT get reprompted for Location
example example example example example
Screen Shot 2021-07-09 at 2 54 09 PM Screen Shot 2021-07-09 at 2 54 35 PM Screen Shot 2021-09-01 at 2 56 05 PM Screen Shot 2021-09-09 at 2 55 28 PM Screen Shot 2021-09-01 at 2 56 22 PM

Consecutive-revocation permissions (location):

  1. launch Brave using --enable-logging=stderr --vmodule="*/bat-native-ledger/*"=6,"*/brave_rewards/*"=6,"*/bat-native-ads/*"=6,"*/bat-native-confirmations/*"=6,"*/brave_ads/*"=9,"*/brave_user_model/*"=6 --permission-lifetime-test-seconds=20
  2. load https://permission.site
  3. click on Location
  4. give permission for 20 seconds
  5. click on the lock icon next to permission.site in the URL bar
  6. confirm Location is set to Allow
  7. wait 10 seconds
  8. open https://browserleaks.com/geo
  9. give permission for 20 seconds
  10. return to permissions.site
  11. click on the lock icon; confirm you no longer see Location with any value
  12. return to browserleaks.com/geo
  13. click on the lock icon; confirm you no longer see Location with any value
example example example example example
Screen Shot 2021-07-08 at 4 01 26 PM Screen Shot 2021-07-08 at 4 01 32 PM Screen Shot 2021-07-08 at 4 01 46 PM Screen Shot 2021-07-08 at 4 02 02 PM Screen Shot 2021-07-08 at 4 02 19 PM

@goodov
Copy link
Member Author

goodov commented Jul 9, 2021

feature is still toggleable via brave://flags

good catch! I missed that. Let's also clean this up.

@srirambv
Copy link
Contributor

srirambv commented Aug 3, 2021

Verification passed on Oppo R5 with Android 11 running 1.28.99 x64 Beta build

  • Verified Permission lifetime is enabled by default
  • Verified permission prompt shows up on https://permission.site without having to enable/disable any flag
  • Verified permission prompt for until I close this site, for 24 hours, for 1 week & forever works as expected for both allow and block
  • Verified chrome://flags/#brave-permission-lifetime flag is available and can still be used to disable the setting

Verification passed on Samsung Tab A with Android 10 running 1.28.99 x64 Beta build

  • Verified Permission lifetime is enabled by default
  • Verified permission prompt shows up on https://permission.site without having to enable/disable any flag
  • Verified permission prompt for until I close this site, for 24 hours, for 1 week & forever works as expected for both allow and block
  • Verified chrome://flags/#brave-permission-lifetime flag is available and can still be used to disable the setting

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants