INFRA-4080 | Harinder | Adding database name field in JIT request from when environment is Prod and resourceType is DB

This commit is contained in:
Harinder Singh
2025-01-07 19:44:26 +05:30
parent 1342421c87
commit e1769ebfb8
3 changed files with 23 additions and 1 deletions

View File

@@ -30,6 +30,7 @@ const JustInTimeAccessPage = () => {
vertical: '',
environment: '',
resourceType: '',
resourceId: '',
resourceAction: '',
awsResourceType: '',
awsResourceNames: [''],
@@ -43,6 +44,8 @@ const JustInTimeAccessPage = () => {
const classes = useStyles();
let isResourceTypeAWSCustom = false;
let isResourceTypeDB = false;
let isEnvironmentProd = false;
let resourceActionList = Array<string>();
let awsCustomResourceTypeList = Array<string>();
@@ -87,7 +90,8 @@ const JustInTimeAccessPage = () => {
isResourceTypeAWSCustom = false;
}
resourceActionList = RESOURCE_ACTION_MAP[values[resourceTypeField]];
// }
isResourceTypeDB = values[resourceTypeField] === 'DB' ? true : false;
isEnvironmentProd = values['environment'] === 'PROD' ? true : false;
}
return (
@@ -157,6 +161,13 @@ const JustInTimeAccessPage = () => {
list={RESOURCE_TYPE_LIST}
style={classes.field}
/>
{isResourceTypeDB && isEnvironmentProd ? (
<FormikTextField
className={classes.field}
label="Database Name"
name="resourceId"
/>
) : null}
{isResourceTypeAWSCustom ? (
<DropDownList
label="AWS Resource Type"

View File

@@ -5,6 +5,16 @@ export const justInTimeAccessValidationSchema = yup.object({
vertical: yup.string().required('is Required'),
environment: yup.string().required('is Required'),
resourceType: yup.string().required('is Required'),
resourceId: yup.string().test('is required', 'is Required', (value, context) => {
const resourceType = context.parent.resourceType;
const environment = context.parent.environment;
if (resourceType === 'DB' && environment === 'PROD') {
if (value === null || value === undefined || value === '') {
return false;
}
}
return true;
}),
resourceAction: yup.string().required('is Required'),
justification: yup.string().required('is Required'),
grantWindow: yup

View File

@@ -10,6 +10,7 @@ export type JitRequest = {
vertical: string;
environment: string;
resourceType: string;
resourceId: string;
resourceAction: string;
awsResourceType: string;
awsResourceNames: Array<string>;