authorization: make api key authentication optional
Signed-off-by; Eric Callahan <arksine.code@gmail.com>
This commit is contained in:
parent
d4378eb051
commit
c83714bfe8
|
@ -76,6 +76,7 @@ class Authorization:
|
||||||
self.login_timeout = config.getint('login_timeout', 90)
|
self.login_timeout = config.getint('login_timeout', 90)
|
||||||
self.force_logins = config.getboolean('force_logins', False)
|
self.force_logins = config.getboolean('force_logins', False)
|
||||||
self.default_source = config.get('default_source', "moonraker").lower()
|
self.default_source = config.get('default_source', "moonraker").lower()
|
||||||
|
self.enable_api_key = config.getboolean('enable_api_key', True)
|
||||||
if self.default_source not in AUTH_SOURCES:
|
if self.default_source not in AUTH_SOURCES:
|
||||||
raise config.error(
|
raise config.error(
|
||||||
"[authorization]: option 'default_source' - Invalid "
|
"[authorization]: option 'default_source' - Invalid "
|
||||||
|
@ -734,9 +735,10 @@ class Authorization:
|
||||||
return ost_user
|
return ost_user
|
||||||
|
|
||||||
# Check API Key Header
|
# Check API Key Header
|
||||||
key: Optional[str] = request.headers.get("X-Api-Key")
|
if self.enable_api_key:
|
||||||
if key and key == self.api_key:
|
key: Optional[str] = request.headers.get("X-Api-Key")
|
||||||
return self.users[API_USER]
|
if key and key == self.api_key:
|
||||||
|
return self.users[API_USER]
|
||||||
|
|
||||||
# If the force_logins option is enabled and at least one
|
# If the force_logins option is enabled and at least one
|
||||||
# user is created this is an unauthorized request
|
# user is created this is an unauthorized request
|
||||||
|
|
Loading…
Reference in New Issue