Added API key authentication.
This commit is contained in:
@@ -1,7 +1,16 @@
|
||||
/* eslint-disable no-param-reassign */
|
||||
import { stringify } from '@brillout/json-serializer/stringify'; /* eslint-disable-line import/extensions */
|
||||
import IPCIDR from 'ip-cidr';
|
||||
|
||||
import { login, signup } from '../auth.js';
|
||||
import {
|
||||
login,
|
||||
signup,
|
||||
fetchUserKeys,
|
||||
createKey,
|
||||
removeUserKey,
|
||||
flushUserKeys,
|
||||
} from '../auth.js';
|
||||
|
||||
import { fetchUser } from '../users.js';
|
||||
|
||||
function getIp(req) {
|
||||
@@ -68,4 +77,28 @@ export async function signupApi(req, res) {
|
||||
req.session.user = user;
|
||||
res.send(user);
|
||||
}
|
||||
|
||||
export async function fetchUserKeysApi(req, res) {
|
||||
const keys = await fetchUserKeys(req.user);
|
||||
|
||||
res.send(stringify(keys));
|
||||
}
|
||||
|
||||
export async function createKeyApi(req, res) {
|
||||
const key = await createKey(req.user);
|
||||
|
||||
res.send(stringify(key));
|
||||
}
|
||||
|
||||
export async function removeUserKeyApi(req, res) {
|
||||
await removeUserKey(req.user, req.params.keyIdentifier);
|
||||
|
||||
res.status(204).send();
|
||||
}
|
||||
|
||||
export async function flushUserKeysApi(req, res) {
|
||||
await flushUserKeys(req.user);
|
||||
|
||||
res.status(204).send();
|
||||
}
|
||||
/* eslint-enable no-param-reassign */
|
||||
|
||||
Reference in New Issue
Block a user