HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/good-life-be/middleware/swaggerAuth.js
import basicAuth from 'basic-auth';

const swaggerAuth = (req, res, next) => {
  if (
    process.env.NODE_ENV === 'production' ||
    process.env.NODE_ENV === 'staging'
  ) {
    const user = basicAuth(req);

    if (
      !user ||
      user.name !== process.env.SWAGGER_USERNAME ||
      user.pass !== process.env.SWAGGER_PASSWORD
    ) {
      res.set('WWW-Authenticate', 'Basic realm="example"');
      res.status(401).send('Authentication required.');
      return;
    }

    next();
  } else {
    next();
  }
};

export default swaggerAuth;