New-ActivityAlert
This cmdlet is available only in Security & Compliance PowerShell. For more information, see Security & Compliance PowerShell.
Note: Activity alerts have been effectively replaced by alert policies and the corresponding *-ProtectionAlert cmdlets. For more information about alert policies, see Alert policies in Microsoft 365.
Use the New-ActivityAlert cmdlet to create activity alerts. Activity alerts send email notifications when users perform specific activities in Microsoft 365.
For information about the parameter sets in the Syntax section below, see Exchange cmdlet syntax.
Syntax
New-ActivityAlert
-Multiplier <Double>
-Name <String>
-NotifyUser <MultiValuedProperty>
-Type <AlertType>
[-Operation <MultiValuedProperty>]
[-Category <AlertRuleCategory>]
[-Condition <String>]
[-Confirm]
[-Description <String>]
[-Disabled <Boolean>]
[-EmailCulture <CultureInfo>]
[-RecordType <AuditRecordType>]
[-ScopeLevel <AlertScopeLevel>]
[-Severity <RuleSeverity>]
[-UserId <MultiValuedProperty>]
[-WhatIf]
[<CommonParameters>]
New-ActivityAlert
-Name <String>
-NotifyUser <MultiValuedProperty>
-Threshold <Int32>
-TimeWindow <Int32>
-Type <AlertType>
[-Operation <MultiValuedProperty>]
[-Category <AlertRuleCategory>]
[-Condition <String>]
[-Confirm]
[-Description <String>]
[-Disabled <Boolean>]
[-EmailCulture <CultureInfo>]
[-RecordType <AuditRecordType>]
[-ScopeLevel <AlertScopeLevel>]
[-Severity <RuleSeverity>]
[-UserId <MultiValuedProperty>]
[-WhatIf]
[<CommonParameters>]
New-ActivityAlert
-Name <String>
-NotifyUser <MultiValuedProperty>
-Operation <MultiValuedProperty>
[-Type <AlertType>]
[-Category <AlertRuleCategory>]
[-Confirm]
[-Description <String>]
[-Disabled <Boolean>]
[-EmailCulture <CultureInfo>]
[-RecordType <AuditRecordType>]
[-Severity <RuleSeverity>]
[-UserId <MultiValuedProperty>]
[-WhatIf]
[<CommonParameters>]
Description
To use this cmdlet in Security & Compliance PowerShell, you need to be assigned permissions. For more information, see Permissions in the Microsoft Defender portal or Permissions in the Microsoft Purview compliance portal.
Examples
Example 1
New-ActivityAlert -Name "External Sharing Alert" -Operation sharinginvitationcreated -NotifyUser [email protected],[email protected] -UserId [email protected],[email protected] -Description "Notification for external sharing events by [email protected] and [email protected]"
This example creates a new activity alert named External Sharing Alert that has the following properties:
- Operation: sharinginvitationcreated.
- NotifyUser: [email protected] and [email protected].
- UserId: [email protected] and [email protected].
- Description: Notification for external sharing events by [email protected] and [email protected].
Parameters
-Category
The Category parameter specifies a category for the activity alert. Valid values are:
- None (This is the default value)
- DataLossPrevention
- ThreatManagement
- DataGovernance
- AccessGovernance
- Others
Type: | AlertRuleCategory |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Condition
The Condition parameter specifies filter conditions for event aggregation.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Confirm
The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on if the cmdlet requires confirmation before proceeding.
- Destructive cmdlets (for example, Remove-* cmdlets) have a built-in pause that forces you to acknowledge the command before proceeding. For these cmdlets, you can skip the confirmation prompt by using this exact syntax:
-Confirm:$false
. - Most other cmdlets (for example, New-* and Set-* cmdlets) don't have a built-in pause. For these cmdlets, specifying the Confirm switch without a value introduces a pause that forces you acknowledge the command before proceeding.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Description
The Description parameter specifies an optional description for the activity alert. If the value contains spaces, enclose the value in quotation marks (").
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Disabled
The Disabled parameter specifies whether the activity alert is enabled or disabled. Valid values are:
- $true: The activity alert is disabled.
- $false: The activity alert is enabled. This is the default value.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-EmailCulture
The EmailCulture parameter specifies the language of the notification email message.
Valid input for this parameter is a supported culture code value from the Microsoft .NET Framework CultureInfo class. For example, da-DK for Danish or ja-JP for Japanese. For more information, see CultureInfo Class.
Type: | CultureInfo |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Multiplier
The Multiplier parameter specifies the number of events that trigger an activity alert. The value of this parameter indicates a multiplier from a baseline value.
You can only use this parameter with the Type parameter value AnomalousAggregation.
Type: | Double |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Name
The Name parameter specifies the unique name of the activity alert. The maximum length is 64 characters. If the value contains spaces, enclose the value in quotation marks (").
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-NotifyUser
The NotifyUser parameter specifies the email addressesfor notification messages. You can specify internal and external email addresses.
You can enter multiple values separated by commas. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value1","Value2",..."ValueN"
.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Operation
The Operation parameter specifies the activity that triggers an activity alert.
A valid value for this parameter is an activity that's available in the Microsoft 365 audit log. For a description of these activities, see Audited activities.
You can enter multiple values separated by commas. If the values contain spaces or otherwise require quotation marks, use the following syntax: "Value1","Value2",..."ValueN"
.
You can't use this parameter if the Type parameter value is ElevationOfPrivilege.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-RecordType
The RecordType parameter specifies a record type label for the activity alert. For details about the available values, see AuditLogRecordType.
You can't use this parameter when the value of the Type parameter is ElevationOfPrivilege.
Type: | AuditRecordType |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-ScopeLevel
The ScopeLevel parameter specifies the scope for activity alerts that use the Type parameter values SimpleAggregation or AnomalousAggregation. Valid values are:
- SingleUser (This is the default value)
- AllUsers
Type: | AlertScopeLevel |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Severity
The Severity parameter specifies a severity level for the activity alert. Valid values are:
- None
- Low (This is the default value)
- Medium
- High
Type: | RuleSeverity |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Threshold
The Threshold parameter specifies the number of events that trigger an activity alert in the time interval that's specified by the TimeWindow parameter. The minimum value for this parameter is 3.
You can only use this parameter with the Type parameter value SimpleAggregation.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-TimeWindow
The TimeWindow parameter specifies the time window in minutes that's used by the Threshold parameter.
You can only use this parameter with the Type parameter value SimpleAggregation.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-Type
The Type parameter specifies the type alert. Valid values are:
- Custom: An alert is created for the activities you specify with the Operation parameter. Typically, you don't need to use this value (if you don't use the Type parameter, and you specify the activities with the Operations parameter, the value Custom is automatically added to the Type property).
- ElevationOfPrivilege: This value is being retired.
- SimpleAggregation: An alert is created based on the activities defined by the Operation and Condition parameters, the number of activities specified by the Threshold parameter, and the time period specified by the TimeWindow parameter.
- AnomalousAggregation: An alert is created based the activities defined by the Operation and Condition parameters, and the number of activities specified by the Multiplier parameter.
Note: You can't change the Type value in an existing activity alert.
Type: | AlertType |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-UserId
The UserId parameter specifies who you want to monitor.
- If you specify a user's email address, you'll receive an email notification when the user performs the specified activity. You can specify multiple email addresses separated by commas.
- If this parameter is blank ($null), you'll receive an email notification when any user in your organization performs the specified activity.
You can only use this parameter with the Type parameter values Custom or ElevationOfPrivilege.
Type: | MultiValuedProperty |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |
-WhatIf
The WhatIf switch doesn't work in Security & Compliance PowerShell.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Applies to: | Security & Compliance |