# Oauth2 adminAuth via dockercompose envvars

**URL:** <https://discourse.nodered.org/t/oauth2-adminauth-via-dockercompose-envvars/86330>\
**Category:** General\
**Tags:** docker\
**Created:** [11 March 2024 09:20 UTC](https://discourse.nodered.org/t/oauth2-adminauth-via-dockercompose-envvars/86330 "2024-03-11T09:20:26Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Con1924](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/con1924/32/85266_2.png) [@Con1924](https://discourse.nodered.org/u/Con1924)\
**Post date:** [11 March 2024 09:20 UTC](https://discourse.nodered.org/t/oauth2-adminauth-via-dockercompose-envvars/86330/1 "2024-03-11T09:20:26Z")

</div>

I am using the below in settings.js to configure my oauth2 login with authentik.

Currently I have to:  
deploy nodered  
exec in  
install `passport-openidconnect` in /data/node\_modules  
modify the settings.js file

Is it possible to do all this via dockercompose?

```auto
command: >
      sh -c "npm install passport-openidconnect --prefix /data/node_modules"

```

Maybe something like

```auto
NODE_RED_ADMINAUTH_TYPE="strategy"
NODE_RED_ADMINAUTH_STRATEGY_NAME="openidconnect"
NODE_RED_ADMINAUTH_STRATEGY_OPTIONS_ISSUER='https://auth.mydomain.com/application/o/###SLUG###/'

```

```auto
        adminAuth: {
        type:"strategy",
        strategy: {
                name: "openidconnect",
                label: 'Sign in with authentik',
                icon:"fa-cloud",
                strategy: require("passport-openidconnect").Strategy,
                options: {
                        issuer: 'https://auth.mydomain.com/application/o/###SLUG###/',
                        authorizationURL: 'https://auth.mydomain.com/application/o/authorize/',
                        tokenURL: 'https://auth.mydomain.com/application/o/token/',
                        userInfoURL: 'https://auth.mydomain.com/application/o/userinfo/',
                        clientID: '####',
                        clientSecret: '####',
                        callbackURL: 'https://####customer###.nodered.mydomain.com/auth/strategy/callback/',
                        scope: ['email', 'profile', 'openid'],
                        proxy: true,
                verify: function(issuer, profile, done) {
                        done(null, profile)
                }
              }
            },
            users: function(user) {
                return Promise.resolve({ username: user, permissions: "*" });
            }
        },

```

Thanks

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [9 June 2024 09:21 UTC](https://discourse.nodered.org/t/oauth2-adminauth-via-dockercompose-envvars/86330/2 "2024-06-09T09:21:00Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
