@infomaker/service-authorization-lib
Version:
IMID Service Authorization Library
31 lines (29 loc) • 856 B
JavaScript
/* eslint-env node */
module.exports = {
getAuthParamsFromRequest: request => {
return request.route.settings.plugins.authorization
},
getServiceTokenFromRequest: request => {
const req = request.raw.req
const authorizationHeader = req.headers.authorization
if (authorizationHeader && authorizationHeader.toLowerCase().startsWith('bearer')) {
return authorizationHeader.replace(/bearer /i, '')
} else {
return // serviceToken = undefined
}
},
setIsAuthenticated(request) {
request.auth.isAuthenticated = true
},
setCredentialsOnRequest: (request, {credentials, artifacts}) => {
/* istanbul ignore next */
if (credentials) {
request.auth.credentials = credentials
}
/* istanbul ignore next */
if (artifacts) {
request.auth.artifacts = artifacts
}
}
}