mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-05-04 04:27:42 +03:00
Add default role config for proxy users
This allows users to specify a default role for users when using a proxy for auth. This can be useful for users who can't/don't want to define a header mapping for the remote-role header.
This commit is contained in:
parent
bae309db09
commit
08af50e051
@ -261,14 +261,14 @@ def auth(request: Request):
|
|||||||
|
|
||||||
role_header = proxy_config.header_map.role
|
role_header = proxy_config.header_map.role
|
||||||
role = (
|
role = (
|
||||||
request.headers.get(role_header, default="viewer")
|
request.headers.get(role_header, default=proxy_config.default_role)
|
||||||
if role_header
|
if role_header
|
||||||
else "viewer"
|
else proxy_config.default_role
|
||||||
)
|
)
|
||||||
|
|
||||||
# if comma-separated with "admin", use "admin", else "viewer"
|
# if comma-separated with "admin", use "admin", else use default role
|
||||||
success_response.headers["remote-role"] = (
|
success_response.headers["remote-role"] = (
|
||||||
"admin" if role and "admin" in role else "viewer"
|
"admin" if role and "admin" in role else proxy_config.default_role
|
||||||
)
|
)
|
||||||
|
|
||||||
return success_response
|
return success_response
|
||||||
|
|||||||
@ -30,3 +30,6 @@ class ProxyConfig(FrigateBaseModel):
|
|||||||
default=None,
|
default=None,
|
||||||
title="Secret value for proxy authentication.",
|
title="Secret value for proxy authentication.",
|
||||||
)
|
)
|
||||||
|
default_role: Optional[str] = Field(
|
||||||
|
default="viewer", title="Default role for proxy users."
|
||||||
|
)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user