Re: [Bug 22214] How long do permissions persist?

On 05/26/2014 11:53 AM, bugzilla@jessica.w3.org wrote:
> https://www.w3.org/Bugs/Public/show_bug.cgi?id=22214
>
> --- Comment #2 from Harald Alvestrand <harald@alvestrand.no> ---
> Discussed at Media TF meeting May 19. Consensus was not reached.
>
Follow-up on this one:

It seems that we all agree that stored permissions are scoped per 
origin, that stored permissions (and any other permissions) can be 
revoked by the user at any time, and that whether permission is given 
for one device, all devices, or some subset of them is entirely an UA 
option.

The discussion I heard at the Media Capture TF meeting was approximately 
between two alternatives:

1) Permission persists until the device is released by all tracks 
sourced from it.

2) Permission persists until the page is closed. (This may allow 
permissions to survive a page reload.)

The time (outside reload) when it makes a difference is if we have the 
sequence:

   getUserMedia() -> stream (prompt happens)
   stream.close()

   getUserMedia() -> stream2

Should the second call cause a prompt or not?
Note: If "all cameras" is the mode, the following code never causes a 
second prompt in either scenario, I think:

   getUserMedia() -> stream1
   stream1.clone() -> stream2
   stream2.enable = false  // to turn off the "capturing" indication
   stream1.close()

   getUserMedia() -> stream3 // no prompt - camera access is still permitted

because stream2 functions as a "handle" to keep the permissions alive.

I think I stated my preference at the meeting, but I would like to hear 
from the rest - this should be settled one way or the other (or a third...)

Received on Tuesday, 27 May 2014 19:34:08 UTC