Non-interactive User Sign-in Logs

OperationNameDescriptionSampleRule
anyAny record in this table with no specific result or signal bucket filter. Every record carries OperationName = "Sign-in activity"; detections pivot on field values, not a per-action discriminator.YY
SuccessRecord with ResultType 0: the non-interactive sign-in (a token refresh or cached-token client request) completed successfully.YY
Invalid-credentialsRecord with ResultType 50126 (bad username or password) or 50056 (null password): a non-interactive client presented invalid credentials, for example a legacy mail client retrying a stale cached password.NY
Account-lockedRecord with ResultType 50053: Microsoft Entra Smart Lockout engaged after repeated sign-in failures on the account.NY
Password-expiredRecord with ResultType 50055: the account's password has expired.NY
DisabledRecord with ResultType 50057: sign-in attempted against a disabled account.NY
MFA-challengedRecord with ResultType 50074, 50076, 500121, 50079, 50072, or 53004: the flow required MFA and the client did not present a valid MFA claim.NY
Blocked-by-CARecord with ResultType 53003, 53000, 53001, 53002, 50131, 50158, or 50097: a Conditional Access policy returned a block decision for the sign-in. Code 50158 (external security challenge not satisfied) can accompany either a passed or a failed challenge, so on its own it is not conclusive of a block.NN
OtherRecord whose ResultType is not one of the codes this catalog materializes as its own bucket.YY
Identity Protection (risk)Record carrying a populated Identity Protection risk field (RiskState, RiskLevelDuringSignIn, RiskLevelAggregated, or RiskDetail). Populated only when Identity Protection is licensed (Microsoft Entra ID P2).YN
Target applicationRecord carrying AppDisplayName, AppId, or ResourceDisplayName: the application and OAuth resource the cached-token or client-credential request targeted.YY
Authentication requirementRecord carrying AuthenticationRequirement (multiFactorAuthentication or singleFactorAuthentication): whether an MFA step was required for the flow.YY
Conditional Access statusRecord carrying ConditionalAccessStatus: the status of every Conditional Access policy related to the sign-in.YN
Client app (legacy authentication)Record carrying ClientAppUsed: app auth details distinguishing legacy clients (Exchange ActiveSync and other older clients) from modern browser-based clients.YN

any: Sign-in record (AADNonInteractiveUserSignInLogs, any result)

#

Description

Any record in this table with no specific result or signal bucket filter. Every record carries OperationName = "Sign-in activity"; detections pivot on field values, not a per-action discriminator.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
event.outcome (elastic rule field)eqsuccess16 ruleselastic
azure_ad::user_type (elastic rule field)eqmember10 ruleselastic
EventType (elastic rule field)eqsign-in activity7 ruleselastic
azure_ad::app_id (elastic rule field)eq29d9ed98-a469-4536-ade2-f981bc1d605e5 ruleselastic
Active (kusto rule field)eqtrue4 ruleskusto
SigninLogs_TimeGenerated (kusto rule field)cross_field_compareExpirationDateTime4 ruleskusto
azure_ad::resource_id (elastic rule field)eq00000002-0000-0000-c000-0000000000003 ruleselastic
azure_ad::resource_id (elastic rule field)in00000003-0000-0000-c000-0000000000004 ruleselastic
security_result.action (Chronicle)eqALLOW4 ruleschronicle
ActivityType (kusto rule field)inFailedLogOn3 ruleskusto
ActivityType (kusto rule field)inLogOn3 ruleskusto
azure_ad::authentication_protocol (elastic rule field)eqdevicecode3 ruleselastic
azure_ad::authentication_requirement (elastic rule field)eqsinglefactorauthentication3 ruleselastic
azure_ad::user_principal_name (elastic rule field)is_not_null3 ruleselastic
user (kusto rule field)is_not_null3 ruleskusto

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

  • M365 or Entra ID Identity Sign-in from a Suspicious Source source high: This rule correlate Entra-ID or Microsoft 365 mail successful sign-in events with network security alerts by source address. Adversaries may trigger some network security alerts such as reputation or other anomalies before accessing cloud resources.T1078
  • Entra ID Sharepoint or OneDrive Accessed by Unusual Client source medium: Identifies when an application accesses SharePoint Online or OneDrive for Business for the first time in the tenant within a specified timeframe. This detects successful OAuth phishing campaigns, illicit consent grants, or compromised third-party applications gaining initial access to file storage. Adversaries often use malicious OAuth applications or phishing techniques to gain consent from users, allowing persistent access to organizational data repositories without traditional credential theft.T1078, T1078.004, T1098, T1098.001, T1213, T1213.002
  • Entra ID OAuth Device Code Flow with Concurrent Sign-ins source high: Identifies Entra ID device code authentication flows where multiple user agents are observed within the same session. This pattern is indicative of device code phishing, where an attacker's polling client (e.g., Python script) and the victim's browser both appear in the same authentication session. In legitimate device code flows, the user authenticates via browser while the requesting application polls for tokens - when these have distinctly different user agents (e.g., Python Requests vs Chrome), it may indicate the code was phished and redeemed by an attacker.T1078, T1078.004, T1528, T1566, T1566.002

Splunk #

Kusto #

YARA-L #

Panther #

  • Microsoft Entra ID First Time Seen Device Code Authentication source: Detects when users authenticate via device code flow for the first time in the past 14 days. Device code flow can be exploited through phishing attacks to steal tokens and impersonate victims. This baseline detection helps identify new device code usage patterns that may indicate account compromise.
  • Azure Device Code Authentication with Broker Client source medium: Detects device code authentication using the Microsoft Broker Client application, which may indicate Primary Refresh Token (PRT) abuse. Device code flow allows adversaries to trick users into entering codes on attacker-controlled applications. When combined with Microsoft Broker Client (app ID 29d9ed98-a469-4536-ade2-f981bc1d605e), this may indicate PRT theft or replay attacks that bypass MFA and Conditional Access policies.T1078, T1078.004, T1550, T1550.001, T1566, T1566.002
  • Azure Excessive Account Lockouts source high: Detects high volumes of failed Microsoft Entra ID sign-in attempts resulting in account lockouts, indicating potential brute-force credential attacks such as password spraying, password guessing, or credential stuffing. When adversaries repeatedly attempt authentication with incorrect credentials, Entra ID Smart Lockout policies trigger account lockouts (error code 50053).T1110, T1110.001, T1110.003, T1110.004

Success: Successful sign-in

#

Description

Record with ResultType 0: the non-interactive sign-in (a token refresh or cached-token client request) completed successfully.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
ResultType (kusto rule field)eq04 ruleskusto
ResultType (kusto rule field)in01 rulekusto
ResultType (kusto rule field)in500741 rulekusto
ResultType (kusto rule field)in500761 rulekusto
AppId (kusto rule field)is_not_null2 ruleskusto
Anomalies (kusto rule field)gt01 rulekusto
action (splunk rule field)eqsuccess1 rulesplunk
azure.signinlogs.properties.device_detail.is_managed (elastic rule field)netrue1 ruleelastic
azure.signinlogs.properties.incoming_token_type (elastic rule field)eqprimaryRefreshToken1 ruleelastic
azure.signinlogs.properties.incoming_token_type (elastic rule field)eqrefreshToken1 ruleelastic
azure.signinlogs.properties.is_interactive (elastic rule field)eqtrue1 ruleelastic
azure.signinlogs.properties.token_protection_status_details.sign_in_session_status (elastic rule field)equnbound1 ruleelastic
azure.signinlogs.result_signature (elastic rule field)eqSUCCESS1 ruleelastic
azure_ad::app_id (elastic rule field)eq29d9ed98-a469-4536-ade2-f981bc1d605e1 ruleelastic
azure_ad::resource_display_name (elastic rule field)neDevice Registration Service1 ruleelastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

  • Entra ID AiTM Phishing-Kit Chain Detected source high: Identifies a Microsoft Entra ID identity-compromise chain in which a single user, within a 10-minute window, authenticates to the Device Registration Service through the Microsoft Authentication Broker (MAB) client, registers a device, and then uses the resulting Primary Refresh Token (PRT) to access a resource other than the Device Registration Service. This sequence is the core post-adversary-in-the-middle (AiTM) persistence pattern used by phishing kits such as Tycoon2FA and Kali365: after capturing a victim session, the kit registers an Azure AD-joined device to obtain a device-bound PRT, which survives user-level session revocation and password resets and grants trusted, MFA-free access. Correlating the broker sign-in, the device-registration audit event, and the follow-on PRT sign-in for the same user within a short window is a high-fidelity indicator of active account takeover.T1078, T1078.004, T1098, T1098.005, T1528, T1550↳ also matches Target application: Sign-in naming a target application

Splunk #

  • Azure AD Concurrent Sessions From Different Ips source: The following analytic detects an Azure AD account with concurrent sessions originating from multiple unique IP addresses within a 5-minute window. It leverages Azure Active Directory NonInteractiveUserSignInLogs to identify this behavior…T1185

Kusto #

Invalid-credentials: Sign-in with invalid credentials

#

Description

Record with ResultType 50126 (bad username or password) or 50056 (null password): a non-interactive client presented invalid credentials, for example a legacy mail client retrying a stale cached password.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
aws::userAgent (elastic rule field)nemozilla/5.0 (compatible; msal 1.0) pkeyauth/1.02 ruleselastic
azure_ad::result_type (elastic rule field)in1200002 ruleselastic
azure_ad::result_type (elastic rule field)in1200022 ruleselastic
azure_ad::result_type (elastic rule field)in1200202 ruleselastic
azure_ad::result_type (elastic rule field)in500342 ruleselastic
azure_ad::result_type (elastic rule field)in500552 ruleselastic
azure_ad::result_type (elastic rule field)in500562 ruleselastic
azure_ad::result_type (elastic rule field)in500572 ruleselastic
azure_ad::result_type (elastic rule field)in500642 ruleselastic
azure_ad::result_type (elastic rule field)in500762 ruleselastic
azure_ad::result_type (elastic rule field)in500792 ruleselastic
azure_ad::result_type (elastic rule field)in501052 ruleselastic
azure_ad::result_type (elastic rule field)in501262 ruleselastic
azure_ad::result_type (elastic rule field)in501352 ruleselastic
azure_ad::result_type (elastic rule field)in501422 ruleselastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Account-locked: Sign-in blocked by account lockout

#

Description

Record with ResultType 50053: Microsoft Entra Smart Lockout engaged after repeated sign-in failures on the account.

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Password-expired: Sign-in blocked by expired password

#

Description

Record with ResultType 50055: the account's password has expired.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
aws::userAgent (elastic rule field)nemozilla/5.0 (compatible; msal 1.0) pkeyauth/1.02 ruleselastic
azure_ad::result_type (elastic rule field)in1200002 ruleselastic
azure_ad::result_type (elastic rule field)in1200022 ruleselastic
azure_ad::result_type (elastic rule field)in1200202 ruleselastic
azure_ad::result_type (elastic rule field)in500342 ruleselastic
azure_ad::result_type (elastic rule field)in500552 ruleselastic
azure_ad::result_type (elastic rule field)in500562 ruleselastic
azure_ad::result_type (elastic rule field)in500572 ruleselastic
azure_ad::result_type (elastic rule field)in500642 ruleselastic
azure_ad::result_type (elastic rule field)in500762 ruleselastic
azure_ad::result_type (elastic rule field)in500792 ruleselastic
azure_ad::result_type (elastic rule field)in501052 ruleselastic
azure_ad::result_type (elastic rule field)in501262 ruleselastic
azure_ad::result_type (elastic rule field)in501352 ruleselastic
azure_ad::result_type (elastic rule field)in501422 ruleselastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Disabled: Sign-in attempted against a disabled account

#

Description

Record with ResultType 50057: sign-in attempted against a disabled account.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
aws::userAgent (elastic rule field)nemozilla/5.0 (compatible; msal 1.0) pkeyauth/1.02 ruleselastic
azure_ad::result_type (elastic rule field)in1200002 ruleselastic
azure_ad::result_type (elastic rule field)in1200022 ruleselastic
azure_ad::result_type (elastic rule field)in1200202 ruleselastic
azure_ad::result_type (elastic rule field)in500342 ruleselastic
azure_ad::result_type (elastic rule field)in500552 ruleselastic
azure_ad::result_type (elastic rule field)in500562 ruleselastic
azure_ad::result_type (elastic rule field)in500572 ruleselastic
azure_ad::result_type (elastic rule field)in500642 ruleselastic
azure_ad::result_type (elastic rule field)in500762 ruleselastic
azure_ad::result_type (elastic rule field)in500792 ruleselastic
azure_ad::result_type (elastic rule field)in501052 ruleselastic
azure_ad::result_type (elastic rule field)in501262 ruleselastic
azure_ad::result_type (elastic rule field)in501352 ruleselastic
azure_ad::result_type (elastic rule field)in501422 ruleselastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

MFA-challenged: Sign-in with an incomplete or failed MFA challenge

#

Description

Record with ResultType 50074, 50076, 500121, 50079, 50072, or 53004: the flow required MFA and the client did not present a valid MFA claim.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
aws::userAgent (elastic rule field)nemozilla/5.0 (compatible; msal 1.0) pkeyauth/1.02 ruleselastic
azure_ad::result_type (elastic rule field)in1200002 ruleselastic
azure_ad::result_type (elastic rule field)in1200022 ruleselastic
azure_ad::result_type (elastic rule field)in1200202 ruleselastic
azure_ad::result_type (elastic rule field)in500342 ruleselastic
azure_ad::result_type (elastic rule field)in500552 ruleselastic
azure_ad::result_type (elastic rule field)in500562 ruleselastic
azure_ad::result_type (elastic rule field)in500572 ruleselastic
azure_ad::result_type (elastic rule field)in500642 ruleselastic
azure_ad::result_type (elastic rule field)in500762 ruleselastic
azure_ad::result_type (elastic rule field)in500792 ruleselastic
azure_ad::result_type (elastic rule field)in501052 ruleselastic
azure_ad::result_type (elastic rule field)in501262 ruleselastic
azure_ad::result_type (elastic rule field)in501352 ruleselastic
azure_ad::result_type (elastic rule field)in501422 ruleselastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Kusto #

Blocked-by-CA: Sign-in blocked by Conditional Access

#

Description

Record with ResultType 53003, 53000, 53001, 53002, 50131, 50158, or 50097: a Conditional Access policy returned a block decision for the sign-in. Code 50158 (external security challenge not satisfied) can accompany either a passed or a failed challenge, so on its own it is not conclusive of a block.

Other: Sign-in with another recorded result

#

Description

Record whose ResultType is not one of the codes this catalog materializes as its own bucket.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "Microsoft Office 365 Portal",
  "AppId": "00000006-0000-0ff1-ce00-000000000000",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:54:33.8519838+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "00000006-0000-0ff1-ce00-000000000000",
    "5837b17e-2290-43f1-aabd-c49dd6f02e78"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "a2d3c0f9-46c3-4563-950c-1733d9f1d040",
  "CreatedDateTime": "2026-07-25T15:54:33.8519838Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "e3279fd7-150d-4b7a-9800-a83b18431100",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "e3279fd7-150d-4b7a-9800-a83b18431100",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "73",
  "ResourceDisplayName": "Profile Service PROD",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "5837b17e-2290-43f1-aabd-c49dd6f02e78",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultDescription": "The service principal for resource '{identifier}' is disabled. This indicate that a subscription within the tenant has lapsed, or that the administrator for this tenant has disabled the application, preventing tokens from being issued for it.",
  "ResultSignature": "FAILURE",
  "ResultType": "500014",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "a982479a-70f4-45cb-8790-6495238e4eed",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 500014,
    "failureReason": "The service principal for resource '{identifier}' is disabled. This indicate that a subscription within the tenant has lapsed, or that the administrator for this tenant has disabled the application, preventing tokens from being issued for it.",
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "158n4w0VekuYAKg7GEMRAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
aws::userAgent (elastic rule field)nemozilla/5.0 (compatible; msal 1.0) pkeyauth/1.02 ruleselastic
azure_ad::result_type (elastic rule field)in1200002 ruleselastic
azure_ad::result_type (elastic rule field)in1200022 ruleselastic
azure_ad::result_type (elastic rule field)in1200202 ruleselastic
azure_ad::result_type (elastic rule field)in500342 ruleselastic
azure_ad::result_type (elastic rule field)in500552 ruleselastic
azure_ad::result_type (elastic rule field)in500562 ruleselastic
azure_ad::result_type (elastic rule field)in500572 ruleselastic
azure_ad::result_type (elastic rule field)in500642 ruleselastic
azure_ad::result_type (elastic rule field)in500762 ruleselastic
azure_ad::result_type (elastic rule field)in500792 ruleselastic
azure_ad::result_type (elastic rule field)in501052 ruleselastic
azure_ad::result_type (elastic rule field)in501262 ruleselastic
azure_ad::result_type (elastic rule field)in501352 ruleselastic
azure_ad::result_type (elastic rule field)in501422 ruleselastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Identity Protection (risk): Sign-in with an Identity Protection risk assessment

#

Description

Record carrying a populated Identity Protection risk field (RiskState, RiskLevelDuringSignIn, RiskLevelAggregated, or RiskDetail). Populated only when Identity Protection is licensed (Microsoft Entra ID P2).

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Target application: Sign-in naming a target application

#

Description

Record carrying AppDisplayName, AppId, or ResourceDisplayName: the application and OAuth resource the cached-token or client-credential request targeted.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
azure_ad::app_id (elastic rule field)eq29d9ed98-a469-4536-ade2-f981bc1d605e3 ruleselastic
AppId (kusto rule field)eqFociClientApplications2 ruleskusto
HomeTenantId (kusto rule field)cross_field_compareResourceTenantId2 ruleskusto
IncomingTokenType (kusto rule field)eqnone2 ruleskusto
IncomingTokenType (kusto rule field)nenone2 ruleskusto
SecondAppDisplayName (kusto rule field)inMicrosoft Azure CLI2 ruleskusto
SecondAppDisplayName (kusto rule field)inMicrosoft Azure PowerShell2 ruleskusto
azure.signinlogs.properties.device_detail.is_managed (elastic rule field)netrue2 ruleselastic
azure.signinlogs.properties.incoming_token_type (elastic rule field)eqprimaryRefreshToken2 ruleselastic
azure.signinlogs.properties.incoming_token_type (elastic rule field)eqrefreshToken2 ruleselastic
azure.signinlogs.properties.token_protection_status_details.sign_in_session_status (elastic rule field)equnbound2 ruleselastic
azure.signinlogs.result_signature (elastic rule field)eqSUCCESS2 ruleselastic
azure_ad::resource_display_name (elastic rule field)neDevice Registration Service2 ruleselastic
azure_ad::signin_category (elastic rule field)eqNonInteractiveUserSignInLogs2 ruleselastic
azure_ad::user_type (elastic rule field)eqMember2 ruleselastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Kusto #

  • Detect entra token request via specific BOF (IOC based) source: This might be one of the silliest detections I have created. But since there is a Beacon Object File out there which can be used to directly request Entra ID access tokens from an active beacon on a device using a specific User Agent, we can easily detect this beacon file by flagging the funny user agent and / or scope identifier that is used.T1606, T1651
  • Detect suspicious foci token logins source: FOCI tokens (Family of Client IDs tokens) are special refresh tokens that allow multiple applications within the same "family" to share authentication tokens. This means that once a user authenticates with one application, they can access other applications in the same family without needing to re-authenticate. For adversaries, these are very interesting tokens to abuse since they can access a normal application (Microsoft Teams for example), and reuse that refresh token to access another application (like Azure CLI). To detect a suspicious foci token combination, we look for all the logins using foci tokens and group them by Session ID (since these belong to the same session). Then we take the first login where no refresh token was provided, and look at the logins that used refresh tokens as incomming token types within that same session. If the second login application is one that is typically abused by adversaries and the application for the first login is a 'normal' application, we flag the event. We added a second version for this query in this repo, to also flag when an adversary is using the same application to get new access tokens but with another scope. The v2 version focusses more on RoadTool detection tho, while this detection is more broad. Some organizations have a high BP hit count on Microsoft Azure CLI. To limit those hits, you have three finetune options to enable in the query: - Only alert when first and second login has X time between each other (default 90 minutes if enabled) - Only alert on Microsoft Azure CLI when Global Administrator scope is used in token - Only alert on Microsoft Azure CLI when Global Administrator scope is used in token and request came from a non-compliant deviceT1606, T1651
  • Detect suspicious foci token logins V2 source: FOCI tokens (Family of Client IDs tokens) are special refresh tokens that allow multiple applications within the same "family" to share authentication tokens. This means that once a user authenticates with one application, they can access other applications in the same family without needing to re-authenticate. For adversaries, these are very interesting tokens to abuse since they can access a normal application (Microsoft Teams for example), and reuse that refresh token to access another application (like Azure CLI). To detect a suspicious foci token combination, we look for all the logins using foci tokens and group them by Session ID (since these belong to the same session). Then we take the first login where no refresh token was provided, and look at the logins that used refresh tokens as incomming token types within that same session. If the second login application is one that is typically abused by adversaries and the application for the first login is a 'normal' application, we flag the event. This version is the V2 version for this query in this repo, which also flags when an adversary is using the same application to get new access tokens but with another scope (compared to V1 which does not do this). The v2 version focusses more on RoadTool detection tho, while the v1 detection is more broad. Some organizations have a high BP hit count on Microsoft Azure CLI. To limit those hits, you have three finetune options to enable in the query: - Only alert when first and second login has X time between each other (default 90 minutes if enabled) - Only alert on Microsoft Azure CLI when Global Administrator scope is used in token - Only alert on Microsoft Azure CLI when Global Administrator scope is used in token and request came from a non-compliant deviceT1606, T1651

Authentication requirement: Sign-in recording an authentication requirement

#

Description

Record carrying AuthenticationRequirement (multiFactorAuthentication or singleFactorAuthentication): whether an MFA step was required for the flow.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
azure_ad::authentication_requirement (elastic rule field)eqsinglefactorauthentication2 ruleselastic
azure_ad::signin_category (elastic rule field)innoninteractiveusersigninlogs2 ruleselastic
azure_ad::signin_category (elastic rule field)insigninlogs2 ruleselastic
event.outcome (elastic rule field)eqfailure2 ruleselastic
Esql.brute_force_type (elastic rule field)neother1 ruleelastic
source.as.organization.name (elastic rule field)nemicrosoft-corp-msn-as-block1 ruleelastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

Conditional Access status: Sign-in recording a Conditional Access status

#

Description

Record carrying ConditionalAccessStatus: the status of every Conditional Access policy related to the sign-in.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

Client app (legacy authentication): Sign-in from a named client app (legacy authentication signal)

#

Description

Record carrying ClientAppUsed: app auth details distinguishing legacy clients (Exchange ActiveSync and other older clients) from modern browser-based clients.

Example Sign-in Log Entry #

{
  "AADTenantId": "11111111-1111-1111-1111-111111111111",
  "Agent": {
    "agentType": "notAgentic",
    "agentSubjectType": "notAgentic"
  },
  "AppDisplayName": "O365 Demeter",
  "AppId": "982bda36-4632-4165-a46a-9863b1bbcf7d",
  "AppOwnerTenantId": "f8cdef31-a31e-4b4a-93e4-5f571e91255a",
  "AppliedEventListeners": "None",
  "AuthenticationContextClassReferences": [],
  "AuthenticationDetails": [
    {
      "authenticationStepDateTime": "2026-07-25T15:55:22.4071391+00:00",
      "authenticationMethod": "Previously satisfied",
      "authenticationMethodDetail": "",
      "succeeded": true,
      "authenticationStepResultDetail": "MFA requirement satisfied by claim in the token",
      "authenticationStepRequirement": ""
    }
  ],
  "AuthenticationProcessingDetails": [
    {
      "key": "Legacy TLS (TLS 1.0, 1.1, 3DES)",
      "value": "False"
    },
    {
      "key": "Oauth Scope Info",
      "value": [
        "user_impersonation"
      ]
    },
    {
      "key": "Is Legacy Store Used",
      "value": "False"
    },
    {
      "key": "Is CAE Token",
      "value": "False"
    }
  ],
  "AuthenticationProtocol": "none",
  "AuthenticationRequirement": "multiFactorAuthentication",
  "AuthenticationRequirementPolicies": [
    {
      "requirementProvider": "securityDefaults",
      "detail": "Security Defaults"
    }
  ],
  "AutonomousSystemNumber": "64512",
  "Category": "NonInteractiveUserSignInLogs",
  "ClientAppUsed": "Browser",
  "ClientCredentialType": "clientAssertion",
  "ConditionalAccessAudiences": [
    "982bda36-4632-4165-a46a-9863b1bbcf7d",
    "1514f0a7-c9d3-4ce3-9048-73e754767b8d"
  ],
  "ConditionalAccessPolicies": [
    {
      "id": "SecurityDefaults",
      "displayName": "Security Defaults",
      "enforcedGrantControls": [
        "Mfa"
      ],
      "result": "success",
      "conditionsSatisfied": 3,
      "conditionsNotSatisfied": 0
    }
  ],
  "ConditionalAccessPoliciesV2": "None",
  "ConditionalAccessStatus": "notApplied",
  "CorrelationId": "224035f5-5660-456a-80ae-e0bb9fa87a15",
  "CreatedDateTime": "2026-07-25T15:55:22.4071391Z",
  "CrossTenantAccessType": "none",
  "DeviceDetail": {
    "deviceId": "",
    "operatingSystem": "MacOs",
    "browser": "Rich Client 203.0.113.10",
    "isCompliant": false,
    "isManaged": false
  },
  "DurationMs": "0",
  "HomeTenantId": "11111111-1111-1111-1111-111111111111",
  "IPAddress": "2001:db8::10",
  "Id": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "Identity": "Admin User",
  "IncomingTokenType": "none",
  "IsInteractive": "False",
  "IsRisky": "None",
  "IsTenantRestricted": "False",
  "IsThroughGlobalSecureAccess": "False",
  "Location": "US",
  "LocationDetails": {
    "city": "Redacted",
    "state": "Redacted",
    "countryOrRegion": "US",
    "geoCoordinates": {
      "latitude": 0.0,
      "longitude": 0.0
    }
  },
  "OperationName": "Sign-in activity",
  "OperationVersion": "1.0",
  "OriginalRequestId": "6d296213-4cca-4ae0-82fd-b5fa816e1f00",
  "OriginalTransferMethod": "none",
  "ProcessingTimeInMs": "101",
  "ResourceDisplayName": "M365 Commerce Management",
  "ResourceGroup": "Microsoft.aadiam",
  "ResourceIdentity": "1514f0a7-c9d3-4ce3-9048-73e754767b8d",
  "ResourceTenantId": "11111111-1111-1111-1111-111111111111",
  "ResultSignature": "SUCCESS",
  "ResultType": "0",
  "RiskDetail": "none",
  "RiskEventTypes": [],
  "RiskLevelAggregated": "none",
  "RiskLevelDuringSignIn": "none",
  "RiskState": "none",
  "ServicePrincipalId": "f3a67490-8317-417b-b3e6-3aa07d654618",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "SessionLifetimePolicies": [],
  "SignInEventTypes": [
    "nonInteractiveUser"
  ],
  "Status": {
    "errorCode": 0,
    "additionalDetails": "MFA requirement satisfied by claim in the token"
  },
  "TokenIssuerType": "AzureAD",
  "TokenProtectionStatusDetails": {
    "signInSessionStatus": "none",
    "signInSessionStatusCode": 1002
  },
  "UniqueTokenIdentifier": "E2IpbcpM4EqC_bX6gW4fAA",
  "UserDisplayName": "Admin User",
  "UserId": "aaaaaaaa-0000-0000-0000-000000000001",
  "UserPrincipalName": "adminuser@example.onmicrosoft.com",
  "UserType": "Member"
}

References #