Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] dev from KelvinTegelaar:dev #192

Merged
merged 6 commits into from
Jul 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/data/Extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"type": "CIPP-API",
"cat": "API",
"forceSyncButton": false,
"disableWhenhosted": true,
"helpText": "This integration allows you to enable CIPP-API access outside of CIPP. Requires Global Administrator permissions inside your tenant for activation of the API. The API credentials will only be shown once.",
"SettingOptions": [
{
Expand Down
72 changes: 72 additions & 0 deletions src/data/standards.json
Original file line number Diff line number Diff line change
Expand Up @@ -1164,6 +1164,40 @@
"name": "standards.AntiPhishPolicy.EnableUnusualCharactersSafetyTips",
"default": true
},
{
"type": "Select",
"label": "If the message is detected as spoof by spoof intelligence",
"name": "standards.AntiPhishPolicy.AuthenticationFailAction",
"values": [
{
"label": "Quarantine the message",
"value": "Quarantine"
},
{
"label": "Move to Junk Folder",
"value": "MoveToJmf"
}
]
},
{
"type": "Select",
"label": "Quarantine policy for Spoof",
"name": "standards.AntiPhishPolicy.SpoofQuarantineTag",
"values": [
{
"label": "AdminOnlyAccessPolicy",
"value": "AdminOnlyAccessPolicy"
},
{
"label": "DefaultFullAccessPolicy",
"value": "DefaultFullAccessPolicy"
},
{
"label": "DefaultFullAccessWithNotificationPolicy",
"value": "DefaultFullAccessWithNotificationPolicy"
}
]
},
{
"type": "Select",
"label": "If a message is detected as user impersonation",
Expand All @@ -1183,6 +1217,25 @@
}
]
},
{
"type": "Select",
"label": "Quarantine policy for user impersonation",
"name": "standards.AntiPhishPolicy.TargetedUserQuarantineTag",
"values": [
{
"label": "AdminOnlyAccessPolicy",
"value": "AdminOnlyAccessPolicy"
},
{
"label": "DefaultFullAccessPolicy",
"value": "DefaultFullAccessPolicy"
},
{
"label": "DefaultFullAccessWithNotificationPolicy",
"value": "DefaultFullAccessWithNotificationPolicy"
}
]
},
{
"type": "Select",
"label": "If a message is detected as domain impersonation",
Expand All @@ -1202,6 +1255,25 @@
}
]
},
{
"type": "Select",
"label": "Quarantine policy for domain impersonation",
"name": "standards.AntiPhishPolicy.TargetedDomainQuarantineTag",
"values": [
{
"label": "DefaultFullAccessWithNotificationPolicy",
"value": "DefaultFullAccessWithNotificationPolicy"
},
{
"label": "AdminOnlyAccessPolicy",
"value": "AdminOnlyAccessPolicy"
},
{
"label": "DefaultFullAccessPolicy",
"value": "DefaultFullAccessPolicy"
}
]
},
{
"type": "Select",
"label": "If Mailbox Intelligence detects an impersonated user",
Expand Down
19 changes: 15 additions & 4 deletions src/views/cipp/Extensions.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -42,15 +42,15 @@ export default function CIPPExtensions() {
})
}

const ButtonGenerate = (integrationType, forceSync) => (
const ButtonGenerate = (integrationType, forceSync, disabled) => (
<>
<CButton className="me-2" form={integrationType} type="submit">
<CButton disabled={disabled} className="me-2" form={integrationType} type="submit">
{extensionConfigResult.isFetching && (
<FontAwesomeIcon icon={faCircleNotch} spin className="me-2" size="1x" />
)}
Set Extension Settings
</CButton>
<CButton onClick={() => onSubmitTest(integrationType)} className="me-2">
<CButton disabled={disabled} onClick={() => onSubmitTest(integrationType)} className="me-2">
{listExtensionTestResult.isFetching && (
<FontAwesomeIcon icon={faCircleNotch} spin className="me-2" size="1x" />
)}
Expand Down Expand Up @@ -83,6 +83,7 @@ export default function CIPPExtensions() {
queryString.set('tab', tab.toString())
navigate(`${location.pathname}?${queryString}`)
}
const hostedMetaContent = document.querySelector('meta[name="hosted"]')?.getAttribute('content')

return (
<CippPage title="Settings" tenantSelector={false}>
Expand All @@ -105,11 +106,21 @@ export default function CIPPExtensions() {
<CippLazy visible={active === idx}>
<CRow className="mb-3">
<CCol sm={12} md={integration.mappingRequired ? 4 : 12} className="mb-3">
{hostedMetaContent === 'true' && integration.disableWhenhosted && (
<CippCallout color="warning">
This extension requires activation in the management portal for hosted
clients.
</CippCallout>
)}
<CippButtonCard
title={integration.name}
titleType="big"
isFetching={listBackendResult.isFetching}
CardButton={ButtonGenerate(integration.type, integration.forceSync)}
CardButton={ButtonGenerate(
integration.type,
integration.forceSync,
(hostedMetaContent === 'true' && integration.disableWhenhosted) || false,
)}
key={idx}
>
<p>{integration.helpText}</p>
Expand Down
Loading