This module supports OpenID connect flow to authenticate with CERN SSO and CERN egroup authorisation. It protects the static content (REST API calls and WebSocket messages are protected by JWT token). It defines how to handle service accounts.
new OpenId({secret: SECRET, id: ID, redirect_uri: REDIRECT_URI, well_known: WELL_KNOWN[, timeout: TIMEOUT, sa_whitelist: SA_WHITELIST, sa_role: SA_ROLE]});
Where:
SECRET
- Application secretID
- Application IDREDIRECT_URI
- Authentication callbackWELL_KNOWN
- So-called “well-known” endpoint defining OpenID configurationTIMEOUT
] - OpenID timeout in millisecondsSA_WHITELIST
] - IP address range to accept service accounts fromSA_ROLE
] - OpenID role that service account needs to accessopenId: {
secret: '<secret>',
id: '<id>',
redirect_uri: 'https://myapp.cern.ch/callback',
well_known: 'https://auth.cern.ch/auth/realms/cern/.well-known/openid-configuration'
}
https://myapp.cern.ch/callback
alice-member
group to “Linked Groups”admin
or any other role supported by your applicationAdditional details are available in here: https://auth.docs.cern.ch/user-documentation/oidc/config/