Skip to content

Commit f9b3f7c

Browse files
Merge pull request #13 from mattycourtney/remote-auth-conf
Added remote authentication environment variables
2 parents 3e86bae + e628c8c commit f9b3f7c

File tree

3 files changed

+20
-7
lines changed

3 files changed

+20
-7
lines changed

readme-vars.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,12 @@ param_env_vars:
3333
- { env_var: "REDIS_HOST", env_value: "<REDIS_HOST>", desc: "Redis host (optional, default: redis)" }
3434
- { env_var: "REDIS_PORT", env_value: "<REDIS_PORT>", desc: "Redis port number (optional, default: 6379)" }
3535
- { env_var: "REDIS_PASSWORD", env_value: "<REDIS_PASSWORD>", desc: "Redis password (optional, default: none)" }
36+
- { env_var: "REMOTE_AUTH_ENABLED", env_value: "<REMOTE_AUTH_ENABLED>", desc: "Enable remote authentication (optional, default: False" }
37+
- { 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" }
38+
- { 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" }
39+
- { 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" }
40+
- { 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: []" }
41+
- { 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: {}" }
3642
- { env_var: "TZ", env_value: "<TZ>", desc: "Timezone (i.e., America/New_York)" }
3743

3844
param_usage_include_ports: true
@@ -46,5 +52,6 @@ app_setup_block: |
4652
4753
# changelog
4854
changelogs:
55+
- { date: "03.02.21:", desc: "Added remote authentication environment variables." }
4956
- { date: "02.01.21:", desc: "Added BASE_PATH environment variable." }
50-
- { date: "23.08.20:", desc: "Initial Release." }
57+
- { 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
@@ -13,6 +13,12 @@ NETBOX_CONF[DB_PORT]=${DB_PORT:-}
1313
NETBOX_CONF[REDIS_HOST]=${REDIS_HOST:-redis}
1414
NETBOX_CONF[REDIS_PORT]=${REDIS_PORT:-6379}
1515
NETBOX_CONF[REDIS_PASSWORD]=${REDIS_PASSWORD:-}
16+
NETBOX_CONF[REMOTE_AUTH_ENABLED]=${REMOTE_AUTH_ENABLED:-False}
17+
NETBOX_CONF[REMOTE_AUTH_BACKEND]=${REMOTE_AUTH_BACKEND:-netbox.authentication.RemoteUserBackend}
18+
NETBOX_CONF[REMOTE_AUTH_HEADER]=${REMOTE_AUTH_HEADER:-HTTP_REMOTE_USER}
19+
NETBOX_CONF[REMOTE_AUTH_AUTO_CREATE_USER]=${REMOTE_AUTH_AUTO_CREATE_USER:-False}
20+
NETBOX_CONF[REMOTE_AUTH_DEFAULT_GROUPS]=${REMOTE_AUTH_DEFAULT_GROUPS:-[]}
21+
NETBOX_CONF[REMOTE_AUTH_DEFAULT_PERMISSIONS]=${REMOTE_AUTH_DEFAULT_PERMISSIONS:-{}}
1622

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

0 commit comments

Comments
 (0)