Skip to content

PrivateAIM/node-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Node UI

The Node UI is the primary interface for admins of the node installation at participating institutions. With this website, the administrators have access to an overview of the submitted projects and analyses that wish to make use of the data at the data center, as well as have full control over the individual containers running on their systems and manage which projects/analyses have access to the various datasets.

Required Environment Variables

This frontend requires the following environment variables to be set. The SSR framework used for this project (Nuxt) in addition to the OIDC library (nuxt-oidc-auth) requires the keycloak-related environment variables to be precisely named and explicitly defined in order to overwrite the default configuration during runtime (i.e. when deployed in a container).

NUXT_PUBLIC_BASE_URL="http://localhost:3000"  # URL of the website
NUXT_PUBLIC_HUB_ADAPTER_URL="http://urlForHubAdapterApi.de"  # URL for hub adapter API
NUXT_PUBLIC_ORIGIN="$NUXT_PUBLIC_BASE_URL/api/auth"  # Relative path to sign page (you likely should not modify this)

NUXT_IDP_CLIENT_ID=node-ui  # Client ID defined in the IDP provided in NUXT_PUBLIC_IDP_ISSUER
NUXT_IDP_CLIENT_SECRET=xxx
NUXT_PUBLIC_IDP_PROVIDER="keycloak"  # Can be either 'keycloak' or 'authentik'
NUXT_PUBLIC_IDP_ISSUER="http://my-keycloak.com/realms/flame"

# If not using the same keycloak instance as the other FLAME Node services for user authentication, then this needs to be set
NUXT_PUBLIC_INTERNAL_KEYCLOAK_URL=""

NUXT_AUTH_SECRET=xxx  # Unique key for encrypting JWT
EnvVar Description Default Required
NUXT_PUBLIC_BASE_URL URL of the website x
NUXT_PUBLIC_HUB_ADAPTER_URL URL for hub adapter API x
NUXT_PUBLIC_ORIGIN Relative path to sign page (you likely should not modify this) $NUXT_PUBLIC_BASE_URL/api/auth
NUXT_IDP_CLIENT_ID Client ID defined in the IDP provided in NUXT_PUBLIC_IDP_ISSUER node-ui
NUXT_IDP_CLIENT_SECRET Client secret defined in the IDP provided in NUXT_PUBLIC_IDP_ISSUER x
NUXT_PUBLIC_IDP_PROVIDER Can be either 'keycloak', 'auth0', 'authentik', 'onelogin', 'okta', or 'zitadel' keycloak
NUXT_PUBLIC_IDP_ISSUER URI for the IDP used to identify itself using OpenID Connect (OIDC) protocol x
NUXT_PUBLIC_INTERNAL_KEYCLOAK_URL If not using the same keycloak instance as the other FLAME Node services for user authentication, then this needs to be set
NUXT_AUTH_SECRET Unique key for encrypting JWT, see Setting a Secret below x

Setting a Secret

In order to add additional security to the generated JWTs, a random string needs to be generated to hash tokens, sign/encrypt cookies, and to generate cryptographic keys. To quickly generate such a string, run the following command:

openssl rand -base64 32

About

User interface for a node.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors 5