authorizer/dashboard/src/components/EnvComponents/Features.tsx

223 lines
6.1 KiB
TypeScript
Raw Normal View History

2022-10-02 17:06:57 +00:00
import React from 'react';
import { Divider, Flex, Stack, Text } from '@chakra-ui/react';
import InputField from '../InputField';
import { SwitchInputType } from '../../constants';
2022-05-31 07:41:54 +00:00
const Features = ({ variables, setVariables }: any) => {
2022-10-02 17:06:57 +00:00
return (
<div>
{' '}
<Text fontSize="md" paddingTop="2%" fontWeight="bold" mb={5}>
2023-04-22 09:51:47 +00:00
Features
2022-10-02 17:06:57 +00:00
</Text>
<Stack spacing={6}>
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Login Page:</Text>
2022-10-02 17:06:57 +00:00
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_LOGIN_PAGE}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
2022-10-02 17:06:57 +00:00
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Email Verification:</Text>
2022-10-02 17:06:57 +00:00
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_EMAIL_VERIFICATION}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Magic Login Link:</Text>
2022-10-02 17:06:57 +00:00
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_MAGIC_LINK_LOGIN}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Basic Authentication:</Text>
2022-10-02 17:06:57 +00:00
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_BASIC_AUTHENTICATION}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Sign Up:</Text>
2022-10-02 17:06:57 +00:00
</Flex>
<Flex justifyContent="start" mb={3}>
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_SIGN_UP}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Strong Password:</Text>
2022-10-02 17:06:57 +00:00
</Flex>
<Flex justifyContent="start" mb={3}>
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_STRONG_PASSWORD}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
<Flex alignItems="center">
<Flex w="100%" alignItems="baseline" flexDir="column">
2023-04-22 09:51:47 +00:00
<Text fontSize="sm">Multi Factor Authentication (MFA):</Text>
2022-10-02 17:06:57 +00:00
<Text fontSize="x-small">
Note: Enabling this will ignore Enforcing MFA shown below and will
also ignore the user MFA setting.
</Text>
</Flex>
2022-10-02 17:06:57 +00:00
<Flex justifyContent="start" mb={3}>
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_MULTI_FACTOR_AUTHENTICATION}
2023-04-23 12:01:24 +00:00
hasReversedValue
2022-10-02 17:06:57 +00:00
/>
</Flex>
</Flex>
{
!variables.DISABLE_MULTI_FACTOR_AUTHENTICATION &&
<Flex alignItems="center">
<Flex w="100%" alignItems="baseline" flexDir="column">
<Text fontSize="sm">TOTP:</Text>
<Text fontSize="x-small">
Note: to enable totp mfa
</Text>
</Flex>
<Flex justifyContent="start" mb={3}>
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_TOTP_LOGIN}
hasReversedValue
/>
</Flex>
</Flex>
}
{!variables.DISABLE_MULTI_FACTOR_AUTHENTICATION &&
<Flex alignItems="center">
<Flex w="100%" alignItems="baseline" flexDir="column">
<Text fontSize="sm">EMAIL OTP:</Text>
<Text fontSize="x-small">
Note: to enable email otp mfa
</Text>
</Flex>
<Flex justifyContent="start" mb={3}>
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_MAIL_OTP_LOGIN}
hasReversedValue
/>
</Flex>
</Flex>}
2022-10-02 17:06:57 +00:00
<Flex alignItems="center">
<Flex w="100%" alignItems="baseline" flexDir="column">
<Text fontSize="sm">
Enforce Multi Factor Authentication (MFA):
</Text>
<Text fontSize="x-small">
Note: If you disable enforcing after it was enabled, it will still
keep MFA enabled for older users.
</Text>
</Flex>
<Flex justifyContent="start" mb={3}>
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.ENFORCE_MULTI_FACTOR_AUTHENTICATION}
/>
</Flex>
</Flex>
<Flex>
<Flex w="100%" justifyContent="start" alignItems="center">
<Text fontSize="sm">Playground:</Text>
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.DISABLE_PLAYGROUND}
hasReversedValue
/>
</Flex>
</Flex>
2022-10-02 17:06:57 +00:00
</Stack>
<Divider paddingY={5} />
<Text fontSize="md" paddingTop={5} fontWeight="bold" mb={5}>
Cookie Security Features
</Text>
<Stack spacing={6}>
<Flex>
<Flex w="100%" alignItems="baseline" flexDir="column">
<Text fontSize="sm">Use Secure App Cookie:</Text>
<Text fontSize="x-small">
Note: If you set this to insecure, it will set{' '}
<code>sameSite</code> property of cookie to <code>lax</code> mode
</Text>
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.APP_COOKIE_SECURE}
/>
</Flex>
</Flex>
<Flex>
<Flex w="100%" alignItems="baseline" flexDir="column">
<Text fontSize="sm">Use Secure Admin Cookie:</Text>
</Flex>
<Flex justifyContent="start">
<InputField
variables={variables}
setVariables={setVariables}
inputType={SwitchInputType.ADMIN_COOKIE_SECURE}
/>
</Flex>
</Flex>
</Stack>
</div>
);
};
2022-05-31 07:41:54 +00:00
export default Features;