Skip to main content

Microsoft Graph Security

This Integration is part of the Microsoft Graph Security Pack.#

Unified gateway to security insights - all from a unified Microsoft Graph Security API. This integration was integrated and tested with version 1.0 of Microsoft Graph.

Authentication#

For more details about the authentication used in this integration, see Microsoft Integrations - Authentication
Note: The eDiscovery and Threat Assessment commands are only supported when using the Authorization Code flow with Delegated (work or school account) permission type.

Important Notes:#

  • Due to API limitations, the message-search-alerts command does not filter Office 365 provider alerts.\ For more information, see: https://github.com/microsoftgraph/security-api-solutions/issues/56.
  • When using Alerts V2, only the following properties are supported as filters for the Fetched incidents filter parameter and filter arguments: assignedTo, classification, determination, createdDateTime, lastUpdateDateTime, severity, serviceSource and status. See Microsoft optional query parameters.
  • As of July 2023, Microsoft Graph API does not support a solution to search for and delete emails. To do this, refer to the Security & Compliance integration.
  • When using Threat Assessment, only the following properties are supported as filters for filter parameter: expectedAssessment, ContentType ,status and requestSource.
  • When using Threat Assessment, for information protection, The following limits apply to any request on /informationProtection:
    • For email, the resource is a unique network message ID/recipient pair. For example, submitting an email with the same message ID sent to the same person multiple times in a 15 minutes period will trigger the limit per resource limits listed in the following table. However, you can submit up to 150 unique emails every 15 minutes (tenant limit).
    OperationLimit per tenantLimit per resource (email, URL, file)
    POST150 requests per 15 minutes and 10000 requests per 24 hours.1 request per 15 minutes and 3 requests per 24 hours.

Required Permissions#

Legacy Alerts:

  1. SecurityEvents.Read.All - Application (required for the commands: msg-search-alerts and msg-get-alert-details)
  2. SecurityEvents.ReadWrite.All - Application (required for updating alerts with the command: msg-update-alert)
  3. User.Read.All - Application (Only required if using the deprecated commands: msg-get-user and msg-get-users)
  4. SecurityIncident.Read.All - Delegated or Application (required for the command msg-list-security-incident)
  5. SecurityIncident.ReadWrite.All - Delegated or Application (required for the command msg-update-security-incident)
  6. ThreatHunting.Read.All - Delegated or Application (required for the command msg-advanced-hunting)

Alerts v2:

  1. SecurityAlert.Read.All - Application (required for the commands: msg-search-alerts and msg-get-alert-details)
  2. SecurityAlert.ReadWrite.All - Application (required for updating alerts with the commands: msg-update-alert and msg-create-alert-comment)

eDiscovery:

  1. eDiscovery.Read.All - Delegated (Required for the list-ediscovery commands)
  2. eDiscovery.ReadWrite.All - Delegated (Required for the create/update-ediscovery commands)

Threat Assessment:

  1. Mail.Read.Shared - Delegated
  2. ThreatAssessment.ReadWrite.All - Delegated
  3. User.Read.All - Delegated

Configure Microsoft Graph Security on Cortex XSOAR#

  1. Navigate to Settings > Integrations > Servers & Services.

  2. Search for Microsoft Graph Security.

  3. Click Add instance to create and configure a new integration instance.

    ParameterDescriptionRequired
    Host URLThe host URL.True
    MS graph security versionMS graph security API version.True
    Application ID or Client IDThe app registration ID.True
    Token or Tenant IDThe tenant ID.True
    Key or Client SecretThe app registration secret.False
    Authorization codeGet the authorization code from steps 3-5 in the self deployed authorization process.False
    Application redirect URI (for self-deployed mode)The app registration redirect URI.False
    Certificate ThumbprintUsed for certificate authentication, as it appears in the "Certificates & secrets" page of the app.False
    Private KeyUsed for certificate authentication. The private key of the registered certificate.False
    Use Azure Managed IdentitiesRelevant only if the integration is running on Azure VM. If selected, authenticates based on the value provided for the Azure Managed Identities Client ID field. If no value is provided for the Azure Managed Identities Client ID field, authenticates based on the System Assigned Managed Identity. For additional information, see the Help tab.False
    Azure Managed Identities Client IDThe Managed Identities client ID for authentication - relevant only if the integration is running on Azure VM.False
    Trust any certificate (not secure)Whether to trust any certificate. If True, not secure.False
    Use system proxy settingsWhether to use system proxy settings.False
    Use a self-deployed Azure applicationWhether to use a self-deployed application.False
    Fetch incidentsWhether to fetch incidents.False
    Incident typeThe incident type to apply.False
    First fetch timestamp (<number> <time unit>, e.g., 12 hours, 7 days)<number> <time unit>, for example 1 hour, 30 minutes.False
    Max incidents per fetchThe maximum number of incidents to fetch per iteration.False
    Fetch incidents of the given providers only.Relevant only for Legacy Alerts. Multiple providers can be inserted separated by a comma, for example "{first_provider},{second_provider}". If empty, incidents of all providers will be fetched.False
    Fetch incidents of the given service sources only.Relevant only for Alerts v2. Multiple serviceSource can be inserted separated by a comma, for example "microsoftDefenderForEndpoint,microsoftCloudAppSecurity",. If empty, incidents of all providers will be fetched.False
    Fetched incidents filterUse this field to filter fetched incidents according to any of the alert properties. Overrides the providers list, if given. Filter should be in the format "{property} eq '{property-value}'". Multiple filters can be applied separated with " and ", for example "createdDateTime eq YYYY-MM-DD and severity eq 'high'".False
    Microsoft 365 Defender contextCheck to save the hunt query result to also in the Microsoft 365 Defender context path.False
  4. Click Test to validate the URLs, token, and connection.

Commands#

You can execute these commands from the Cortex XSOAR CLI, as part of an automation, or in a playbook. After you successfully execute a command, a DBot message appears in the War Room with the command details.

msg-auth-test#


Tests connectivity to Microsoft Graph Security.

Base Command#

msg-auth-test

Input#

Argument NameDescriptionRequired
permission_typeWhich permissions the integration should have. Possible values are: ediscovery, alerts, alerts, ediscovery. Default is ediscovery.Optional

Context Output#

There is no context output for this command.

Command example#

!msg-auth-test permission_type=ediscovery

Human Readable Output#

Authentication was successful.

msg-search-alerts#


List alerts (security issues) within a customer's tenant that Microsoft or partner security solutions have identified.

Base Command#

msg-search-alerts

Input#

Argument NameDescriptionRequired
last_modifiedWhen the alert was last modified in the following string format - YYYY-MM-DD. Possible values are: Last24Hours, Last48Hours, LastWeek.Optional
severityAlert severity - set by vendor/provider. Possible values are: unknown, informational, low, medium, high.Optional
categoryCategory of the alert, e.g., credentialTheft, ransomware (Categories can be added or removed by vendors.).Optional
time_fromThe start time (creation time of alert) for the search in the following string format - YYYY-MM-DD.Optional
time_toThe end time (creation time of alert) for the search in the following string format - YYYY-MM-DD.Optional
filterUse this field to filter on any of the alert properties in the format "{property} eq '{property-value}'", e.g. "category eq 'ransomware'".Optional
classificationRelevant only for Alerts v2. Use this field to filter by alert's classification. Possible values are: unknown, truePositive, falsePositive, benignPositive.Optional
service_sourceRelevant only for Alerts v2. Use this field to filter the alerts by the service or product that created this alert. Possible values are: microsoftDefenderForEndpoint, microsoftDefenderForIdentity, microsoftDefenderForOffice365, microsoft365Defender, microsoftAppGovernance, microsoftDefenderForCloudApps.Optional
statusRelevant only for Alerts v2. Use this field to filter by alert's status. Possible values are: unknown, new, inProgress, resolved.Optional
pagePage number to return, zero indexed. The maximum number of alerts that can be skipped for Legacy Alerts is 500 (i.e., page * page_size must be <= 500).Optional
page_sizeNumber of results in a page. Default is 50, the limit for Legacy Alerts is 1000, the limit for Alerts v2 is 2000. When using Legacy Alerts, the response will provide <page_size> results for each provider.Optional
limitNumber of total results to return. Default is 50. Default is 50.Optional

Context Output#

PathTypeDescription
MsGraph.Alert.IDstringAlert ID.
MsGraph.Alert.TitlestringAlert title.
MsGraph.Alert.CategorystringAlert category.
MsGraph.Alert.SeveritystringAlert severity.
MsGraph.Alert.CreatedDatedateAlert created date.
MsGraph.Alert.EventDatedateRelevant only for Legacy Alerts. Alert event time.
MsGraph.Alert.StatusstringAlert status.
MsGraph.Alert.VendorstringRelevant only for Legacy Alerts. Alert vendor.
MsGraph.Alert.MalwareStatesstringRelevant only for Legacy Alerts. Alert malware states.
MsGraph.Alert.ProviderstringRelevant only for Legacy Alerts. Alert provider.
MsGraph.Alert.ActorDisplayNameUnknownRelevant only for Alerts v2. Alert actor name.
MsGraph.Alert.AlertWebUrlStringRelevant only for Alerts v2. Alert web URL.
MsGraph.Alert.AssignedToUnknownRelevant only for Alerts v2. Alert assignee.
MsGraph.Alert.ClassificationUnknownRelevant only for Alerts v2. Alert classification.
MsGraph.Alert.DescriptionStringRelevant only for Alerts v2. Alert description.
MsGraph.Alert.DetectionSourceStringRelevant only for Alerts v2. Alert detection source.
MsGraph.Alert.DetectorIdStringRelevant only for Alerts v2. Alert detector ID.
MsGraph.Alert.DeterminationUnknownRelevant only for Alerts v2. Alert determination.
MsGraph.Alert.Evidence.@odata.TypeStringRelevant only for Alerts v2. Alert evidence.
MsGraph.Alert.Evidence.AzureAdDeviceIdStringRelevant only for Alerts v2. Evidence Azure device ID.
MsGraph.Alert.Evidence.CreatedDateDateRelevant only for Alerts v2. Evidence creation time.
MsGraph.Alert.Evidence.DefenderAvStatusStringRelevant only for Alerts v2. Evidence Defender AV status.
MsGraph.Alert.Evidence.DeviceDnsNameStringRelevant only for Alerts v2. Evidence device DNS name.
MsGraph.Alert.Evidence.FirstSeenDateTimeDateRelevant only for Alerts v2. Evidence first seen time.
MsGraph.Alert.Evidence.HealthStatusStringRelevant only for Alerts v2. Evidence health status.
MsGraph.Alert.Evidence.MdeDeviceIdStringRelevant only for Alerts v2. Evidence MDE device ID.
MsGraph.Alert.Evidence.OnboardingStatusStringRelevant only for Alerts v2. Evidence onboarding status.
MsGraph.Alert.Evidence.OsBuildNumberRelevant only for Alerts v2. Evidence OS build.
MsGraph.Alert.Evidence.OsPlatformStringRelevant only for Alerts v2. Evidence OS platform.
MsGraph.Alert.Evidence.RbacGroupIdNumberRelevant only for Alerts v2. Evidence RBAC group ID.
MsGraph.Alert.Evidence.RbacGroupNameStringRelevant only for Alerts v2. Evidence RBAC group name.
MsGraph.Alert.Evidence.RemediationStatusStringRelevant only for Alerts v2. Evidence remediation status.
MsGraph.Alert.Evidence.RemediationStatusDetailsUnknownRelevant only for Alerts v2. Evidence remediation status details.
MsGraph.Alert.Evidence.RiskScoreStringRelevant only for Alerts v2. Evidence risk score.
MsGraph.Alert.Evidence.TagsStringRelevant only for Alerts v2. Evidence tags.
MsGraph.Alert.Evidence.VerdictStringRelevant only for Alerts v2. Evidence verdict.
MsGraph.Alert.Evidence.VersionStringRelevant only for Alerts v2. Evidence version.
MsGraph.Alert.Evidence.VmMetadataUnknownRelevant only for Alerts v2. Evidence VM metadata.
MsGraph.Alert.FirstActivityDateTimeDateRelevant only for Alerts v2. Evidence first activity time.
MsGraph.Alert.IncidentIdStringRelevant only for Alerts v2. Alert incident ID.
MsGraph.Alert.IncidentWebUrlStringRelevant only for Alerts v2. Alert incident URL.
MsGraph.Alert.LastActivityDateTimeDateRelevant only for Alerts v2. Alert last activity time.
MsGraph.Alert.LastUpdateDateTimeDateRelevant only for Alerts v2. Alert last update time.
MsGraph.Alert.ProviderAlertIdStringRelevant only for Alerts v2. Alert provider ID.
MsGraph.Alert.RecommendedActionsStringRelevant only for Alerts v2. Alert recommended action.
MsGraph.Alert.ResolvedDateTimeDateRelevant only for Alerts v2. Alert closing time.
MsGraph.Alert.ServiceSourceStringRelevant only for Alerts v2. Alert service source.
MsGraph.Alert.TenantIdStringRelevant only for Alerts v2. Alert tenant ID.
MsGraph.Alert.ThreatDisplayNameUnknownRelevant only for Alerts v2. Alert threat display name.
MsGraph.Alert.ThreatFamilyNameUnknownRelevant only for Alerts v2. Alert threat family name.

Human Readable Output#

Using Legacy Alerts:#

Microsoft Security Graph Alerts#

IDVendorProviderTitleCategorySeverityCreatedDateEventDateStatus
idMicrosoftIPCAtypical travelImpossibleTravelhigh2023-03-30T20:45:14.259Z2023-03-30T15:07:21.4705248ZnewAlert

Using Alerts v2:#

Microsoft Security Graph Alerts#

IDIncidentIdStatusSeverityDetectionSourceServiceSourceTitleCategoryCreatedDateLastUpdateDateTime
id<incident_id>newmediumcustomTimicrosoftDefenderForEndpointtest alertNone2022-10-03T03:39:21.7562976Z2023-04-17T11:01:31.7566667Z

msg-get-alert-details#


Get details for a specific alert.

Base Command#

msg-get-alert-details

Input#

Argument NameDescriptionRequired
alert_idThe alert ID - Provider-generated GUID/unique identifier.Required
fields_to_includeRelevant only for Legacy Alerts. Fields to fetch for a specified alert apart from the basic properties, given as comma separated values, e.g., NetworkConnections,Processes. The possible values are: All, NetworkConnections, Processes, RegistryKeys, UserStates, HostStates, FileStates, CloudAppStates, MalwareStates, CustomerComments, Triggers, VendorInformation, VulnerabilityStates. Default is All.Optional

Context Output#

PathTypeDescription
MsGraph.Alert.IDstringAlert ID.
MsGraph.Alert.TitlestringAlert title.
MsGraph.Alert.CategorystringAlert category.
MsGraph.Alert.SeveritystringAlert severity.
MsGraph.Alert.CreatedDatedateRelevant only for Legacy Alerts. Alert created date.
MsGraph.Alert.EventDatedateRelevant only for Legacy Alerts. Alert event time.
MsGraph.Alert.StatusstringAlert status.
MsGraph.Alert.VendorstringRelevant only for Legacy Alerts. Alert vendor.
MsGraph.Alert.ProviderstringRelevant only for Legacy Alerts. Alert provider.
MsGraph.Alert.@odata.ContextStringRelevant only for Alerts v2. Alert odata context.
MsGraph.Alert.ActorDisplayNameUnknownRelevant only for Alerts v2. Alert actor name.
MsGraph.Alert.AlertWebUrlStringRelevant only for Alerts v2. Alert web URL.
MsGraph.Alert.AssignedToUnknownRelevant only for Alerts v2. Alert assignee.
MsGraph.Alert.ClassificationUnknownRelevant only for Alerts v2. Alert classification.
MsGraph.Alert.Comments.CommentStringRelevant only for Alerts v2. Alert comment.
MsGraph.Alert.Comments.CreatedByDisplayNameStringRelevant only for Alerts v2. Alert comment creator name.
MsGraph.Alert.Comments.CreatedDateDateRelevant only for Alerts v2. Alert comment creation time.
MsGraph.Alert.CreatedDateDateRelevant only for Alerts v2. Alert creation time.
MsGraph.Alert.DescriptionStringRelevant only for Alerts v2. Alert description.
MsGraph.Alert.DetectionSourceStringRelevant only for Alerts v2. Alert detection source.
MsGraph.Alert.DetectorIdStringRelevant only for Alerts v2. Alert detector ID.
MsGraph.Alert.DeterminationUnknownRelevant only for Alerts v2. Alert determination.
MsGraph.Alert.Evidence.@odata.TypeStringRelevant only for Alerts v2. Alert evidence.
MsGraph.Alert.Evidence.CreatedDateDateRelevant only for Alerts v2. Evidence creation time.
MsGraph.Alert.Evidence.DetectionStatusUnknownRelevant only for Alerts v2. Evidence detection status.
MsGraph.Alert.Evidence.ImageFile.FileNameStringRelevant only for Alerts v2. Evidence image file name.
MsGraph.Alert.Evidence.ImageFile.FilePathStringRelevant only for Alerts v2. Evidence image file path.
MsGraph.Alert.Evidence.ImageFile.FilePublisherUnknownRelevant only for Alerts v2. Evidence image file publisher.
MsGraph.Alert.Evidence.ImageFile.FileSizeUnknownRelevant only for Alerts v2. Evidence image file size.
MsGraph.Alert.Evidence.ImageFile.IssuerUnknownRelevant only for Alerts v2. Evidence image file issuer.
MsGraph.Alert.Evidence.ImageFile.Sha1StringRelevant only for Alerts v2. Evidence image file SHA1 hash.
MsGraph.Alert.Evidence.ImageFile.Sha256StringRelevant only for Alerts v2. Evidence image file SHA256 hash.
MsGraph.Alert.Evidence.ImageFile.SignerUnknownRelevant only for Alerts v2. Evidence image file signer.
MsGraph.Alert.Evidence.MdeDeviceIdUnknownRelevant only for Alerts v2. Evidence MDE device ID.
MsGraph.Alert.Evidence.ParentProcessCreationDateTimeDateRelevant only for Alerts v2. Evidence parent process creation time.
MsGraph.Alert.Evidence.ParentProcessIdNumberRelevant only for Alerts v2. Evidence parent process process ID.
MsGraph.Alert.Evidence.ParentProcessImageFileUnknownRelevant only for Alerts v2. Evidence parent process image file.
MsGraph.Alert.Evidence.ProcessCommandLineStringRelevant only for Alerts v2. Evidence process command line.
MsGraph.Alert.Evidence.ProcessCreationDateTimeDateRelevant only for Alerts v2. Evidence process creation time.
MsGraph.Alert.Evidence.ProcessIdNumberRelevant only for Alerts v2. Evidence process ID.
MsGraph.Alert.Evidence.RemediationStatusStringRelevant only for Alerts v2. Evidence remediation status.
MsGraph.Alert.Evidence.RemediationStatusDetailsUnknownRelevant only for Alerts v2. Evidence remediation status details.
MsGraph.Alert.Evidence.UserAccount.AccountNameStringRelevant only for Alerts v2. Evidence user account name.
MsGraph.Alert.Evidence.UserAccount.AzureAdUserIdUnknownRelevant only for Alerts v2. Evidence user account Azure AD user ID.
MsGraph.Alert.Evidence.UserAccount.DisplayNameStringRelevant only for Alerts v2. Evidence user account display name.
MsGraph.Alert.Evidence.UserAccount.DomainNameUnknownRelevant only for Alerts v2. Evidence user account domain name.
MsGraph.Alert.Evidence.UserAccount.UserPrincipalNameUnknownRelevant only for Alerts v2. Evidence user account user principal name.
MsGraph.Alert.Evidence.UserAccount.UserSidStringRelevant only for Alerts v2. Evidence user account user SID.
MsGraph.Alert.Evidence.VerdictStringRelevant only for Alerts v2. Evidence verdict.
MsGraph.Alert.Evidence.FileDetails.FileNameStringRelevant only for Alerts v2. Evidence file details file name.
MsGraph.Alert.Evidence.FileDetails.FilePathStringRelevant only for Alerts v2. Evidence file details file path.
MsGraph.Alert.Evidence.FileDetails.FilePublisherUnknownRelevant only for Alerts v2. Evidence file details file publisher.
MsGraph.Alert.Evidence.FileDetails.FileSizeUnknownRelevant only for Alerts v2. Evidence file details file size.
MsGraph.Alert.Evidence.FileDetails.IssuerUnknownRelevant only for Alerts v2. Evidence file details file issuer.
MsGraph.Alert.Evidence.FileDetails.Sha1StringRelevant only for Alerts v2. Evidence file details SHA1 hash.
MsGraph.Alert.Evidence.FileDetails.Sha256StringRelevant only for Alerts v2. Evidence file details SHA256 hash.
MsGraph.Alert.Evidence.FileDetails.SignerUnknownRelevant only for Alerts v2. Evidence file details file signer.
MsGraph.Alert.Evidence.CֹountryLetterCodeUnknownRelevant only for Alerts v2. Evidence country letter code.
MsGraph.Alert.Evidence.IpAddressStringRelevant only for Alerts v2. Evidence IP address.
MsGraph.Alert.Evidence.AzureAdDeviceIdUnknownRelevant only for Alerts v2. Evidence Azure AD device ID.
MsGraph.Alert.Evidence.DefenderAvStatusStringRelevant only for Alerts v2. Evidence Defender AV status.
MsGraph.Alert.Evidence.DeviceDnsNameStringRelevant only for Alerts v2. Evidence device DNS name.
MsGraph.Alert.Evidence.FirstSeenDateTimeDateRelevant only for Alerts v2. Evidence first seen time.
MsGraph.Alert.Evidence.HealthStatusStringRelevant only for Alerts v2. Evidence health status.
MsGraph.Alert.Evidence.OnboardingStatusStringRelevant only for Alerts v2. Evidence onboarding status.
MsGraph.Alert.Evidence.OsBuildUnknownRelevant only for Alerts v2. Evidence OS build.
MsGraph.Alert.Evidence.OsPlatformStringRelevant only for Alerts v2. Evidence OS platform.
MsGraph.Alert.Evidence.RbacGroupIdNumberRelevant only for Alerts v2. Evidence RBAC group ID.
MsGraph.Alert.Evidence.RbacGroupNameStringRelevant only for Alerts v2. Evidence RBAC group name.
MsGraph.Alert.Evidence.RiskScoreStringRelevant only for Alerts v2. Evidence risk score.
MsGraph.Alert.Evidence.VersionStringRelevant only for Alerts v2. Evidence version.
MsGraph.Alert.Evidence.VmMetadataUnknownRelevant only for Alerts v2. Evidence VM metadata.
MsGraph.Alert.FirstActivityDateTimeDateRelevant only for Alerts v2. Evidence first activity time.
MsGraph.Alert.IncidentIdStringRelevant only for Alerts v2. Alert incident ID.
MsGraph.Alert.IncidentWebUrlStringRelevant only for Alerts v2. Alert incident URL.
MsGraph.Alert.LastActivityDateTimeDateRelevant only for Alerts v2. Alert last activity time.
MsGraph.Alert.LastUpdateDateTimeDateRelevant only for Alerts v2. Alert last update time.
MsGraph.Alert.ProviderAlertIdStringRelevant only for Alerts v2. Alert provider ID.
MsGraph.Alert.RecommendedActionsStringRelevant only for Alerts v2. Alert recommended action.
MsGraph.Alert.ResolvedDateTimeDateRelevant only for Alerts v2. Alert closing time.
MsGraph.Alert.ServiceSourceStringRelevant only for Alerts v2. Alert service source.
MsGraph.Alert.TenantIdStringRelevant only for Alerts v2. Alert tenant ID.
MsGraph.Alert.ThreatDisplayNameUnknownRelevant only for Alerts v2. Alert threat display name.
MsGraph.Alert.ThreatFamilyNameUnknownRelevant only for Alerts v2. Alert threat family name.

Human Readable Output#

Using Legacy Alerts:#

Microsoft Security Graph Alerts#

Microsoft Security Graph Alert Details - <alert_id>#

Basic Properties#

AzureTenantIDCategoryCreatedDateDescriptionEventDateLastModifiedDateSeverityStatusTitle
<azure_tenant_id>None2022-10-03T03:39:21.7562976ZCreated for test2022-09-26T05:01:02.839216Z2022-09-26T05:01:02.839216ZmediumnewAlerttest alert

Customer Provided Comments for Alert#

  • comment
  • comment

File Security States for Alert#

FileHashNamePath
<file_hash>crond/usr/sbin

Host Security States for Alert#

FqdnOSPrivateIPAddressPublicIPAddressRiskScore
<fqdn>CentOS<private_ip_address><public_ip_address>medium

User Security States for Alert#

AccountNameEmailRole
rootunknown

Vendor Information for Alert#

ProviderSubProviderVendor
Microsoft Defender ATPMicrosoftDefenderATPMicrosoft

Using Alerts v2:#

Microsoft Security Graph Alerts#

Microsoft Security Graph Alert Details - <alert_id>#

IDIncidentIdStatusSeverityDetectionSourceServiceSourceTitleCategoryCreatedDateLastUpdateDateTime
<alert_id><incident_id>newmediumcustomTimicrosoftDefenderForEndpointtest alertNone2022-10-03T03:39:21.7562976Z2023-04-17T11:01:31.7566667Z

msg-update-alert#


Update an editable alert property within any integrated solution to keep alert status and assignments in sync across solutions using its reference ID.

Base Command#

msg-update-alert

Input#

Argument NameDescriptionRequired
alert_idThe Alert ID. Provider-generated GUID/unique identifier.Required
assigned_toName of the analyst the alert is assigned to for triage, investigation, or remediation.Optional
closed_date_timeRelevant only for Legacy Alerts. Time the alert was closed in the string format MM/DD/YYYY.Optional
commentsRelevant only for Legacy Alerts. Analyst comments on the alert (for customer alert management).Optional
feedbackRelevant only for Legacy Alerts. Analyst feedback on the alert. Possible values are: unknown, truePositive, falsePositive, benignPositive.Optional
statusAlert lifecycle status (stage). Possible values are: unknown, newAlert, inProgress, resolved, new.Optional
tagsRelevant only for Legacy Alerts. User-definable labels that can be applied to an alert and can serve as filter conditions, for example "HVA", "SAW).Optional
vendor_informationRelevant only for Legacy Alerts. Details about the security service vendor, for example Microsoft.Optional
provider_informationRelevant only for Legacy Alerts. Details about the security service vendor, for example Windows Defender ATP.Optional
classificationRelevant only for Alerts v2. Use this field to update the alert's classification. Possible values are: unknown, truePositive, falsePositive, informationalExpectedActivity.Optional
determinationRelevant only for Alerts v2. Use this field to update the alert's determination. Possible values are: unknown, malware, phishing, other, securityTesting, multiStagedAttack, maliciousUserActivity, lineOfBusinessApplication, unwantedSoftware.Optional

Context Output#

PathTypeDescription
MsGraph.Alert.IDstringAlert ID.
MsGraph.Alert.StatusstringAlert status, will appear only if changed.

Human Readable Output#

Alert <alert_id> has been successfully updated.

msg-create-alert-comment#


Relevant only for Alerts v2, create a comment for an existing alert.

Base Command#

msg-create-alert-comment

Input#

Argument NameDescriptionRequired
alert_idThe Alert ID - Provider-generated GUID/unique identifier.Required
commentThe comment to add to each alert.Required

Context Output#

PathTypeDescription
MsGraph.AlertComment.IDStringThe alert ID that the comment was added to.
MsGraph.AlertComment.Comments.CommentStringThe comment itself
MsGraph.AlertComment.Comments.CreatedByDisplayNameStringThe comment's creator display name
MsGraph.AlertComment.Comments.CreatedDateDateThe comment's creation time

Human Readable Output#

Microsoft Security Graph Create Alert Comment - <alert_id>#

commentcreatedByDisplayNamecreatedDate
commentCortex XSOAR MS Graph Dev2023-04-17T10:57:18.5231438Z
commentCortex XSOAR MS Graph Dev2023-04-17T11:01:31.7427859Z
commentCortex XSOAR MS Graph Dev2023-04-17T13:30:22.3995128Z

ms-graph-security-auth-reset#


Run this command if for some reason you need to rerun the authentication process.

Base Command#

ms-graph-security-auth-reset

Input#

There are no input arguments for this command.

Context Output#

There is no context output for this command.

eDiscovery Commands#

msg-list-ediscovery-cases#


Lists edicovery cases.

Base Command#

msg-list-ediscovery-cases

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case. If provided, only this id will be returned.Optional
limitThe maximum number of results to return. Default is 50.Optional
all_resultsShow all results if true. Possible values are: true, false.Optional

Context Output#

PathTypeDescription
MsGraph.eDiscoveryCase.CaseIdStringThe ID of the eDiscovery case.
MsGraph.eDiscoveryCase.CaseStatusStringThe case status. Possible values are: unknown, active, pendingDelete, closing, closed, and closedWithError.
MsGraph.eDiscoveryCase.CreatedDateTimeDateThe date and time when the entity was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z
MsGraph.eDiscoveryCase.DescriptionStringThe case description.
MsGraph.eDiscoveryCase.DisplayNameStringThe case name.
MsGraph.eDiscoveryCase.ExternalIdStringThe external case number for customer reference.
MsGraph.eDiscoveryCase.LastModifiedDateTimeDateThe latest date and time when the case was modified. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z
MsGraph.eDiscoveryCase.ClosedBy.User.DisplayNameStringThe user who closed the case.
MsGraph.eDiscoveryCase.LastModifiedBy.User.DisplayNameStringThe user who last modified the case.
MsGraph.eDiscoveryCase.ClosedDateTimeDateThe date and time when the case was closed. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z

Command example#

!msg-list-ediscovery-cases limit=5

Context Example#

{
"MsGraph": {
"eDiscoveryCase": [
{
"CaseId": "06386565-47d4-410b-96f9-007978319c02",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-18T10:55:12.63Z",
"Description": "",
"DisplayName": "a",
"ExternalId": "123",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-20T12:25:05.797Z"
},
{
"CaseId": "44bbe68b-0da1-42b4-9ad0-00e8b52f64e2",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-18T11:59:33.44Z",
"Description": "",
"DisplayName": "asassdda",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-18T11:59:33.44Z"
},
{
"CaseId": "f108b7fa-d177-438e-9679-01cd79e3df3f",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-20T07:08:01.95Z",
"Description": "wrking",
"DisplayName": "justw orkok?",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-20T07:08:01.95Z"
},
{
"CaseId": "f346c6f5-1d66-4fab-a46b-0abc99c2cef0",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-18T11:54:59.873Z",
"Description": "",
"DisplayName": "asasdda",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-18T11:54:59.873Z"
},
{
"CaseId": "1a346a94-5220-46ae-a821-0bbbadf4009d",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-12T07:05:27.557Z",
"Description": "Test Case 104 description",
"DisplayName": "Test Case 104",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-12T07:05:27.557Z"
}
]
}
}

Human Readable Output#

Results:#

Display NameDescriptionExternal IdCase StatusCase IdCreated Date TimeLast Modified Date TimeLast Modified By Name
a123active06386565-47d4-410b-96f9-007978319c022023-06-18T10:55:12.63Z2023-06-20T12:25:05.797ZContent Test
asassddaactive44bbe68b-0da1-42b4-9ad0-00e8b52f64e22023-06-18T11:59:33.44Z2023-06-18T11:59:33.44ZContent Test
justw orkok?wrkingactivef108b7fa-d177-438e-9679-01cd79e3df3f2023-06-20T07:08:01.95Z2023-06-20T07:08:01.95ZContent Test
asasddaactivef346c6f5-1d66-4fab-a46b-0abc99c2cef02023-06-18T11:54:59.873Z2023-06-18T11:54:59.873ZContent Test
Test Case 104Test Case 104 descriptionactive1a346a94-5220-46ae-a821-0bbbadf4009d2023-06-12T07:05:27.557Z2023-06-12T07:05:27.557ZContent Test

msg-create-ediscovery-case#


Create a new eDiscovery case. This command only creates an eDiscovery (Premium) case using the new case format. To learn more about the new case format in eDiscovery, see https://learn.microsoft.com/en-us/microsoft-365/compliance/advanced-ediscovery-new-case-format.

Base Command#

msg-create-ediscovery-case

Input#

Argument NameDescriptionRequired
display_nameThe name of the eDiscovery case.Required
descriptionThe case description.Optional
external_idThe external case number for customer reference.Optional

Context Output#

PathTypeDescription
MsGraph.eDiscoveryCase.CaseIdStringThe ID of the eDiscovery case.
MsGraph.eDiscoveryCase.CaseStatusStringThe case status. Possible values are unknown, active, pendingDelete, closing, closed, and closedWithError.
MsGraph.eDiscoveryCase.CreatedDateTimeDateThe date and time when the entity was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z
MsGraph.eDiscoveryCase.DescriptionStringThe case description.
MsGraph.eDiscoveryCase.DisplayNameStringThe case name.
MsGraph.eDiscoveryCase.ExternalIdStringThe external case number for customer reference.
MsGraph.eDiscoveryCase.LastModifiedDateTimeDateThe latest date and time when the case was modified. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z

Command example#

``!msg-create-ediscovery-case display_name=my case name11234 external_id=123 description=description of the case````

Context Example#

{
"MsGraph": {
"eDiscoveryCase": {
"CaseId": "6dfd17fe-43c5-411f-a194-abdc9492bfa0",
"CaseStatus": "active",
"CreatedDateTime": "2023-07-06T07:42:34.897Z",
"Description": "description of the case",
"DisplayName": "my case name11234",
"ExternalId": "123",
"LastModifiedDateTime": "2023-07-06T07:42:34.897Z"
}
}
}

Human Readable Output#

Results:#

Display NameDescriptionExternal IdCase StatusCase IdCreated Date TimeLast Modified Date Time
my case name11234description of the case123active6dfd17fe-43c5-411f-a194-abdc9492bfa02023-07-06T07:42:34.897Z2023-07-06T07:42:34.897Z

msg-update-ediscovery-case#


Update an eDiscovery case.

Base Command#

msg-update-ediscovery-case

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
display_nameThe name of the eDiscovery case.Required
descriptionThe case description.Optional
external_idThe external case number for customer reference.Optional

Context Output#

There is no context output for this command.

Command example#

``!msg-update-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0 display_name=new display name external_id=123 description=new description of the case````

Human Readable Output#

Case with id 6dfd17fe-43c5-411f-a194-abdc9492bfa0 was updated successfully.

msg-close-ediscovery-case#


Close an eDiscovery case. When the legal case or investigation supported by a eDiscovery (Standard) case is completed, you can close the case. Here's what happens when you close a case: If the case contains any eDiscovery holds, they'll be turned off. After the hold is turned off, a 30-day grace period (called a delay hold) is applied to content locations that were on hold. This helps prevent content from being immediately deleted and provides admins the opportunity to search for and restore content before it may be permanently deleted after the delay hold period expires. For more information, see Removing content locations from an eDiscovery hold. Closing a case only turns off the holds that are associated with that case. If other holds are placed on a content location (such as a Litigation Hold, a retention policy, or a hold from a different eDiscovery (Standard) case) those holds will still be maintained. The case is still listed on the eDiscovery (Standard) page in the Microsoft Purview compliance portal. The details, holds, searches, and members of a closed case are retained. You can edit a case after it's closed. For example, you can add or remove members, create searches, and export search results. The primary difference between active and closed cases is that eDiscovery holds are turned off when a case is closed.

Base Command#

msg-close-ediscovery-case

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required

Context Output#

There is no context output for this command.

Command example#

!msg-close-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0

Human Readable Output#

Case with id 6dfd17fe-43c5-411f-a194-abdc9492bfa0 was closed successfully.

msg-reopen-ediscovery-case#


Reopen an eDiscovery case. When you reopen an eDiscovery (Premium) case, any holds that were in place when the case was closed won't be automatically reinstated. After the case is reopened, you'll have to go to the Holds tab and turn on the previous holds. To turn on a hold, select it to display the flyout page, and then set the Status toggle to On.

Base Command#

msg-reopen-ediscovery-case

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required

Context Output#

There is no context output for this command.

Command example#

!msg-reopen-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0

Human Readable Output#

Case with id 6dfd17fe-43c5-411f-a194-abdc9492bfa0 was reopened successfully.

msg-delete-ediscovery-case#


Delete an eDiscovery case. Before you can delete a case, you must first delete all holds listed on the holds page of the case. That includes deleting holds with a status of Off. Default hold policies can only be deleted when the hold is turned off. You must close an active case to turn off any default hold policies in the case. Once the holds are turned off for default hold policies, they can be deleted.

Base Command#

msg-delete-ediscovery-case

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required

Context Output#

There is no context output for this command.

Command example#

!msg-delete-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0

Human Readable Output#

Case was deleted successfully.

msg-create-ediscovery-custodian#


Create a new ediscoveryCustodian object. After the custodian object is created, you will need to create the custodian's userSource to reference their mailbox and OneDrive for Business site.

Base Command#

msg-create-ediscovery-custodian

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
emailCustodian's primary SMTP address.Required

Context Output#

PathTypeDescription
MsGraph.eDiscoveryCustodian.CreatedDateTimeDateDate and time when the custodian was added to the case.
MsGraph.eDiscoveryCustodian.CustodianIdStringThe ID for the custodian in the specified case. Read-only.
MsGraph.eDiscoveryCustodian.CustodianStatusStringStatus of the custodian. Possible values are: active, released.
MsGraph.eDiscoveryCustodian.DisplayNameStringDisplay name of the custodian.
MsGraph.eDiscoveryCustodian.EmailStringEmail address of the custodian.
MsGraph.eDiscoveryCustodian.HoldStatusStringThe hold status of the custodian.The possible values are: notApplied, applied, applying, removing, partial.
MsGraph.eDiscoveryCustodian.LastModifiedDateTimeDateDate and time the custodian object was last modified.

Command example#

!msg-create-ediscovery-custodian case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 email=testbox2@yoursite.onmicrosoft.com

Context Example#

{
"MsGraph": {
"eDiscoveryCustodian": {
"CreatedDateTime": "2023-07-06T07:53:36.9441479Z",
"CustodianId": "0af7ca2b84bc4cff930d5d301cc4caf3",
"CustodianStatus": "active",
"DisplayName": "testbox2",
"Email": "yourmail@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T07:53:36.9441479Z"
}
}
}

Human Readable Output#

Results:#

Display NameEmailCustodian StatusCustodian IdCreated Date TimeLast Modified Date TimeHold Status
testbox2yourmail@yoursite.onmicrosoft.comactive0af7ca2b84bc4cff930d5d301cc4caf32023-07-06T07:53:36.9441479Z2023-07-06T07:53:36.9441479ZnotApplied

msg-list-ediscovery-custodians#


List custodians on a given eDiscovery case.

Base Command#

msg-list-ediscovery-custodians

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the custodian on the given eDiscovery case. If provided, only this ID will be returned.Optional
limitNumber of total results to return. Default is 50.Optional
all_resultsShow all results if true. Possible values are: true, false.Optional

Context Output#

PathTypeDescription
MsGraph.eDiscoveryCustodian.CreatedDateTimeDateDate and time when the custodian was added to the case.
MsGraph.eDiscoveryCustodian.CustodianIdStringThe ID for the custodian in the specified case. Read-only.
MsGraph.eDiscoveryCustodian.CustodianStatusStringStatus of the custodian. Possible values are: active, released.
MsGraph.eDiscoveryCustodian.DisplayNameStringDisplay name of the custodian.
MsGraph.eDiscoveryCustodian.EmailStringEmail address of the custodian.
MsGraph.eDiscoveryCustodian.HoldStatusStringThe hold status of the custodian. The possible values are: notApplied, applied, applying, removing, partial.
MsGraph.eDiscoveryCustodian.LastModifiedDateTimeDateDate and time the custodian object was last modified.
MsGraph.eDiscoveryCustodian.ReleasedDateTimeDateDate and time the custodian was released from the case.

Command example#

!msg-list-ediscovery-custodians all_results=true case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Context Example#

{
"MsGraph": {
"eDiscoveryCustodian": {
"CreatedDateTime": "2023-07-06T07:53:36.9441479Z",
"CustodianId": "0af7ca2b84bc4cff930d5d301cc4caf3",
"CustodianStatus": "active",
"DisplayName": "testbox2",
"Email": "mail@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T07:53:36.9441479Z"
}
}
}

Human Readable Output#

Results:#

Display NameEmailCustodian StatusCustodian IdCreated Date TimeLast Modified Date TimeHold Status
testbox2mail@yoursite.onmicrosoft.comactive0af7ca2b84bc4cff930d5d301cc4caf32023-07-06T07:53:36.9441479Z2023-07-06T07:53:36.9441479ZnotApplied

msg-activate-ediscovery-custodian#


Activate a custodian that has been released from a case to make them part of the case again. For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/ediscovery-manage-new-custodians?view=o365-worldwide#re-activate-custodian.

Base Command#

msg-activate-ediscovery-custodian

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the eDiscovery case. on the given eDiscovery case.Required

Context Output#

There is no context output for this command.

Command example#

!msg-activate-ediscovery-custodian custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Human Readable Output#

Custodian with id 0af7ca2b84bc4cff930d5d301cc4caf3 Case was reactivated on case with id 84abfff1-dd69-4559-8f4e-8225e0d505c5 successfully.

msg-release-ediscovery-custodian#


Release a custodian from a case. For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/manage-new-custodians#release-a-custodian-from-a-case.

Base Command#

msg-release-ediscovery-custodian

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the eDiscovery case. on the given eDiscovery case.Required

Context Output#

There is no context output for this command.

Command example#

!msg-release-ediscovery-custodian custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Human Readable Output#

Custodian with id 0af7ca2b84bc4cff930d5d301cc4caf3 was released from case with id 84abfff1-dd69-4559-8f4e-8225e0d505c5 successfully.

msg-create-ediscovery-custodian-site-source#


Create a new siteSource object associated with an eDiscovery custodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.

Base Command#

msg-create-ediscovery-custodian-site-source

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the eDiscovery case. on the given eDiscovery case.Required
siteURL of the site; for example, https://contoso.sharepoint.com/sites/HumanResources.Required

Context Output#

PathTypeDescription
MsGraph.CustodianSiteSource.CreatedBy.Application.DisplayNameStringThe name of the application who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.Application.IDStringThe ID of the application who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.User.DisplayNameStringThe name of the user who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.User.IDStringThe ID of the user who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.User.UserPrincipalNameStringInternet-style login name of the user who created the siteSource.
MsGraph.CustodianSiteSource.CreatedDateTimeDateThe date and time the siteSource was created.
MsGraph.CustodianSiteSource.DisplayNameStringThe display name of the siteSource. This will be the name of the SharePoint site.
MsGraph.CustodianSiteSource.HoldStatusStringThe hold status of the siteSource. The possible values are: notApplied, applied, applying, removing, partial.
MsGraph.CustodianSiteSource.SiteSourceIdStringThe ID of the siteSource.

Command example#

!msg-create-ediscovery-custodian-site-source custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 site=https://yourdev.sharepoint.com/sites/site_test_1

Context Example#

{
"MsGraph": {
"CustodianSiteSource": {
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "0001-01-01T00:00:00Z",
"DisplayName": "site_test_1",
"HoldStatus": "notApplied",
"SiteSourceId": "862f0a64-e7db-46e0-a97f-9156b4f693ee"
}
}
}

Human Readable Output#

Results:#

Display NameSite Source IdHold StatusCreated Date TimeCreated By NameCreated By UPNCreated By App Name
site_test_1862f0a64-e7db-46e0-a97f-9156b4f693eenotApplied0001-01-01T00:00:00ZContent TestContentTest@yoursite.onmicrosoft.comCortex XSOAR - MS Graph Security Dev

msg-create-ediscovery-custodian-user-source#


Create a new userSource object associated with an eDiscovery custodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.

Base Command#

msg-create-ediscovery-custodian-user-source

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the eDiscovery case. on the given eDiscovery case.Required
emailSMTP address of the user.Required
included_sourcesSpecifies which sources are included in this group. Possible values are: mailbox, site, mailbox, site.Required

Context Output#

PathTypeDescription
MsGraph.CustodianUserSource.CreatedBy.Application.DisplayNameStringThe name of the application who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.Application.IDStringThe ID of the application who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.User.DisplayNameStringThe name of the user who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.User.IDStringThe ID of the user who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.User.UserPrincipalNameStringInternet-style login name of the user who created the userSource.
MsGraph.CustodianUserSource.CreatedDateTimeDateThe date and time the userSource was created.
MsGraph.CustodianUserSource.DisplayNameStringThe display name associated with the mailbox and site.
MsGraph.CustodianUserSource.EmailStringEmail address of the user's mailbox.
MsGraph.CustodianUserSource.HoldStatusStringThe hold status of the userSource. The possible values are: notApplied, applied, applying, removing, partial.
MsGraph.CustodianUserSource.IncludedSourcesStringSpecifies which sources are included in this group. Possible values are: mailbox, site.
MsGraph.CustodianUserSource.UserSourceIdStringThe ID of the userSource. This is not The ID of the actual group.

Command example#

!msg-create-ediscovery-custodian-user-source custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 email=testbox2@yoursite.onmicrosoft.com included_sources="mailbox, site"

Context Example#

{
"MsGraph": {
"CustodianUserSource": {
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "0001-01-01T00:00:00Z",
"DisplayName": "testbox2",
"Email": "testbox2@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"IncludedSources": "mailbox,site",
"UserSourceId": "0af7ca2b-84bc-4cff-930d-5d301cc4caf3"
}
}
}

Human Readable Output#

Results:#

Display NameEmailUser Source IdHold StatusCreated Date TimeCreated By NameCreated By UPNCreated By App NameIncluded Sources
testbox2testbox2@yoursite.onmicrosoft.com0af7ca2b-84bc-4cff-930d-5d301cc4caf3notApplied0001-01-01T00:00:00ZContent TestContentTest@yoursite.onmicrosoft.comCortex XSOAR - MS Graph Security Devmailbox,site

msg-list-ediscovery-custodian-user-sources#


Get a list of the userSource objects associated with an eDiscoveryCustodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.

Base Command#

msg-list-ediscovery-custodian-user-sources

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the eDiscovery case. on the given eDiscovery case.Required
user_source_idThe ID of the userSource. If provided, only this id will be returned.Optional
limitNumber of total results to return. Default is 50.Optional
all_resultsShow all results if true. Possible values are: true, false.Optional

Context Output#

PathTypeDescription
MsGraph.CustodianUserSource.CreatedBy.Application.DisplayNameStringThe name of the application who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.Application.IDStringThe ID of the application who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.User.DisplayNameStringThe name of the user who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.User.IDStringThe ID of the user who created the userSource.
MsGraph.CustodianUserSource.CreatedBy.User.UserPrincipalNameStringInternet-style login name of the user who created the userSource.
MsGraph.CustodianUserSource.CreatedDateTimeDateThe date and time the userSource was created.
MsGraph.CustodianUserSource.DisplayNameStringThe display name associated with the mailbox and site.
MsGraph.CustodianUserSource.EmailStringEmail address of the user's mailbox.
MsGraph.CustodianUserSource.HoldStatusStringThe hold status of the userSource. The possible values are: notApplied, applied, applying, removing, partial.
MsGraph.CustodianUserSource.IncludedSourcesStringSpecifies which sources are included in this group. Possible values are: mailbox, site.
MsGraph.CustodianUserSource.SiteWebUrlStringThe URL of the user's OneDrive for Business site. Read-only.
MsGraph.CustodianUserSource.UserSourceIdStringThe ID of the userSource. This is not The ID of the actual group.

Command example#

!msg-list-ediscovery-custodian-user-sources custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Context Example#

{
"MsGraph": {
"CustodianUserSource": {
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "2023-07-06T08:04:21.1548801Z",
"DisplayName": "testbox2",
"Email": "testbox2@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"IncludedSources": "mailbox,site",
"SiteWebUrl": "https://yourdev-my.sharepoint.com/personal/testbox2_yourdev_onmicrosoft_com",
"UserSourceId": "0af7ca2b-84bc-4cff-930d-5d301cc4caf3"
}
}
}

Human Readable Output#

Results:#

Display NameEmailUser Source IdHold StatusCreated Date TimeCreated By NameCreated By UPNCreated By App NameSite Web UrlIncluded Sources
testbox2testbox2@yoursite.onmicrosoft.com0af7ca2b-84bc-4cff-930d-5d301cc4caf3notApplied2023-07-06T08:04:21.1548801ZContent TestContentTest@yoursite.onmicrosoft.comCortex XSOAR - MS Graph Security Devhttps://yourdev-my.sharepoint.com/personal/testbox2_yourdev_onmicrosoft_commailbox,site

msg-list-ediscovery-custodian-site-sources#


Get a list of the siteSource objects associated with an eDiscoveryCustodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.

Base Command#

msg-list-ediscovery-custodian-site-sources

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idThe ID of the eDiscovery case. on the given eDiscovery case.Required
site_source_idThe ID of the siteSource. If provided, only this id will be returned.Optional
limitNumber of total results to return. Default is 50. Default is 50.Optional
all_resultsShow all results if true. Possible values are: true, false.Optional

Context Output#

PathTypeDescription
MsGraph.CustodianSiteSource.CreatedBy.Application.DisplayNameStringThe name of the application who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.Application.IDStringThe ID of the application who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.User.DisplayNameStringThe name of the user who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.User.IDStringThe ID of the user who created the siteSource.
MsGraph.CustodianSiteSource.CreatedBy.User.UserPrincipalNameStringInternet-style login name of the user who created the siteSource.
MsGraph.CustodianSiteSource.CreatedDateTimeDateThe date and time the siteSource was created.
MsGraph.CustodianSiteSource.DisplayNameStringThe display name of the siteSource. This will be the name of the SharePoint site.
MsGraph.CustodianSiteSource.HoldStatusStringThe hold status of the siteSource. The possible values are: notApplied, applied, applying, removing, partial.
MsGraph.CustodianSiteSource.SiteSourceIdStringThe ID of the siteSource.
MsGraph.CustodianSiteSource.Site.IDStringThe unique identifier of the item. Read-only.
MsGraph.CustodianSiteSource.Site.WebUrlStringURL that displays the item in the browser. Read-only.
MsGraph.CustodianSiteSource.Site.CreatedDateDateThe date and time the siteSource was created.

Command example#

!msg-list-ediscovery-custodian-site-sources custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 site_source_id=862f0a64-e7db-46e0-a97f-9156b4f693ee

Context Example#

{
"MsGraph": {
"CustodianSiteSource": {
"CreatedBy": {
"User": {
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b"
}
},
"CreatedDateTime": "2023-07-06T08:02:28.5670187Z",
"DisplayName": "site_test_1",
"HoldStatus": "removing",
"Site": {
"CreatedDate": "2023-07-06T08:02:28.5670187Z",
"ID": "862f0a64-e7db-46e0-a97f-9156b4f693ee",
"WebUrl": "https://yourdev.sharepoint.com/sites/site_test_1"
},
"SiteSourceId": "862f0a64-e7db-46e0-a97f-9156b4f693ee"
}
}
}

Human Readable Output#

Results:#

Display NameSite Source IdHold StatusCreated Date Time
site_test_1862f0a64-e7db-46e0-a97f-9156b4f693eeremoving2023-07-06T08:02:28.5670187Z

msg-apply-hold-ediscovery-custodian#


Start the process of applying hold on eDiscovery custodians. Available return statuses: notApplied - The custodian is not on hold (all sources in it are not on hold). applied - The custodian is on hold (all sources are on hold). applying - The custodian is in applying hold state (applyHold operation triggered). removing - The custodian is in removing the hold state(removeHold operation triggered). partial - The custodian is in mixed state where some sources are on hold and some not on hold or error state.

Base Command#

msg-apply-hold-ediscovery-custodian

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idA comma-seperated list of custodians ids to apply a hold to.Required

Context Output#

There is no context output for this command.

Command example#

!msg-apply-hold-ediscovery-custodian custodian_id=09f05c43ffc54ff88cf5c5e89699375d,0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Human Readable Output#

Apply hold status is running.

msg-remove-hold-ediscovery-custodian#


Start the process of removing hold from eDiscovery custodians.

Base Command#

msg-remove-hold-ediscovery-custodian

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
custodian_idA comma-seperated list of custodians ids to remove a hold from.Required

Context Output#

There is no context output for this command.

Command example#

!msg-remove-hold-ediscovery-custodian custodian_id=09f05c43ffc54ff88cf5c5e89699375d,0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Human Readable Output#

Remove hold status is running.

msg-create-ediscovery-non-custodial-data-source#


Create a new eDiscoveryNoncustodialDataSource object.

Base Command#

msg-create-ediscovery-non-custodial-data-source

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
siteURL of the site, for example, https://contoso.sharepoint.com/sites/HumanResources.Optional
emailEmail address of the user's mailbox.Optional

Context Output#

PathTypeDescription
MsGraph.NoncustodialDataSource.CreatedDateTimeDateCreated date and time of the nonCustodialDataSource.
MsGraph.NoncustodialDataSource.DataSourceIdStringUnique identifier of the nonCustodialDataSource.
MsGraph.NoncustodialDataSource.DataSourceStatusStringLatest status of the nonCustodialDataSource. Possible values are: Active, Released.
MsGraph.NoncustodialDataSource.DisplayNameStringDisplay name of the noncustodialDataSource.
MsGraph.NoncustodialDataSource.HoldStatusStringThe hold status of the nonCustodialDataSource.The possible values are: notApplied, applied, applying, removing, partial
MsGraph.NoncustodialDataSource.LastModifiedDateTimeDateLast modified date and time of the nonCustodialDataSource.
MsGraph.NoncustodialDataSource.ReleasedDateTimeDateDate and time that the nonCustodialDataSource was released from the case.

Command example#

!msg-create-ediscovery-non-custodial-data-source case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 site=https://yourdev.sharepoint.com/sites/site_test_1

Context Example#

{
"MsGraph": {
"NoncustodialDataSource": {
"CreatedDateTime": "2023-07-06T08:22:32.3121523Z",
"DataSourceId": "38394332433939353236344630434633",
"DataSourceStatus": "active",
"DisplayName": "site_test_1",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T08:22:32.3121523Z",
"ReleasedDateTime": "0001-01-01T00:00:00Z"
}
}
}

Human Readable Output#

Results:#

Created Date TimeData Source IdData Source StatusDisplay NameHold StatusLast Modified Date TimeReleased Date Time
2023-07-06T08:22:32.3121523Z38394332433939353236344630434633activesite_test_1notApplied2023-07-06T08:22:32.3121523Z0001-01-01T00:00:00Z

msg-list-ediscovery-non-custodial-data-sources#


Get a list of the non-custodial data sources and their properties.

Base Command#

msg-list-ediscovery-non-custodial-data-sources

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
data_source_idThe ID of the dataSource. If provided, only this id will be returned.Optional
limitThe maximum number of results to return. Default is 50.Optional
all_resultsShow all results if true. Possible values are: true, false.Optional

Context Output#

PathTypeDescription
MsGraph.NoncustodialDataSource.CreatedDateTimeDateCreated date and time of the nonCustodialDataSource.
MsGraph.NoncustodialDataSource.DataSourceIdStringUnique identifier of the nonCustodialDataSource.
MsGraph.NoncustodialDataSource.DataSourceStatusStringLatest status of the nonCustodialDataSource. Possible values are: Active, Released.
MsGraph.NoncustodialDataSource.DisplayNameStringDisplay name of the noncustodialDataSource.
MsGraph.NoncustodialDataSource.HoldStatusStringThe hold status of the nonCustodialDataSource.The possible values are: notApplied, applied, applying, removing, partial
MsGraph.NoncustodialDataSource.LastModifiedDateTimeDateLast modified date and time of the nonCustodialDataSource.
MsGraph.NoncustodialDataSource.ReleasedDateTimeDateDate and time that the nonCustodialDataSource was released from the case.

Command example#

!msg-list-ediscovery-non-custodial-data-sources case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Context Example#

{
"MsGraph": {
"NoncustodialDataSource": {
"CreatedDateTime": "2023-07-06T08:22:32.3121523Z",
"DataSourceId": "38394332433939353236344630434633",
"DisplayName": "site_test_1",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T08:22:32.3121523Z",
"ReleasedDateTime": "0001-01-01T00:00:00Z",
"Status": "active"
}
}
}

Human Readable Output#

Results:#

Display NameData Source IdHold StatusCreated Date TimeLast Modified Date TimeReleased Date TimeStatus
site_test_138394332433939353236344630434633notApplied2023-07-06T08:22:32.3121523Z2023-07-06T08:22:32.3121523Z0001-01-01T00:00:00Zactive

msg-create-ediscovery-search#


Create a new eDiscoverySearch object.

Base Command#

msg-create-ediscovery-search

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
display_nameThe display name of the search.Required
descriptionThe description of the search.Optional
content_queryThe query string used for the search. The query string format is KQL (Keyword Query Language). For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/keyword-queries-and-search-conditions.. You can refine searches by using fields paired with values; for example, subject:"Quarterly Financials" AND Date>=06/01/2016 AND Date<=07/01/2016.Optional
data_source_scopesWhen specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources.Optional

Context Output#

PathTypeDescription
MsGraph.eDiscoverySearch.ContentQueryStringThe query string in KQL (Keyword Query Language) query. For details, see see https://learn.microsoft.com/en-us/microsoft-365/compliance/keyword-queries-and-search-conditions.. You can refine searches by using fields paired with values; for example, subject:"Quarterly Financials" AND Date>=06/01/2016 AND Date<=07/01/2016.
MsGraph.eDiscoverySearch.CreatedBy.Application.DisplayNameStringName of the application who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.Application.IDStringID of the application who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.User.DisplayNameStringName of the user who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.User.IDStringID of the user who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.User.UserPrincipalNameStringInternet-style login name of the user who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedDateTimeDateThe date and time the eDiscovery search was created.
MsGraph.eDiscoverySearch.DataSourceScopesStringWhen specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources.
MsGraph.eDiscoverySearch.DescriptionStringThe description of the eDiscovery search.
MsGraph.eDiscoverySearch.DisplayNameStringThe display name of the eDiscovery search.
MsGraph.eDiscoverySearch.LastModifiedDateTimeDateThe last date and time the eDiscovery search was modified.
MsGraph.eDiscoverySearch.SearchIdStringThe ID for the eDiscovery search.

Command example#

!msg-create-ediscovery-search case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 display_name=`my search` data_source_scopes=allCaseNoncustodialDataSources

Context Example#

{
"MsGraph": {
"eDiscoverySearch": {
"ContentQuery": "",
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "2023-07-06T08:25:36.9874937Z",
"DataSourceScopes": "allCaseNoncustodialDataSources",
"Description": "",
"DisplayName": "my search",
"LastModifiedDateTime": "2023-07-06T08:25:36.9874937Z",
"SearchId": "e7282eff-ba81-43cb-9027-522a343f6692"
}
}
}

Human Readable Output#

Results:#

Display NameData Source ScopesSearch IdCreated By NameCreated By App NameCreated By UPNCreated Date TimeLast Modified Date Time
my searchallCaseNoncustodialDataSourcese7282eff-ba81-43cb-9027-522a343f6692Content TestCortex XSOAR - MS Graph Security DevContentTest@yoursite.onmicrosoft.com2023-07-06T08:25:36.9874937Z2023-07-06T08:25:36.9874937Z

msg-update-ediscovery-search#


Update an eDiscoverySearch object.

Base Command#

msg-update-ediscovery-search

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
search_idThe ID of the eDiscovery search.Required
display_nameThe display name of the search.Required
descriptionThe description of the search.Optional
content_queryThe query string used for the search. The query string format is KQL (Keyword Query Language). For details, see Keyword queries and search conditions for Content Search and eDiscovery. You can refine searches by using fields paired with values, for example, subject:"Quarterly Financials" AND Date>=06/01/2016 AND Date<=07/01/2016.Optional
data_source_scopesWhen specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources.Optional

Context Output#

There is no context output for this command.

Command example#

!msg-update-ediscovery-search case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 display_name=newname search_id=e7282eff-ba81-43cb-9027-522a343f6692

Human Readable Output#

eDiscovery search e7282eff-ba81-43cb-9027-522a343f6692 was updated successfully.

msg-list-ediscovery-searchs#


Get the list of eDiscoverySearch resources from an eDiscovery case.

Base Command#

msg-list-ediscovery-searchs

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
search_idThe ID of the eDiscovery search. If provided, only this id will be returned.Optional
limitThe maximum number of results to return. Default is 50.Optional
all_resultsShow all results if true. Possible values are: true, false.Optional

Context Output#

PathTypeDescription
MsGraph.eDiscoverySearch.ContentQueryStringThe query string in KQL (Keyword Query Language) query. For details, see Keyword queries and search conditions for Content Search and eDiscovery. You can refine searches by using fields paired with values; for example, subject:"Quarterly Financials" AND Date>=06/01/2016 AND Date<=07/01/2016.
MsGraph.eDiscoverySearch.CreatedBy.Application.DisplayNameStringName of the application who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.Application.IDStringID of the application who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.User.DisplayNameStringName of the user who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.User.IDStringID of the user who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedBy.User.UserPrincipalNameStringInternet-style login name of the user who created the eDiscovery search.
MsGraph.eDiscoverySearch.CreatedDateTimeDateThe date and time the eDiscovery search was created.
MsGraph.eDiscoverySearch.DataSourceScopesStringWhen specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources.
MsGraph.eDiscoverySearch.DescriptionStringThe description of the eDiscovery search.
MsGraph.eDiscoverySearch.DisplayNameStringThe display name of the eDiscovery search.
MsGraph.eDiscoverySearch.SearchIdStringThe ID for the eDiscovery search.
MsGraph.eDiscoverySearch.LastModifiedDateTimeStringThe last date and time the eDiscovery search was modified.
MsGraph.eDiscoverySearch.LastModifiedBy.Application.DisplayNameStringName of the application who last modified the eDiscovery search.
MsGraph.eDiscoverySearch.LastModifiedBy.Application.IDStringID of the application who last modified the eDiscovery search.
MsGraph.eDiscoverySearch.LastModifiedBy.User.DisplayNameStringName of the user who last modified the eDiscovery search.
MsGraph.eDiscoverySearch.LastModifiedBy.User.IDStringID of the user who last modified the eDiscovery search.
MsGraph.eDiscoverySearch.LastModifiedBy.User.UserPrincipalNameStringInternet-style login name of the user who last modified the eDiscovery search.

Command example#

!msg-list-ediscovery-searchs case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5

Context Example#

{
"MsGraph": {
"eDiscoverySearch": {
"ContentQuery": "",
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "2023-07-06T08:25:36.9874937Z",
"DataSourceScopes": "allCaseNoncustodialDataSources",
"Description": "",
"DisplayName": "newname",
"LastModifiedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"LastModifiedDateTime": "2023-07-06T08:27:51.5611704Z",
"SearchId": "e7282eff-ba81-43cb-9027-522a343f6692"
}
}
}

Human Readable Output#

Results:#

Display NameData Source ScopesSearch IdCreated By NameCreated By App NameCreated By UPNCreated Date TimeLast Modified Date Time
newnameallCaseNoncustodialDataSourcese7282eff-ba81-43cb-9027-522a343f6692Content TestCortex XSOAR - MS Graph Security DevContentTest@yoursite.onmicrosoft.com2023-07-06T08:25:36.9874937Z2023-07-06T08:27:51.5611704Z

msg-purge-ediscovery-data#


Delete Microsoft Teams messages contained in an eDiscovery search. Note: This request purges Teams data only. It does not purge other types of data such as mailbox items.

You can collect and purge the following categories of Teams content:

Teams 1:1 chats - Chat messages, posts, and attachments shared in a Teams conversation between two people. Teams 1:1 chats are also called conversations. Teams group chats - Chat messages, posts, and attachments shared in a Teams conversation between three or more people. Also called 1:N chats or group conversations. Teams channels - Chat messages, posts, replies, and attachments shared in a standard Teams channel. Private channels - Message posts, replies, and attachments shared in a private Teams channel. Shared channels - Message posts, replies, and attachments shared in a shared Teams channel.

Base Command#

msg-purge-ediscovery-data

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
search_idThe ID of the eDiscovery search.Required
purge_typeThe ID of the eDiscovery search. Possible values are: permanentlyDelete.Optional
purge_areasThe ID of the eDiscovery search. Possible values are: teamsMessages.Optional

Context Output#

There is no context output for this command.

Command example#

!msg-purge-ediscovery-data case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 search_id=e7282eff-ba81-43cb-9027-522a343f6692

Human Readable Output#

eDiscovery purge status is running.

msg-delete-ediscovery-search#


Delete an eDiscoverySearch object.

Base Command#

msg-delete-ediscovery-search

Input#

Argument NameDescriptionRequired
case_idThe ID of the eDiscovery case.Required
search_idThe ID of the eDiscovery search.Optional

Context Output#

There is no context output for this command.

Command example#

!msg-delete-ediscovery-search case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 search_id=e7282eff-ba81-43cb-9027-522a343f6692

Human Readable Output#

eDiscovery search e7282eff-ba81-43cb-9027-522a343f6692 was deleted successfully.

Threat Assessment Commands#

msg-create-mail-assessment-request#


Create and retrieve a mail threat assessment.

Note:

  • The message given in the command's argument message_id has to contain X-MS-Exchange-Organization-Network-Message-Id header in the message or in the X-MS-Office365-Filtering-Correlation-Id header in quarantined messages.

  • Delegated Mail permissions (Mail.Read or Mail.Read.Shared) are required to access the mail received by the user (recipient email and message user), which means that if the authenticated user is different from the user specified in the recipient_email and message_user, then Read and manage permissions on behalf of the given user need to be added for the authenticated user via Microsoft 365 admin center.

    • Go to Microsoft 365 admin center.
    • Choose the user email which will be provided in the command's arguments.
    • Click on Manage product licenses.
    • Go to Mail.
    • Under Mailbox permissions, click on Read and manage permissions.
    • click on Add permissions.
    • Choose the authenticated user email from the list of given users.
    • Click on add.

Base Command#

msg-create-mail-assessment-request

Input#

Argument NameDescriptionRequired
recipient_emailThe email of the user who recieved the mail.Required
expected_assessmentthe expected assessment: blocked or unblockedRequired
categoryThe category of the threat: phishing, malware or spam.Required
message_userMessage user, the user's id or the user's email.Required
message_idMessage id, Message has to contain 'X-MS-Exchange-Organization-Network-Message-Id' header in the message or the 'X-MS-Office365-Filtering-Correlation-Id' header in quarantined messages.Required

Context Output#

PathTypeDescription
MSGraphMail.MailAssessment.IDStringRequest id.
MSGraphMail.MailAssessment.CreatedDateTimeDateCreated data of the threat assessment request.
MSGraphMail.MailAssessment.ContentTypeStringThe content type of threat assessment.
MSGraphMail.MailAssessment.ExpectedAssessmentStringThe expected assessment from submitter. Possible values are: block, unblock.
MSGraphMail.MailAssessment.CategoryStringThe threat category. Possible values are: spam, phishing, malware.
MSGraphMail.MailAssessment.StatusStringThe assessment process status. Possible values are: pending, completed.
MSGraphMail.MailAssessment.RequestSourceStringThe source of threat assessment request. Possible values are: administrator.
MSGraphMail.MailAssessment.RecipientEmailStringThe mail recipient whose policies are used to assess the mail.
MSGraphMail.MailAssessment.DestinationRoutingReasonStringThe reason for mail routed to its destination. Possible values are: none, mailFlowRule, safeSender, blockedSender, advancedSpamFiltering, domainAllowList, domainBlockList, notInAddressBook, firstTimeSender, autoPurgeToInbox, autoPurgeToJunk, autoPurgeToDeleted, outbound, notJunk, junk.
MSGraphMail.MailAssessment.MessageIDStringExtracted from the message URI which is The resource URI of the mail message for assessment.
MSGraphMail.MailAssessment.CreatedUserIDStringUser id.
MSGraphMail.MailAssessment.CreatedUsernameStringUsername.
MSGraphMail.MailAssessment.ResultTypeStringResult of the request.
MSGraphMail.MailAssessment.ResultMessageStringMessage of the result.

Command example#

!msg-create-mail-assessment-request recipient_email="avishai@demistodev.onmicrosoft.com" expectedAssessment=unblock category=spam user_id=3fa9f28b-eb0e-463a-ba7b-8089fe9991e2 user_message=AAMkAGY3OTQyMzMzLWYxNjktNDE0My05NmZhLWQ5MGY1YjIyNzBkNABGAAAAAACYCKjWAnXBTrnhgWJCcLX7BwDrxRwRjq-zTrN6vWSzK4OWAAAAAAEJAADrxRwRjq-zTrN6vWSzK4OWAAY5aBb-AAA=

Context Example#

{
"id": "11922306-b25b-4605-ff0d-08d772fcf996",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "mail",
"expectedAssessment": "unblock",
"category": "spam",
"status": "completed",
"requestSource": "administrator",
"recipientEmail": "avishai@demistodev.onmicrosoft.com",
"destinationRoutingReason": "notJunk",
"messageUri": "",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "No policy was hit."
},
{
"id": "d38c2448-79eb-467e-2495-08d772fdb7d1",
"createdDateTime": "2019-11-27T05:50:33.243Z",
"resultType": "rescan",
"message": "Not Spam"
}
]
}

Human Readable Output#

Mail assessment request:#

IDCreated DateTimeContent TypeExpected AssessmentCategoryStatusRequest SourceRecipient EmailDestination Routing ReasonCreated User IDCreated Username
11922306-b25b-4605-ff0d-08d772fcf996"2019-11-27T05:45:14.0962061Z"mailunblockspamcompletedadministratoravishai@demistodev.onmicrosoft.comnotJunk63798129-a62c-4f9e-2c6d-08d772fcfb0eNo policy was hit.

msg-create-email-file-assessment-request#


Create and retrieve an email file threat assessment.

Note: File has to contain X-MS-Exchange-Organization-Network-Message-Id header in the message or in the X-MS-Office365-Filtering-Correlation-Id header in quarantined messages.

Base Command#

msg-create-email-file-assessment-request

Input#

Argument NameDescriptionRequired
recipient_emailThe email of the user who recieved the mail.Required
expected_assessmentthe expected assessment: blocked or unblockedRequired
categoryThe category of the threat: phishing, malware or spam.Required
content_datacontent of an email file.Optional
entry_identry id of file uploaded in the war room.Optional

Context Output#

PathTypeDescription
MSGraphMail.EmailAssessment.IDStringRequest id.
MSGraphMail.EmailAssessment.CreatedDateTimeDateCreated data of the threat assessment request.
MSGraphMail.EmailAssessment.ContentTypeStringThe content type of threat assessment.
MSGraphMail.EmailAssessment.ExpectedAssessmentStringThe expected assessment from submitter. Possible values are: block, unblock.
MSGraphMail.EmailAssessment.CategoryStringThe threat category. Possible values are: spam, phishing, malware.
MSGraphMail.EmailAssessment.StatusStringThe assessment process status. Possible values are: pending, completed.
MSGraphMail.EmailAssessment.RequestSourceStringThe source of threat assessment request. Possible values are: administrator.
MSGraphMail.EmailAssessment.RecipientEmailStringThe mail recipient whose policies are used to assess the mail.
MSGraphMail.EmailAssessment.DestinationRoutingReasonStringThe reason for mail routed to its destination. Possible values are: none, mailFlowRule, safeSender, blockedSender, advancedSpamFiltering, domainAllowList, domainBlockList, notInAddressBook, firstTimeSender, autoPurgeToInbox, autoPurgeToJunk, autoPurgeToDeleted, outbound, notJunk, junk.
MSGraphMail.EmailAssessment.CreatedUserIDStringUser id.
MSGraphMail.EmailAssessment.CreatedUsernameStringUsername.
MSGraphMail.EmailAssessment.ResultTypeStringResult of the request.
MSGraphMail.EmailAssessment.ResultMessageStringMessage of the result.

Command example#

!msg-create-email-file-assessment-request recipient_email="avishai@demistodev.onmicrosoft.com" expectedAssessment=unblock category=phishing entry_id=12359704829584

Context Example#

{
"id": "76598306-b25b-4605-ff0d-03kgmtfcf996",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "mail",
"expectedAssessment": "unblock",
"category": "phishing",
"status": "completed",
"requestSource": "administrator",
"recipientEmail": "avishai@demistodev.onmicrosoft.com",
"destinationRoutingReason": "notJunk",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "Phishing attempt."
}
]
}

Human Readable Output#

Mail assessment request:#

IDCreated DateTimeContent TypeExpected AssessmentCategoryStatusRequest SourceRecipient EmailDestination Routing ReasonCreated User IDCreated Username
76598306-b25b-4605-ff0d-03kgmtfcf996"2019-11-27T05:45:14.0962061Z"mailunblockphishingcompletedadministratoravishai@demistodev.onmicrosoft.comnotJunk63798129-a62c-4f9e-2c6d-08d772fcfb0ePhishing attempt.

msg-create-file-assessment-request#


Create and retrieve a file threat assessment.

Base Command#

msg-create-file-assessment-request

Input#

Argument NameDescriptionRequired
file_nameThe file name.Required
expected_assessmentthe expected assessment: blocked or unblockedRequired
categoryThe category of the threat: phishing, malware or spam.Required
content_datacontent of an email file.Optional
entry_identry id of file uploaded in the war room.Optional

Context Output#

PathTypeDescription
MSGraphMail.FileAssessment.IDStringRequest id.
MSGraphMail.FileAssessment.CreatedDateTimeDateCreated data of the threat assessment request.
MSGraphMail.FileAssessment.ContentTypeStringThe content type of threat assessment.
MSGraphMail.FileAssessment.ExpectedAssessmentStringThe expected assessment from submitter. Possible values are: block, unblock.
MSGraphMail.FileAssessment.CategoryStringThe threat category. Possible values are: phishing, malware.
MSGraphMail.FileAssessment.StatusStringThe assessment process status. Possible values are: pending, completed.
MSGraphMail.FileAssessment.RequestSourceStringThe source of threat assessment request. Possible values are: administrator.
MSGraphMail.FileAssessment.FileNameStringThe file name.
MSGraphMail.FileAssessment.CreatedUserIDStringUser id.
MSGraphMail.FileAssessment.CreatedUsernameStringUsername.
MSGraphMail.FileAssessment.ResultTypeStringResult of the request.
MSGraphMail.FileAssessment.ResultMessageStringMessage of the result.

Command example#

!msg-create-file-assessment-request file_name="test_file.txt" expectedAssessment=block category=phishing entry_id=1235970482958bkf4

Context Example#

{
"id": "0796306-b456-4605-ff0d-03kgmtfcf876",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "file",
"expectedAssessment": "block",
"category": "phishing",
"status": "completed",
"requestSource": "administrator",
"fileName": "test_file.txt",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "Phishing attempt."
}
]
}

Human Readable Output#

Mail assessment request:#

IDCreated DateTimeContent TypeExpected AssessmentCategoryStatusRequest SourceFile NameCreated User IDCreated Username
0796306-b456-4605-ff0d-03kgmtfcf876"2019-11-27T05:45:14.0962061Z"fileblockphishingcompletedadministratortest_file.txt63798129-a62c-4f9e-2c6d-08d772fcfb0ePhishing attempt.

msg-create-url-assessment-request#


Create and retrieve url threat assessment.

Base Command#

msg-create-url-assessment-request

Input#

Argument NameDescriptionRequired
urlThe URL.Required
expected_assessmentthe expected assessment: blocked or unblockedRequired
categoryThe category of the threat: phishing, malware or spam.Required

Context Output#

PathTypeDescription
MSGraphMail.UrlAssessment.IDStringRequest id.
MSGraphMail.UrlAssessment.CreatedDateTimeDateCreated data of the threat assessment request.
MSGraphMail.UrlAssessment.ContentTypeStringThe content type of threat assessment.
MSGraphMail.UrlAssessment.ExpectedAssessmentStringThe expected assessment from submitter. Possible values are: block, unblock.
MSGraphMail.UrlAssessment.CategoryStringThe threat category. Possible values are: spam, phishing, malware.
MSGraphMail.UrlAssessment.StatusStringThe assessment process status. Possible values are: pending, completed.
MSGraphMail.UrlAssessment.RequestSourceStringThe source of threat assessment request. Possible values are: administrator.
MSGraphMail.UrlAssessment.UrlStringThe url.
MSGraphMail.UrlAssessment.CreatedUserIDStringUser id.
MSGraphMail.UrlAssessment.CreatedUsernameStringUsername.
MSGraphMail.UrlAssessment.ResultTypeStringResult of the request.
MSGraphMail.UrlAssessment.ResultMessageStringMessage of the result.
MSGraphMail.UrlAssessment.RecipientEmailStringRecipient Email.
MSGraphMail.UrlAssessment.DestinationRoutingReasonStringDestination Routing Reason.

Command example#

!msg-create-url-assessment-request url="httpp://support.clean-mx.de/clean-mx/viruses.php" expectedAssessment=block category=malware

Context Example#

{
"id": "0796306-b456-4605-ff0d-03okmtgcf876",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "url",
"expectedAssessment": "block",
"category": "malware",
"status": "completed",
"requestSource": "administrator",
"url": "httpp://support.clean-mx.de/clean-mx/viruses.php",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "Malware attempt."
}
]
}

Human Readable Output#

Mail assessment request:#

IDCreated DateTimeContent TypeExpected AssessmentCategoryStatusRequest SourceURLCreated User IDCreated Username
0796306-b456-4605-ff0d-03okmtgcf876"2019-11-27T05:45:14.0962061Z"urlblockmalwarecompletedadministratorhttpp://support.clean-mx.de/clean-mx/viruses.php63798129-a62c-4f9e-2c6d-08d772fcfb0eMalware attempt.

msg-list-threat-assessment-requests#


Retrieve all threat assessment requests.

Base Command#

msg-list-threat-assessment-requests

Input#

Argument NameDescriptionRequired
request_idThe request id.Optional
filterAvailable fields for filter are:expectedAssessment,ContentType,status,requestSource. Example:category eq 'malware’Optional
order_byDrop -down: id, createdDateTime, ContentType, expectedAssessment, category, status, requestSource, categoryOptional
sort_orderdesc or asc.Optional
limitDefault is 50.Optional
next_tokenthe retrieved token from first run when there's more data to retrieve.Optional

Context Output#

PathTypeDescription
MSGraphMail.AssessmentRequest.IDStringRequest id.
MSGraphMail.AssessmentRequest.CreatedDateTimeDateCreated data of the threat assessment request.
MSGraphMail.AssessmentRequest.ContentTypeStringThe content type of threat assessment.
MSGraphMail.AssessmentRequest.ExpectedAssessmentStringThe expected assessment from submitter. Possible values are: block, unblock.
MSGraphMail.AssessmentRequest.CategoryStringThe threat category. Possible values are: spam, phishing, malware.
MSGraphMail.AssessmentRequest.StatusStringThe assessment process status. Possible values are: pending, completed.
MSGraphMail.AssessmentRequest.RequestSourceStringThe source of threat assessment request. Possible values are: administrator.
MSGraphMail.AssessmentRequest.DestinationRoutingReasonStringThe destination Routing Reason.
MSGraphMail.AssessmentRequest.RecipientEmailStringThe recipient email.
MSGraphMail.AssessmentRequest.URLStringThe url.
MSGraphMail.AssessmentRequest.FileNameStringThe file name.
MSGraphMail.AssessmentRequest.CreatedUserIDStringUser id.
MSGraphMail.AssessmentRequest.CreatedUsernameStringUsername.
MSGraphMail.AssessmentRequest.ResultTypeStringResult of the request.
MSGraphMail.AssessmentRequest.ResultMessageStringMessage of the result.
MsGraph.AssessmentRequestNextToken.next_tokenStringthe next token from the previous run.

Command example#

!msg-list-threat-assessment-requests

Context Example#

{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#informationProtection/threatAssessmentRequests",
"@odata.nextLink": "https://graph.microsoft.com/v1.0/informationProtection/threatAssessmentRequests?$skiptoken=eyJQYWdlQ29va2llIjoiPHJvdyBpZF9JZGVudGl0",
"value": [
{
"@odata.type": "#microsoft.graph.mailAssessmentRequest",
"id": "49c5ef5b-1f65-444a-e6b9-08d772ea2059",
"createdDateTime": "2019-11-27T03:30:18.6890937Z",
"contentType": "mail",
"expectedAssessment": "block",
"category": "spam",
"status": "pending",
"requestSource": "administrator",
"recipientEmail": "avishaibrandies@microsoft.com",
"destinationRoutingReason": "notJunk",
"messageUri": "https://graph.microsoft.com/v1.0/users/c52ce8db-3e4b-4181-93c4-7d6b6bffaf60/messages/AAMkADU3MWUxOTU0LWNlOTEt=",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
}
},
{
"@odata.type": "#microsoft.graph.emailFileAssessmentRequest",
"id": "ab2ad9b3-2213-4091-ae0c-08d76ddbcacf",
"createdDateTime": "2019-11-20T17:05:06.4088076Z",
"contentType": "mail",
"expectedAssessment": "block",
"category": "malware",
"status": "completed",
"requestSource": "administrator",
"recipientEmail": "tifc@a830edad9050849EQTPWBJZXODQ.onmicrosoft.com",
"destinationRoutingReason": "notJunk",
"contentData": "",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
}
}
]
}

Human Readable Output#

###Next Token is: eyJQYWdlQ29va2llIjoiPHJvdyBpZF9JZGVudGl

Mail assessment request:#

IDCreated DateTimeContent TypeExpected AssessmentCategoryStatusRequest SourceRecipient EmailCreated User IDCreated UsernamedestinationRoutingReason
49c5ef5b-1f65-444a-e6b9-08d772ea2059"2019-11-27T03:30:18.6890937Z"mailblockspampendingadministratoravishaibrandies@microsoft.com63798129-a62c-4f9e-2c6d-08d772fcfb0espam attempt.notJunk
ab2ad9b3-2213-4091-ae0c-08d76ddbcacf2019-11-20T17:05:06.4088076Zmailblockmalwarependingadministratoravishaibrandies@microsoft.com63798129-a62c-4f9e-2c6d-08d772fcfb0eMalware attempt.notJunk

msg-generate-login-url#


Generate the login URL used for the authorization code flow.

Base Command#

msg-generate-login-url

Input#

Argument NameDescriptionRequired

Context Output#

There is no context output for this command.

Human Readable Output#

Authorization instructions#

  1. Click on the login URL to sign in and grant Cortex XSOAR permissions for your Azure Service Management. You will be automatically redirected to a link with the following structure: REDIRECT_URI?code=AUTH_CODE&session_state=SESSION_STATE
  2. Copy the AUTH_CODE (without the code= prefix, and the session_state parameter) and paste it in your instance configuration under the Authorization code parameter.

msg-advanced-hunting#


Advanced hunting is a threat-hunting tool that uses specially constructed queries to examine the past 30 days of event data in Microsoft Graph Security. To save result in context to 'Microsoft365Defender' as well, you can check the 'Microsoft 365 Defender context' checkbox in Instance Setting.

Base Command#

msg-advanced-hunting

Input#

Argument NameDescriptionRequired
queryAdvanced hunting query.Required
limitNumber of entries. Enter -1 for unlimited query, In case a limit also appears in the query, priority will be given to the query.Optional
timeoutThe time limit in seconds for the http request to runOptional

Context Output#

PathTypeDescription
MsGraph.Hunt.queryStringThe query used, also acted as a key.
MsGraph.Hunt.resultsUnknownThe results of the query.
Microsoft365Defender.Hunt.queryStringThe query used, also acted as a key.
Microsoft365Defender.Hunt.resultsUnknownThe results of the query.

Command example#

!msg-advanced-hunting query=AlertInfo limit=1

Context Example#

{
"Microsoft365Defender": {
"Hunt": {
"query": "AlertInfo | limit 1 ",
"results": [
{
"AlertId": "abc123",
"AttackTechniques": "",
"Category": "Exfiltration",
"DetectionSource": "Microsoft Data Loss Prevention",
"ServiceSource": "Microsoft Data Loss Prevention",
"Severity": "Medium",
"Timestamp": "2024-03-19T03:00:08Z",
"Title": "DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min)"
}
]
}
},
"MsGraph": {
"Hunt": {
"query": "AlertInfo | limit 1 ",
"results": [
{
"AlertId": "abc123",
"AttackTechniques": "",
"Category": "Exfiltration",
"DetectionSource": "Microsoft Data Loss Prevention",
"ServiceSource": "Microsoft Data Loss Prevention",
"Severity": "Medium",
"Timestamp": "2024-03-19T03:00:08Z",
"Title": "DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min)"
}
]
}
}
}

Human Readable Output#

See Results Above

msg-list-security-incident#


Get a list of incident objects that Microsoft 365 Defender created to track attacks in an organization. If you want a specific incident, enter an incident ID.

Base Command#

msg-list-security-incident

Input#

Argument NameDescriptionRequired
incident_idIncident's ID.Optional
limitNumber of incidents in the list. Maximum is 50. Default is 50.Optional
timeoutThe time limit in seconds for the http request to run. Default is 50.Optional
statusThe status of the incident. Possible values are: active, redirected, resolved, inProgress, unknownFutureValue, awaitingAction.Optional
assigned_toOwner of the incident.Optional
severityIndicates the possible impact on assets. The higher the severity, the greater the impact. Typically higher severity items require the most immediate attention. Possible values are: unknown, informational, low, medium, high, unknownFutureValue.Optional
classificationThe specification for the incident.Optional
odataFilter incidents using 'odata' query.Optional

Context Output#

PathTypeDescription
MsGraph.Incident.assignedTostringOwner of the incident, or null if no owner is assigned. Free editable text.
MsGraph.Incident.classificationstringThe specification for the incident. Possible values are unknown, falsePositive, truePositive, informationalExpectedActivity, unknownFutureValue.
MsGraph.Incident.commentsstringArray of comments created by the Security Operations (SecOps) team when the incident is managed.
MsGraph.Incident.createdDateTimedateTime when the incident was first created.
MsGraph.Incident.customTagsstringArray of custom tags associated with an incident.
MsGraph.Incident.descriptionstringDescription of the incident.
MsGraph.Incident.determinationstringSpecifies the determination of the incident. Possible values are unknown, apt, malware, securityPersonnel, securityTesting, unwantedSoftware, other, multiStagedAttack, compromisedUser, phishing, maliciousUserActivity, clean, insufficientData, confirmedUserActivity, lineOfBusinessApplication, unknownFutureValue.
MsGraph.Incident.displayNamestringThe incident name.
MsGraph.Incident.idnumberUnique identifier to represent the incident.
MsGraph.Incident.incidentWebUrlstringThe URL for the incident page in the Microsoft 365 Defender portal.
MsGraph.Incident.lastModifiedBystringThe identity that last modified the incident.
MsGraph.Incident.lastUpdateDateTimestringTime when the incident was last updated.
MsGraph.Incident.redirectIncidentIdstringOnly populated in case an incident is grouped with another incident, as part of the logic that processes incidents. In such a case, the status property is redirected.
MsGraph.Incident.severitystringIndicates the possible impact on assets. The higher the severity, the greater the impact. Typically higher severity items require the most immediate attention. Possible values are unknown, informational, low, medium, high, unknownFutureValue.
MsGraph.Incident.statusstringThe status of the incident. Possible values are active, resolved, inProgress, redirected, unknownFutureValue, and awaitingAction.
MsGraph.Incident.tenantIdstringThe Microsoft Entra tenant in which the alert was created.
MsGraph.Incident.systemTagsstringThe system tags associated with the incident.

Command example#

!msg-list-security-incident limit=1

Context Example#

{
"MsGraph": {
"Incident": {
"@odata.count": 26176,
"value": [
{
"Assigned to": null,
"Classification": "unknown",
"Created date time": "2024-03-19T08:08:33.2533333Z",
"Custom tags": "",
"Determination": "unknown",
"Display name": "DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min) involving one user",
"Severity": "medium",
"Status": "active",
"System tags": "",
"Updated date time": "2024-03-19T08:08:33.36Z",
"id": "12345"
}
]
}
}
}

Human Readable Output#

Incidents:#

Display nameidSeverityStatusAssigned toCustom tagsSystem tagsClassificationDeterminationCreated date timeUpdated date time
DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min) involving one user12345mediumactiveunknownunknown2024-03-19T08:08:33.2533333Z2024-03-19T08:08:33.36Z

msg-update-security-incident#


Update the incident with the given ID.

Base Command#

msg-update-security-incident

Input#

Argument NameDescriptionRequired
incident_idIncident's ID.Required
statusCategorize incidents (as Active, Resolved, or Redirected). Possible values are: active, resolved, redirected, unknownFutureValue.Optional
assigned_toOwner of the incident.Optional
determinationDetermination of the incident. Possible values are: unknown, apt, malware, securityPersonnel, unwantedSoftware, other, multiStagedAttack, compromisedUser, phishing, maliciousUserActivity, notMalicious.Optional
classificationThe specification for the incident. Possible values are: unknown, falsePositive, truePositive, informationalExpectedActivity, unknownFutureValue.Optional
custom_tagsArray of custom tags associated with an incident.Optional
timeoutThe time limit in seconds for the http request to run. Default is 50.Optional

Context Output#

PathTypeDescription
MsGraph.Incident.assignedToStringOwner of the incident, or null if no owner is assigned. Free editable text.
MsGraph.Incident.classificationStringThe specification for the incident. Possible values are unknown, falsePositive, truePositive, informationalExpectedActivity, unknownFutureValue.
MsGraph.Incident.commentsStringArray of comments created by the Security Operations (SecOps) team when the incident is managed.
MsGraph.Incident.createdDateTimeDateTime when the incident was first created.
MsGraph.Incident.customTagsStringArray of custom tags associated with an incident.
MsGraph.Incident.descriptionStringDescription of the incident.
MsGraph.Incident.determinationStringSpecifies the determination of the incident. Possible values are unknown, apt, malware, securityPersonnel, securityTesting, unwantedSoftware, other, multiStagedAttack, compromisedUser, phishing, maliciousUserActivity, clean, insufficientData, confirmedUserActivity, lineOfBusinessApplication, unknownFutureValue.
MsGraph.Incident.displayNameStringThe incident name.
MsGraph.Incident.idStringUnique identifier to represent the incident.
MsGraph.Incident.incidentWebUrlStringThe URL for the incident page in the Microsoft 365 Defender portal.
MsGraph.Incident.lastModifiedByStringThe identity that last modified the incident.
MsGraph.Incident.lastUpdateDateTimeDateTime when the incident was last updated.
MsGraph.Incident.redirectIncidentIdStringOnly populated in case an incident is grouped with another incident, as part of the logic that processes incidents. In such a case, the status property is redirected.
MsGraph.Incident.severityStringIndicates the possible impact on assets. The higher the severity, the greater the impact. Typically higher severity items require the most immediate attention. Possible values are unknown, informational, low, medium, high, unknownFutureValue.
MsGraph.Incident.statusStringThe status of the incident. Possible values are active, resolved, inProgress, redirected, unknownFutureValue, and awaitingAction.
MsGraph.Incident.tenantIdStringThe Microsoft Entra tenant in which the alert was created.
MsGraph.Incident.systemTagsString collectionThe system tags associated with the incident.

Command example#

!msg-update-security-incident incident_id=12345

Context Example#

{
"MsGraph": {
"Incidents": {
"assignedTo": "test5",
"classification": "unknown",
"comments": [],
"createdDateTime": "2024-03-17T15:50:31.9033333Z",
"customTags": [],
"description": null,
"determination": "unknown",
"displayName": "Exfiltration incident involving one user",
"id": "12345",
"incidentWebUrl": "https://security.microsoft.com/incidents/12345?tid=abc123",
"lastModifiedBy": "Microsoft 365 Defender-AlertCorrelation",
"lastUpdateDateTime": "2024-03-19T07:24:34.7066667Z",
"redirectIncidentId": null,
"severity": "medium",
"status": "active",
"systemTags": [],
"tenantId": "abc123"
}
}
}

Human Readable Output#

Updated incident No. 12345:#

Display nameidSeverityStatusAssigned toCustom tagsSystem tagsClassificationDeterminationCreated date timeUpdated date time
Exfiltration incident involving one user12345mediumactivetest5unknownunknown2024-03-17T15:50:31.9033333Z2024-03-19T07:24:34.7066667Z