Merge branch 'hotfix/21.56.9' into master
[gitter.git] / server / web / middlewares / ensure-user-identity-from-provider.js
blob02ba83f3b2bbf0686dde311ca4dc3a3776c1c630
1 'use strict';
3 const asyncHandler = require('express-async-handler');
4 const identityService = require('gitter-web-identity');
5 const StatusError = require('statuserror');
7 function ensureUserIdentityByProvider(provider) {
8   return asyncHandler(async function(req, res, next) {
9     const identity = await identityService.getIdentityForUser(req.user, provider);
11     if (!identity) {
12       return next(new StatusError(403, `Only ${provider} users can use this endpoint`));
13     }
15     return next();
16   });
19 module.exports = ensureUserIdentityByProvider;