Skip to content

Commit 1a971aa

Browse files
committed
Added remote authentication environment variables
1 parent 6668a30 commit 1a971aa

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

readme-vars.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ param_env_vars:
3232
- { env_var: "REDIS_HOST", env_value: "<REDIS_HOST>", desc: "Redis host (optional, default: redis" }
3333
- { env_var: "REDIS_PORT", env_value: "<REDIS_PORT>", desc: "Redis port number (optional, default: 6379)" }
3434
- { env_var: "REDIS_PASSWORD", env_value: "<REDIS_PASSWORD>", desc: "Redis password (optional, default: none)" }
35+
- { env_var: "REMOTE_AUTH_ENABLED", env_value: "<REMOTE_AUTH_ENABLED>", desc: "Enable remote authentication (optional, default: False" }
36+
- { env_var: "REMOTE_AUTH_BACKEND", env_value: "<REMOTE_AUTH_BACKEND>", desc: "Python path to the custom Django authentication backend to use for external user authentication (optional, default: netbox.authentication.RemoteUserBackend" }
37+
- { env_var: "REMOTE_AUTH_HEADER", env_value: "<REMOTE_AUTH_HEADER>", desc: "Name of the HTTP header which informs NetBox of the currently authenticated user. (optional, default: HTTP_REMOTE_USER" }
38+
- { env_var: "REMOTE_AUTH_AUTO_CREATE_USER", env_value: "<REMOTE_AUTH_AUTO_CREATE_USER>", desc: "If true, NetBox will automatically create local accounts for users authenticated via a remote service (optional, default: False" }
39+
- { env_var: "REMOTE_AUTH_DEFAULT_GROUPS", env_value: "<REMOTE_AUTH_DEFAULT_GROUPS>", desc: "The list of groups to assign a new user account when created using remote authentication (optional, default: []" }
40+
- { env_var: "REMOTE_AUTH_DEFAULT_PERMISSIONS", env_value: "<REMOTE_AUTH_DEFAULT_PERMISSIONS>", desc: "A mapping of permissions to assign a new user account when created using remote authentication (optional, default: {}" }
3541
- { env_var: "TZ", env_value: "<TZ>", desc: "Timezone (i.e., America/New_York)" }
3642

3743
param_usage_include_ports: true
@@ -45,4 +51,5 @@ app_setup_block: |
4551
4652
# changelog
4753
changelogs:
54+
- { date: "03.02.21:", desc: "Added remote authentication environment variables." }
4855
- { date: "23.08.20:", desc: "Initial Release." }

root/defaults/configuration.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -213,12 +213,12 @@
213213
RACK_ELEVATION_DEFAULT_UNIT_WIDTH = 220
214214

215215
# Remote authentication support
216-
REMOTE_AUTH_ENABLED = False
217-
REMOTE_AUTH_BACKEND = 'netbox.authentication.RemoteUserBackend'
218-
REMOTE_AUTH_HEADER = 'HTTP_REMOTE_USER'
219-
REMOTE_AUTH_AUTO_CREATE_USER = True
220-
REMOTE_AUTH_DEFAULT_GROUPS = []
221-
REMOTE_AUTH_DEFAULT_PERMISSIONS = {}
216+
REMOTE_AUTH_ENABLED = {{REMOTE_AUTH_ENABLED}}
217+
REMOTE_AUTH_BACKEND = '{{REMOTE_AUTH_BACKEND}}'
218+
REMOTE_AUTH_HEADER = '{{REMOTE_AUTH_HEADER}}'
219+
REMOTE_AUTH_AUTO_CREATE_USER = {{REMOTE_AUTH_AUTO_CREATE_USER}}
220+
REMOTE_AUTH_DEFAULT_GROUPS = {{REMOTE_AUTH_DEFAULT_GROUPS}}
221+
REMOTE_AUTH_DEFAULT_PERMISSIONS = {{REMOTE_AUTH_DEFAULT_PERMISSIONS}}
222222

223223
# This determines how often the GitHub API is called to check the latest release of NetBox. Must be at least 1 hour.
224224
RELEASE_CHECK_TIMEOUT = 24 * 3600

root/etc/cont-init.d/50-config

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@ NETBOX_CONF[DB_PORT]=${DB_PORT:-}
1212
NETBOX_CONF[REDIS_HOST]=${REDIS_HOST:-redis}
1313
NETBOX_CONF[REDIS_PORT]=${REDIS_PORT:-6379}
1414
NETBOX_CONF[REDIS_PASSWORD]=${REDIS_PASSWORD:-}
15+
NETBOX_CONF[REMOTE_AUTH_ENABLED]=${REMOTE_AUTH_ENABLED:-False}
16+
NETBOX_CONF[REMOTE_AUTH_BACKEND]=${REMOTE_AUTH_BACKEND:-netbox.authentication.RemoteUserBackend}
17+
NETBOX_CONF[REMOTE_AUTH_HEADER]=${REMOTE_AUTH_HEADER:-HTTP_REMOTE_USER}
18+
NETBOX_CONF[REMOTE_AUTH_AUTO_CREATE_USER]=${REMOTE_AUTH_AUTO_CREATE_USER:-False}
19+
NETBOX_CONF[REMOTE_AUTH_DEFAULT_GROUPS]=${REMOTE_AUTH_DEFAULT_GROUPS:-[]}
20+
NETBOX_CONF[REMOTE_AUTH_DEFAULT_PERMISSIONS]=${REMOTE_AUTH_DEFAULT_PERMISSIONS:-{}}
1521

1622
cd /app/netbox/netbox/netbox
1723
NETBOX_CONF[SECRET_KEY]=${SECRET_KEY:-$(python3 ../generate_secret_key.py)}

0 commit comments

Comments
 (0)