Thread (10 messages) 10 messages, 3 authors, 2021-06-03

Re: [PATCH 2/2] blk-zoned: allow BLKREPORTZONE without CAP_SYS_ADMIN

flat view

From: David Sterba <hidden>
Date: 2021-06-03 10:07:21
Also in: lkml

On Thu, Jun 03, 2021 at 10:00:08AM +0000, Damien Le Moal wrote:
On 2021/06/03 18:54, David Sterba wrote:
quoted
On Mon, May 31, 2021 at 01:54:53PM +0000, Niklas Cassel wrote:
quoted
From: Niklas Cassel <redacted>

Performing a BLKREPORTZONE operation should be allowed under the same
permissions as read(). (read() does not require CAP_SYS_ADMIN).

Remove the CAP_SYS_ADMIN requirement, and instead check that the fd was
successfully opened with FMODE_READ. This way BLKREPORTZONE will match
the access control requirement of read().
Does this mean that a process that does not have read nor write access
to the device itself (blocks) is capable of reading the zone
information? Eg. some monitoring tool.
With this change, to do a report zones, the process will only need to have read
access to the device. And if it has read access, it also means that it can read
the zones content.
Ok, so this is a bit restricting. The zone information is like block
device metadata, comparing it to a file that has permissionx 0600 I can
see the all the stat info (name, tiemstamps) but can't read the data.

But as the ioctl work, it needs a file descriptor and there's probably
no way to separate the permissions to read blocks and just the metadata.
For a monitoring/reporting tool this would be useful. Eg. for btrfs it
could be part of filesystem status overview regarding full or near-full
zones and emitting an early warning or poking some service to start the
reclaim.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help