diff --git a/deployment/AzureDeploymentTemplate.json b/deployment/AzureDeploymentTemplate.json
index 620700934567..bc7eb0ba9efe 100644
--- a/deployment/AzureDeploymentTemplate.json
+++ b/deployment/AzureDeploymentTemplate.json
@@ -115,18 +115,6 @@
"dependsOn": [
"[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
]
- },
- {
- "type": "secrets",
- "name": "exchangerefreshtoken",
- "apiVersion": "2015-06-01",
- "properties": {
- "contentType": "text/plain",
- "value": "ExchangeRefreshToken"
- },
- "dependsOn": [
- "[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
- ]
}
],
"dependsOn": ["[resourceId('Microsoft.Web/sites', variables('funcAppName'))]"]
@@ -178,10 +166,6 @@
"name": "RefreshToken",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/RefreshToken)')]"
},
- {
- "name": "ExchangeRefreshtoken",
- "value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/ExchangeRefreshToken)')]"
- },
{
"name": "TenantID",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/tenantid)')]"
diff --git a/deployment/AzureDeploymentTemplate_regionoptions.json b/deployment/AzureDeploymentTemplate_regionoptions.json
index c187bb7dc914..11fccba7350c 100644
--- a/deployment/AzureDeploymentTemplate_regionoptions.json
+++ b/deployment/AzureDeploymentTemplate_regionoptions.json
@@ -115,18 +115,6 @@
"dependsOn": [
"[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
]
- },
- {
- "type": "secrets",
- "name": "exchangerefreshtoken",
- "apiVersion": "2015-06-01",
- "properties": {
- "contentType": "text/plain",
- "value": "ExchangeRefreshToken"
- },
- "dependsOn": [
- "[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
- ]
}
],
"dependsOn": ["[resourceId('Microsoft.Web/sites', variables('funcAppName'))]"]
@@ -178,10 +166,6 @@
"name": "RefreshToken",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/RefreshToken)')]"
},
- {
- "name": "ExchangeRefreshtoken",
- "value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/ExchangeRefreshToken)')]"
- },
{
"name": "TenantID",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/tenantid)')]"
diff --git a/deployment/DevAzureDeploymentTemplate.json b/deployment/DevAzureDeploymentTemplate.json
index a653cebc66dd..dee70ee11871 100644
--- a/deployment/DevAzureDeploymentTemplate.json
+++ b/deployment/DevAzureDeploymentTemplate.json
@@ -37,13 +37,6 @@
"description": "The Refresh token for your Secure Application Model."
}
},
- "ExchangeRefreshToken": {
- "defaultValue": "LongRefreshtoken",
- "type": "string",
- "metadata": {
- "description": "The Exchange Refresh token for your Secure Application Model."
- }
- },
"GithubRepository": {
"defaultValue": "https://github.com/KelvinTegelaar/CIPP",
"type": "string",
@@ -150,18 +143,6 @@
"dependsOn": [
"[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
]
- },
- {
- "type": "secrets",
- "name": "exchangerefreshtoken",
- "apiVersion": "2015-06-01",
- "properties": {
- "contentType": "text/plain",
- "value": "[parameters('exchangerefreshtoken')]"
- },
- "dependsOn": [
- "[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
- ]
}
],
"dependsOn": ["[resourceId('Microsoft.Web/sites', variables('funcAppName'))]"]
@@ -213,10 +194,6 @@
"name": "RefreshToken",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/RefreshToken)')]"
},
- {
- "name": "ExchangeRefreshtoken",
- "value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/ExchangeRefreshToken)')]"
- },
{
"name": "TenantID",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/tenantid)')]"
diff --git a/deployment/DevAzureDeploymentTemplate_regionoptions.json b/deployment/DevAzureDeploymentTemplate_regionoptions.json
index 7af2b9af4905..301d50d5437a 100644
--- a/deployment/DevAzureDeploymentTemplate_regionoptions.json
+++ b/deployment/DevAzureDeploymentTemplate_regionoptions.json
@@ -37,13 +37,6 @@
"description": "The Refresh token for your Secure Application Model."
}
},
- "ExchangeRefreshToken": {
- "defaultValue": "LongRefreshtoken",
- "type": "string",
- "metadata": {
- "description": "The Exchange Refresh token for your Secure Application Model."
- }
- },
"GithubRepository": {
"defaultValue": "https://github.com/KelvinTegelaar/CIPP",
"type": "string",
@@ -150,18 +143,6 @@
"dependsOn": [
"[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
]
- },
- {
- "type": "secrets",
- "name": "exchangerefreshtoken",
- "apiVersion": "2015-06-01",
- "properties": {
- "contentType": "text/plain",
- "value": "[parameters('exchangerefreshtoken')]"
- },
- "dependsOn": [
- "[resourceId('Microsoft.KeyVault/vaults', variables('uniqueResourceNameBase'))]"
- ]
}
],
"dependsOn": ["[resourceId('Microsoft.Web/sites', variables('funcAppName'))]"]
@@ -213,10 +194,6 @@
"name": "RefreshToken",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/RefreshToken)')]"
},
- {
- "name": "ExchangeRefreshtoken",
- "value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/ExchangeRefreshToken)')]"
- },
{
"name": "TenantID",
"value": "[concat('@Microsoft.KeyVault(SecretUri=https://',variables('uniqueResourceNameBase'), '.vault.azure.net/secrets/tenantid)')]"
diff --git a/package-lock.json b/package-lock.json
index 51ada863cb0a..08e6a9e247c5 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7107,8 +7107,9 @@
}
},
"node_modules/enhanced-resolve": {
- "version": "5.9.2",
- "license": "MIT",
+ "version": "5.12.0",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz",
+ "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==",
"dependencies": {
"graceful-fs": "^4.2.4",
"tapable": "^2.2.0"
@@ -8824,7 +8825,8 @@
},
"node_modules/glob-to-regexp": {
"version": "0.4.1",
- "license": "BSD-2-Clause"
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
},
"node_modules/global-modules": {
"version": "2.0.0",
@@ -11851,10 +11853,6 @@
"node": ">=4"
}
},
- "node_modules/json-parse-better-errors": {
- "version": "1.0.2",
- "license": "MIT"
- },
"node_modules/json-parse-even-better-errors": {
"version": "2.3.1",
"license": "MIT"
@@ -17528,8 +17526,9 @@
}
},
"node_modules/watchpack": {
- "version": "2.3.1",
- "license": "MIT",
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
+ "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
"dependencies": {
"glob-to-regexp": "^0.4.1",
"graceful-fs": "^4.1.2"
@@ -17555,32 +17554,33 @@
}
},
"node_modules/webpack": {
- "version": "5.69.1",
- "license": "MIT",
+ "version": "5.77.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.77.0.tgz",
+ "integrity": "sha512-sbGNjBr5Ya5ss91yzjeJTLKyfiwo5C628AFjEa6WSXcZa4E+F57om3Cc8xLb1Jh0b243AWuSYRf3dn7HVeFQ9Q==",
"dependencies": {
"@types/eslint-scope": "^3.7.3",
"@types/estree": "^0.0.51",
"@webassemblyjs/ast": "1.11.1",
"@webassemblyjs/wasm-edit": "1.11.1",
"@webassemblyjs/wasm-parser": "1.11.1",
- "acorn": "^8.4.1",
+ "acorn": "^8.7.1",
"acorn-import-assertions": "^1.7.6",
"browserslist": "^4.14.5",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.8.3",
+ "enhanced-resolve": "^5.10.0",
"es-module-lexer": "^0.9.0",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
"glob-to-regexp": "^0.4.1",
"graceful-fs": "^4.2.9",
- "json-parse-better-errors": "^1.0.2",
+ "json-parse-even-better-errors": "^2.3.1",
"loader-runner": "^4.2.0",
"mime-types": "^2.1.27",
"neo-async": "^2.6.2",
"schema-utils": "^3.1.0",
"tapable": "^2.1.1",
"terser-webpack-plugin": "^5.1.3",
- "watchpack": "^2.3.1",
+ "watchpack": "^2.4.0",
"webpack-sources": "^3.2.3"
},
"bin": {
@@ -22755,7 +22755,9 @@
"dev": true
},
"enhanced-resolve": {
- "version": "5.9.2",
+ "version": "5.12.0",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz",
+ "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==",
"requires": {
"graceful-fs": "^4.2.4",
"tapable": "^2.2.0"
@@ -23851,7 +23853,9 @@
}
},
"glob-to-regexp": {
- "version": "0.4.1"
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
},
"global-modules": {
"version": "2.0.0",
@@ -25730,9 +25734,6 @@
"jsesc": {
"version": "2.5.2"
},
- "json-parse-better-errors": {
- "version": "1.0.2"
- },
"json-parse-even-better-errors": {
"version": "2.3.1"
},
@@ -29235,7 +29236,9 @@
}
},
"watchpack": {
- "version": "2.3.1",
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
+ "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
"requires": {
"glob-to-regexp": "^0.4.1",
"graceful-fs": "^4.1.2"
@@ -29253,31 +29256,33 @@
"dev": true
},
"webpack": {
- "version": "5.69.1",
+ "version": "5.77.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.77.0.tgz",
+ "integrity": "sha512-sbGNjBr5Ya5ss91yzjeJTLKyfiwo5C628AFjEa6WSXcZa4E+F57om3Cc8xLb1Jh0b243AWuSYRf3dn7HVeFQ9Q==",
"requires": {
"@types/eslint-scope": "^3.7.3",
"@types/estree": "^0.0.51",
"@webassemblyjs/ast": "1.11.1",
"@webassemblyjs/wasm-edit": "1.11.1",
"@webassemblyjs/wasm-parser": "1.11.1",
- "acorn": "^8.4.1",
+ "acorn": "^8.7.1",
"acorn-import-assertions": "^1.7.6",
"browserslist": "^4.14.5",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.8.3",
+ "enhanced-resolve": "^5.10.0",
"es-module-lexer": "^0.9.0",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
"glob-to-regexp": "^0.4.1",
"graceful-fs": "^4.2.9",
- "json-parse-better-errors": "^1.0.2",
+ "json-parse-even-better-errors": "^2.3.1",
"loader-runner": "^4.2.0",
"mime-types": "^2.1.27",
"neo-async": "^2.6.2",
"schema-utils": "^3.1.0",
"tapable": "^2.1.1",
"terser-webpack-plugin": "^5.1.3",
- "watchpack": "^2.3.1",
+ "watchpack": "^2.4.0",
"webpack-sources": "^3.2.3"
},
"dependencies": {
diff --git a/public/version_latest.txt b/public/version_latest.txt
index e4604e3afd0d..15a279981720 100644
--- a/public/version_latest.txt
+++ b/public/version_latest.txt
@@ -1 +1 @@
-3.2.1
+3.3.0
diff --git a/src/_nav.js b/src/_nav.js
index 3177cc44935d..e5a5d4f3f548 100644
--- a/src/_nav.js
+++ b/src/_nav.js
@@ -606,6 +606,11 @@ const _nav = [
name: 'Phishing Policies',
to: '/email/reports/phishing-policies',
},
+ {
+ component: CNavItem,
+ name: 'Shared Mailbox with Enabled Account',
+ to: '/email/reports/SharedMailboxEnabledAccount',
+ },
],
},
{
diff --git a/src/routes.js b/src/routes.js
index 61176edabc93..bac1f9bf996f 100644
--- a/src/routes.js
+++ b/src/routes.js
@@ -6,6 +6,7 @@ const Users = React.lazy(() => import('src/views/identity/administration/Users')
const DeletedItems = React.lazy(() => import('src/views/identity/administration/Deleted'))
const ViewBEC = React.lazy(() => import('src/views/identity/administration/ViewBEC'))
const AddUser = React.lazy(() => import('src/views/identity/administration/AddUser'))
+const InviteGuest = React.lazy(() => import('src/views/identity/administration/InviteGuest'))
const EditUser = React.lazy(() => import('src/views/identity/administration/EditUser'))
const ViewUser = React.lazy(() => import('src/views/identity/administration/ViewUser'))
const Groups = React.lazy(() => import('src/views/identity/administration/Groups'))
@@ -55,7 +56,7 @@ const DeployConditional = React.lazy(() => import('src/views/tenant/conditional/
const ListLicences = React.lazy(() => import('src/views/tenant/administration/ListLicences'))
const ListAppConsent = React.lazy(() => import('src/views/tenant/administration/ListOauthApps'))
-const BasicAuthReport = React.lazy(() => import('src/views/identity/reports/InactiveUsers'))
+const InActiveUserReport = React.lazy(() => import('src/views/identity/reports/InactiveUsers'))
const SignInReport = React.lazy(() => import('src/views/identity/reports/SignIns'))
const AzureADConnectReport = React.lazy(() =>
@@ -172,6 +173,9 @@ const MailboxClientAccessSettingsList = React.lazy(() =>
const MailboxStatisticsList = React.lazy(() =>
import('src/views/email-exchange/reports/MailboxStatisticsList'),
)
+const SharedMailboxEnabledAccount = React.lazy(() =>
+ import('src/views/email-exchange/reports/SharedMailboxEnabledAccount'),
+)
const MessageTrace = React.lazy(() => import('src/views/email-exchange/reports/MessageTrace'))
const PhishingPoliciesList = React.lazy(() =>
import('src/views/email-exchange/reports/PhishingPoliciesList'),
@@ -228,6 +232,11 @@ const routes = [
{ path: '/identity/administration/users/add', name: 'Add User', component: AddUser },
{ path: '/identity/administration/users/edit', name: 'Edit User', component: EditUser },
{ path: '/identity/administration/users/view', name: 'View User', component: ViewUser },
+ {
+ path: '/identity/administration/users/InviteGuest',
+ name: 'Invite Guest',
+ component: InviteGuest,
+ },
{ path: '/identity/administration/ViewBec', name: 'View BEC', component: ViewBEC },
{ path: '/identity/administration', name: 'Administration' },
{ path: '/identity/administration/users', name: 'Users', component: Users },
@@ -268,8 +277,8 @@ const routes = [
{ path: '/identity/reports/mfa-report', name: 'MFA Report', component: MFAReport },
{
path: '/identity/reports/inactive-users-report',
- name: 'Basic Auth Report',
- component: BasicAuthReport,
+ name: 'Inactive Users Report',
+ component: InActiveUserReport,
},
{
path: '/identity/reports/Signin-report',
@@ -568,6 +577,11 @@ const routes = [
path: '/email/reports/mailbox-statistics',
component: MailboxStatisticsList,
},
+ {
+ name: 'Shared Mailbox Enabled Account',
+ path: '/email/reports/SharedMailboxEnabledAccount',
+ component: SharedMailboxEnabledAccount,
+ },
{
name: 'Mailbox Client Access Settings',
path: '/email/reports/mailbox-cas-settings',
diff --git a/src/views/cipp/CIPPSettings.js b/src/views/cipp/CIPPSettings.js
index 94e2e17f3897..55de4cd0580d 100644
--- a/src/views/cipp/CIPPSettings.js
+++ b/src/views/cipp/CIPPSettings.js
@@ -656,7 +656,7 @@ const ExcludedTenantsSettings = () => {
if (cell === 'delegatedAndGranularDelegetedAdminPrivileges') {
return