mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-16 21:37:59 +00:00
99 lines
1.9 KiB
TypeScript
99 lines
1.9 KiB
TypeScript
import express from "express";
|
|
const router = express.Router();
|
|
import { requireAuth } from "../../middleware";
|
|
import { usersController } from "../../controllers/v2";
|
|
import { AuthMode } from "../../variables";
|
|
|
|
router.get(
|
|
"/me",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT, AuthMode.API_KEY]
|
|
}),
|
|
usersController.getMe
|
|
);
|
|
|
|
router.patch(
|
|
"/me/mfa",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT, AuthMode.API_KEY]
|
|
}),
|
|
usersController.updateMyMfaEnabled
|
|
);
|
|
|
|
router.patch(
|
|
"/me/name",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT, AuthMode.API_KEY]
|
|
}),
|
|
usersController.updateName
|
|
);
|
|
|
|
router.put(
|
|
"/me/auth-methods",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT, AuthMode.API_KEY],
|
|
}),
|
|
body("authMethods").exists().isArray({
|
|
min: 1,
|
|
}).custom((authMethods: AuthMethod[]) => {
|
|
return authMethods.every(provider => [
|
|
AuthMethod.EMAIL,
|
|
AuthMethod.GOOGLE,
|
|
AuthMethod.GITHUB,
|
|
AuthMethod.GITLAB
|
|
].includes(provider))
|
|
}),
|
|
validateRequest,
|
|
usersController.updateAuthMethods,
|
|
);
|
|
|
|
router.get(
|
|
"/me/organizations",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT, AuthMode.API_KEY]
|
|
}),
|
|
usersController.getMyOrganizations
|
|
);
|
|
|
|
router.get(
|
|
"/me/api-keys",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT]
|
|
}),
|
|
usersController.getMyAPIKeys
|
|
);
|
|
|
|
router.post(
|
|
"/me/api-keys",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT]
|
|
}),
|
|
usersController.createAPIKey
|
|
);
|
|
|
|
router.delete(
|
|
"/me/api-keys/:apiKeyDataId",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT]
|
|
}),
|
|
usersController.deleteAPIKey
|
|
);
|
|
|
|
router.get(
|
|
"/me/sessions",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT]
|
|
}),
|
|
usersController.getMySessions
|
|
);
|
|
|
|
router.delete(
|
|
"/me/sessions",
|
|
requireAuth({
|
|
acceptedAuthModes: [AuthMode.JWT]
|
|
}),
|
|
usersController.deleteMySessions
|
|
);
|
|
|
|
export default router;
|