Increase rate limiting for emails.
This commit is contained in:
parent
836cd78fc3
commit
244e8258fd
10
OUTLINE.md
10
OUTLINE.md
@ -1,5 +1,10 @@
|
|||||||
# TODO
|
# TODO
|
||||||
|
|
||||||
|
[2] unused images should be deleted
|
||||||
|
> user avatars
|
||||||
|
> guild icons
|
||||||
|
> images in messages
|
||||||
|
[3] improve email css layout
|
||||||
[3] public servers (don't require login to view)
|
[3] public servers (don't require login to view)
|
||||||
> no server list
|
> no server list
|
||||||
> view as guest (disabled by default)
|
> view as guest (disabled by default)
|
||||||
@ -11,11 +16,6 @@
|
|||||||
|
|
||||||
# FIXME
|
# FIXME
|
||||||
|
|
||||||
[2] unused images should be deleted
|
|
||||||
> user avatars
|
|
||||||
> guild icons
|
|
||||||
> images in messages
|
|
||||||
|
|
||||||
# VERIFY
|
# VERIFY
|
||||||
|
|
||||||
[3] member status: members sometimes remain online, after going offline
|
[3] member status: members sometimes remain online, after going offline
|
||||||
|
@ -12,8 +12,7 @@ connect(process.env.MONGO_URI, {
|
|||||||
useFindAndModify: false,
|
useFindAndModify: false,
|
||||||
useCreateIndex: true,
|
useCreateIndex: true,
|
||||||
serverSelectionTimeoutMS: 0,
|
serverSelectionTimeoutMS: 0,
|
||||||
})
|
}).catch(error => log.error(error.message ?? 'Unable to connect to db', { uri: process.env.MONGO_URI }))
|
||||||
.catch(error => log.error(error.message ?? 'Unable to connect to db', { uri: process.env.MONGO_URI }))
|
|
||||||
.then(async (con) => {
|
.then(async (con) => {
|
||||||
log.info(`Connected to database.`, { uri: process.env.MONGO_URI });
|
log.info(`Connected to database.`, { uri: process.env.MONGO_URI });
|
||||||
await User.updateMany({ $set: { status: 'OFFLINE' } })
|
await User.updateMany({ $set: { status: 'OFFLINE' } })
|
||||||
|
@ -8,7 +8,7 @@ import { REST } from '@acrd/types';
|
|||||||
|
|
||||||
export const router = Router();
|
export const router = Router();
|
||||||
|
|
||||||
router.post('/login', extraRateLimit(25), (req, res, next) => {
|
router.post('/login', extraRateLimit(20), (req, res, next) => {
|
||||||
req['flash'] = (_: string, message: string) => res.status(400).json({ message });
|
req['flash'] = (_: string, message: string) => res.status(400).json({ message });
|
||||||
next();
|
next();
|
||||||
}, passport.authenticate('local', {
|
}, passport.authenticate('local', {
|
||||||
@ -42,7 +42,7 @@ router.post('/register', extraRateLimit(10), async (req, res) => {
|
|||||||
res.status(201).json(await deps.users.createToken(user));
|
res.status(201).json(await deps.users.createToken(user));
|
||||||
});
|
});
|
||||||
|
|
||||||
router.get('/verify', extraRateLimit(25), async (req, res) => {
|
router.get('/verify', extraRateLimit(20), async (req, res) => {
|
||||||
const email = deps.verification.getEmailFromCode(req.query.code as string);
|
const email = deps.verification.getEmailFromCode(req.query.code as string);
|
||||||
const user = await User.findOne({ email }) as any;
|
const user = await User.findOne({ email }) as any;
|
||||||
if (!email || !user)
|
if (!email || !user)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user