Skip to content

[MS-1223] Enrolment record repository access prevented in sync info after project ID erased#1439

Merged
alex-vt merged 1 commit into
release/2025.4.0from
compromised-after-logout-crash-fix
Nov 3, 2025
Merged

[MS-1223] Enrolment record repository access prevented in sync info after project ID erased#1439
alex-vt merged 1 commit into
release/2025.4.0from
compromised-after-logout-crash-fix

Conversation

@alex-vt
Copy link
Copy Markdown
Contributor

@alex-vt alex-vt commented Oct 30, 2025

JIRA ticket
Will be released in: 2025.4.0

Root cause analysis (for bugfixes only)

First known affected version: 2025.4.0

  • A record counter in sync info pulls data from the enrolment record repository, that in turn needs a non-blank projectID. If a device marked as compromised is automatically logged out, the enrolment record repository no longer has a projectID for the short moment before the logged out state fully propagates to the sync UI, and throws an exception that leads to a crash.

Notable changes

  • Enrolment record repository access prevented in sync info after project ID erased

Testing guidance

  • Have a device logged in
  • Mark the device as compromised
  • Refresh config in the Settings
  • Navigate to the dashboard and/or to the sync settings
  • The device will be logged out automatically, without a crash

Additional work checklist

  • Effect on other features and security has been considered
  • Design document marked as "In development" (if applicable)
  • External (Gitbook) and internal (Confluence) Documentation is up to date (or ticket created)
  • Test cases in Testiny are up to date (or ticket created)
  • Other teams notified about the changes (if applicable)

@sonarqubecloud
Copy link
Copy Markdown


val recordsTotal = when {
isEventSyncInProgress -> null
projectId.isBlank() -> null // without project ID, repository access attempts will throw an exception
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can it also be null in some cases?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

authStore.signedInProjectId returns a non-null string.


val recordsTotal = when {
isEventSyncInProgress -> null
projectId.isBlank() -> null // without project ID, repository access attempts will throw an exception
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

authStore.signedInProjectId returns a non-null string.

@alex-vt alex-vt merged commit 50b098c into release/2025.4.0 Nov 3, 2025
13 checks passed
@alex-vt alex-vt deleted the compromised-after-logout-crash-fix branch November 3, 2025 09:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants