moonfire-nvr/db
Scott Lamb fda7e4ca2b add concept of user/session permissions
(I also considered the names "capabilities" and "scopes", but I think
"permissions" is the most widely understood.)

This is increasingly necessary as the web API becomes more capable.
Among other things, it allows:

* non-administrator users who can view but not access camera passwords
  or change any state
* workers that update signal state based on cameras' built-in motion
  detection or a security system's events but don't need to view videos
* control over what can be done without authenticating

Currently session permissions are just copied from user permissions, but
you can also imagine admin sessions vs not, as a checkbox when signing
in. This would match the standard Unix workflow of using a
non-administrative session most of the time.

Relevant to my current signals work (#28) and to the addition of an
administrative API (#35, including #66).
2019-06-19 15:34:20 -07:00
..
proto add concept of user/session permissions 2019-06-19 15:34:20 -07:00
testdata initial split of database to a separate crate 2018-02-20 23:15:39 -08:00
upgrade add concept of user/session permissions 2019-06-19 15:34:20 -07:00
auth.rs add concept of user/session permissions 2019-06-19 15:34:20 -07:00
Cargo.toml add concept of user/session permissions 2019-06-19 15:34:20 -07:00
check.rs add concept of user/session permissions 2019-06-19 15:34:20 -07:00
coding.rs initial split of database to a separate crate 2018-02-20 23:15:39 -08:00
db.rs add concept of user/session permissions 2019-06-19 15:34:20 -07:00
dir.rs cargo fix --all 2019-06-14 08:47:11 -07:00
lib.rs add concept of user/session permissions 2019-06-19 15:34:20 -07:00
raw.rs cargo fix --all 2019-06-14 08:47:11 -07:00
recording.rs db crate support for updating signals (#28) 2019-06-13 22:25:55 -07:00
schema.sql add concept of user/session permissions 2019-06-19 15:34:20 -07:00
signal.rs fix dumb typo bug in signal/state input validation 2019-06-14 16:41:18 -07:00
testutil.rs properly test fix for #64 2019-01-04 16:11:58 -08:00
writer.rs cargo fix --all 2019-06-14 08:47:11 -07:00