-
Notifications
You must be signed in to change notification settings - Fork 62
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
Replace device-info permission by a browsing context boolean flag #641
Replace device-info permission by a browsing context boolean flag #641
Conversation
I disagree with this approach. Please file a bug describing the problem you want to solve. |
The bug is #612. Also, we agreed that the usual good approach is to do getUserMedia-then-enumerateDevices. Additionally, I am not sure the device info permission concept is good. |
This PR removes an arguably redundant permission, which I approve of. But it still says user agents may revoke this ability (permission) whenever they want. This could be:
I think we need to define this in more detail to protect web interop. Original intent: when users revoke both camera and microphone permission, they revoke device-info as well (not before). I.e.
This is true in all browsers I tested, so it must have been the original intent. Other parts like This was also meant to be extensible, which is where I share @alvestrand's concern. E.g.
If we end up not needing this because of w3c/mediacapture-output#86, great! But it would still be nice if this spec didn't forbid extension, I think—Forbidding user agents from doing whatever they want is not the same as forbidding other specs from extending things. Is there a way to write it like this? |
I understand permissions may be per-device, so if this needs to be per-device that would WFM. |
Needs a PR to remove device-info from feature-policy. @youennf has promised to do this. |
…apturing MediaStreamTrack r=jib "fully active and has focus" is now a sufficient condition for dispatching "devicechange" events if the change in devices should be visible from enumerateDevices(). https://github.com/w3c/mediacapture-main/pull/574/files#diff-1217ca1c44ff30a33dd50c49d03b5cadc9633c789df8ff9370ed4a42859e1211R3146 Permissions checks are replaced with [[canExposeCameraInfo]] and [[canExposeMicrophoneInfo]] slots set by getUserMedia(). w3c/mediacapture-main#641 w3c/mediacapture-main#773 The "media.navigator.permission.disabled" pref is no longer involved in "devicechange" dispatch decisions. Differential Revision: https://phabricator.services.mozilla.com/D132908
…apturing MediaStreamTrack r=jib "fully active and has focus" is now a sufficient condition for dispatching "devicechange" events if the change in devices should be visible from enumerateDevices(). https://github.com/w3c/mediacapture-main/pull/574/files#diff-1217ca1c44ff30a33dd50c49d03b5cadc9633c789df8ff9370ed4a42859e1211R3146 Permissions checks are replaced with [[canExposeCameraInfo]] and [[canExposeMicrophoneInfo]] slots set by getUserMedia(). w3c/mediacapture-main#641 w3c/mediacapture-main#773 The "media.navigator.permission.disabled" pref is no longer involved in "devicechange" dispatch decisions. Differential Revision: https://phabricator.services.mozilla.com/D132908
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 UltraBlame original commit: cf689822deaf314fc6deeea180a921e172e80304
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 UltraBlame original commit: 59b9147c85f0fc893bab3ab9baa431d66bfb25cb
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 UltraBlame original commit: cf689822deaf314fc6deeea180a921e172e80304
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 UltraBlame original commit: 59b9147c85f0fc893bab3ab9baa431d66bfb25cb
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 UltraBlame original commit: cf689822deaf314fc6deeea180a921e172e80304
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 UltraBlame original commit: 59b9147c85f0fc893bab3ab9baa431d66bfb25cb
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302
…etUserMedia success, to spec. Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1528042 gecko-commit: 55c6b85b37c1fb8d6d0b6a273e237b4921672743 gecko-reviewers: karlt
…ontinue to test full device information exposure in enumerateDevices(). This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1528042 gecko-commit: 173f133fb868ce50a9feec4e26496be7f7aeae11 gecko-reviewers: karlt
…etUserMedia success, to spec. Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1528042 gecko-commit: 55c6b85b37c1fb8d6d0b6a273e237b4921672743 gecko-reviewers: karlt
…ontinue to test full device information exposure in enumerateDevices(). This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1528042 gecko-commit: 173f133fb868ce50a9feec4e26496be7f7aeae11 gecko-reviewers: karlt
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 UltraBlame original commit: 55c6b85b37c1fb8d6d0b6a273e237b4921672743
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 UltraBlame original commit: 173f133fb868ce50a9feec4e26496be7f7aeae11
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 UltraBlame original commit: 55c6b85b37c1fb8d6d0b6a273e237b4921672743
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 UltraBlame original commit: 173f133fb868ce50a9feec4e26496be7f7aeae11
… (and after) getUserMedia success, to spec. r=karlt Updates enumerateDevices() to limit exposure of privacy sensitive information ahead of actual camera or microphone use. It also implements the "creating a device info object" algorithm correctly after getUserMedia success, which only exposes information on cameras or microphones (but not both) if only one or the other kind has successfully been used. Includes the latest privacy improvements to the spec: - w3c/mediacapture-main#632 - w3c/mediacapture-main#641 - w3c/mediacapture-main#773 This also fixes media.navigator.permission.disabled leaking labels. Differential Revision: https://phabricator.services.mozilla.com/D100378 UltraBlame original commit: 55c6b85b37c1fb8d6d0b6a273e237b4921672743
… to let them continue to test full device information exposure in enumerateDevices(). r=karlt This is required by spec. See w3c/mediacapture-main#641 and w3c/mediacapture-main#773 for details. Also fixes test_enumerateDevices_getUserMediaFake.html to run on macOS outside automation. Differential Revision: https://phabricator.services.mozilla.com/D154302 UltraBlame original commit: 173f133fb868ce50a9feec4e26496be7f7aeae11
No description provided.