diff --git a/src/components/just-in-time-access/JustInTimeAccessPage.tsx b/src/components/just-in-time-access/JustInTimeAccessPage.tsx index 2739fcc..0abc11f 100644 --- a/src/components/just-in-time-access/JustInTimeAccessPage.tsx +++ b/src/components/just-in-time-access/JustInTimeAccessPage.tsx @@ -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(); let awsCustomResourceTypeList = Array(); @@ -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 ? ( + + ) : null} {isResourceTypeAWSCustom ? ( { + 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 diff --git a/src/components/just-in-time-access/structs.tsx b/src/components/just-in-time-access/structs.tsx index 55a0e2e..60c79d6 100644 --- a/src/components/just-in-time-access/structs.tsx +++ b/src/components/just-in-time-access/structs.tsx @@ -10,6 +10,7 @@ export type JitRequest = { vertical: string; environment: string; resourceType: string; + resourceId: string; resourceAction: string; awsResourceType: string; awsResourceNames: Array;