mirror of
https://github.com/awatertrevi/infisical.git
synced 2026-10-11 11:29:21 +00:00
72 lines
1.5 KiB
TypeScript
72 lines
1.5 KiB
TypeScript
import express from 'express';
|
|
const router = express.Router();
|
|
import { body, param, query } from 'express-validator';
|
|
import {
|
|
requireAuth,
|
|
requireWorkspaceAuth,
|
|
validateRequest
|
|
} from '../../middleware';
|
|
import { ADMIN, MEMBER } from '../../variables';
|
|
import { workspaceController } from '../../controllers/v2';
|
|
|
|
router.post(
|
|
'/:workspaceId/secrets',
|
|
requireAuth({
|
|
acceptedAuthModes: ['jwt']
|
|
}),
|
|
requireWorkspaceAuth({
|
|
acceptedRoles: [ADMIN, MEMBER]
|
|
}),
|
|
body('secrets').exists(),
|
|
body('keys').exists(),
|
|
body('environment').exists().trim().notEmpty(),
|
|
body('channel'),
|
|
param('workspaceId').exists().trim(),
|
|
validateRequest,
|
|
workspaceController.pushWorkspaceSecrets
|
|
);
|
|
|
|
router.get(
|
|
'/:workspaceId/secrets',
|
|
requireAuth({
|
|
acceptedAuthModes: ['jwt', 'serviceToken']
|
|
}),
|
|
requireWorkspaceAuth({
|
|
acceptedRoles: [ADMIN, MEMBER]
|
|
}),
|
|
query('environment').exists().trim(),
|
|
query('channel'),
|
|
param('workspaceId').exists().trim(),
|
|
validateRequest,
|
|
workspaceController.pullSecrets
|
|
);
|
|
|
|
router.get(
|
|
'/:workspaceId/key',
|
|
requireAuth({
|
|
acceptedAuthModes: ['jwt']
|
|
}),
|
|
requireWorkspaceAuth({
|
|
acceptedRoles: [ADMIN, MEMBER]
|
|
}),
|
|
param('workspaceId').exists().trim(),
|
|
validateRequest,
|
|
workspaceController.getWorkspaceKey
|
|
);
|
|
|
|
router.get(
|
|
'/:workspaceId/service-token-data',
|
|
requireAuth({
|
|
acceptedAuthModes: ['jwt']
|
|
}),
|
|
requireWorkspaceAuth({
|
|
acceptedRoles: [ADMIN, MEMBER]
|
|
}),
|
|
param('workspaceId').exists().trim(),
|
|
validateRequest,
|
|
workspaceController.getWorkspaceServiceTokenData
|
|
);
|
|
|
|
|
|
export default router;
|