Fix authentication functions

Signed-off-by: Fred Boniface <fred@fjla.uk>
This commit is contained in:
Fred Boniface 2023-04-07 17:00:15 +01:00
parent e96f72a2fa
commit 979048105e
4 changed files with 2 additions and 13 deletions

2
app.js
View File

@ -75,7 +75,7 @@ app.use('/api/v1/register', regRtr);
// Authented Routes
app.use('/api/v1/ldbs', authenticate)
app.use('/api/v1/auth/test', authenticate, (req, res) => res.status(200)) // Returns 401 if auth failed, 200 if successful.
app.use('/api/v1/auth/test', authenticate, (req, res) => res.status(200).json({status: "ok", message: "Authentication successful"})) // Returns 401 if auth failed, 200 if successful.
// Number of proxies:
app.set('trust proxy', 4)

View File

@ -7,8 +7,6 @@ const domains = require('../configs/domains.configs')
async function createRegKey(body) {
log.out(`registerServices.createRegKey: Incoming request`, "INFO")
if (!clean.checkEmailValid(body.mail)) {return {status: 400, message:"address format invalid"}
}
const domain = await clean.getDomainFromEmail(body.email) // The function should validate the email
log.out(`registerServices: New registration request from domain: ${domain}`, "info")
if (domains.includes(domain)) {

View File

@ -3,7 +3,7 @@ const environment = process.env.NODE_ENV;
const hideInProduction = ["info", "dbug"]
async function out(msg, level = 'othr') {
if (environment === "production" && hideInProduction.includes(level)) {
if (environment === "production" && hideInProduction.includes(level.toLowerCase())) {
return;
} else {
const time = new Date().toISOString();

View File

@ -43,18 +43,9 @@ async function getDomainFromEmail(mail) { // Needs testing
return split[1]
}
async function checkEmailValid(mail) {
const regex = /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;
const result = mail.match(regex)
? true
: false; log.out(`sanitizerUtils.checkEmailValid: Invalid email format used: ${mail}`,"warn")
return result;
}
module.exports = {
cleanApiEndpointTxt,
cleanApiEndpointNum,
cleanNrcc,
getDomainFromEmail,
checkEmailValid
}