Skip to content

Added new 'user_has_signed_into_explorer' element to ntuser state/item per #306#323

Open
vanderpol wants to merge 5 commits into
5.12.3_developfrom
306-update-windows-ntuser-test-to-add-new-itemstate-entity-user_has_signed_into_explorer-to-allow-filtering-out-of-non-interactive-user-profiles
Open

Added new 'user_has_signed_into_explorer' element to ntuser state/item per #306#323
vanderpol wants to merge 5 commits into
5.12.3_developfrom
306-update-windows-ntuser-test-to-add-new-itemstate-entity-user_has_signed_into_explorer-to-allow-filtering-out-of-non-interactive-user-profiles

Conversation

@vanderpol
Copy link
Copy Markdown
Member

Added new element to state/item which allows content authors to filter out users that have not logged in interactively and can be a source of false negatives, as this partial profile does not receive GPO's

@vanderpol vanderpol added this to the 5.12.3 milestone May 14, 2026
Copy link
Copy Markdown

@solind solind left a comment

Choose a reason for hiding this comment

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

Can't this test already just be implemented as a relatively straightforward ntuser_test?

@vanderpol
Copy link
Copy Markdown
Member Author

This is for filtering out the entire ntuser.dat from being in scope for other tests, which I don't think we could without it being part of the item/state

@solind
Copy link
Copy Markdown

solind commented May 18, 2026

Oh.

Well, you could do it using an object, and then a filter using a state and entity var_ref that points to something in that object like the SID. But I confess that would be cumbersome to author by hand.

@vanderpol
Copy link
Copy Markdown
Member Author

@solind I would agree that it's quite likely possible, but combersome for sure, and no new content author would ever think to do it. Adding it to the item/state makes it trivial and understandable from a content author perspective, with very little R&D on the application side.

@vanderpol vanderpol requested a review from solind May 19, 2026 10:20
vanderpol added 2 commits May 21, 2026 11:28
…add-new-itemstate-entity-user_has_signed_into_explorer-to-allow-filtering-out-of-non-interactive-user-profiles
@vanderpol
Copy link
Copy Markdown
Member Author

@balleman-ctr given your comment on issue #306, I'd like your review of the PR if possible, so we can proceed with it.

Comment thread oval-schemas/windows-definitions-schema.xsd Outdated
@vanderpol vanderpol requested a review from balleman-ctr May 21, 2026 19:09
@vanderpol
Copy link
Copy Markdown
Member Author

@solind and @balleman-ctr I'm wondering if this could be better implemented as a behavior? Probably eaiser and faster for content authors vs filtering with a state, as I'm not sure how much value the item element really has to end users?

I don't have a strong opinion either way, but we could add

exclude_users_never_signed_into_explorer = "true" with the default being false.

@solind
Copy link
Copy Markdown

solind commented May 22, 2026

@vanderpol that's an interesting idea as well -- and even simpler to implement as a filter.

I feel the need to ask... "Windows Explorer" is not the thing now known as the Edge browser, is it? Do you mean "Windows File Explorer"?

@vanderpol
Copy link
Copy Markdown
Member Author

Good catch, I didn't realize Windows Explorer (not Internet Explorer) is now officially Windows File Explorer. I'll change either the new element or behavior if we come to consensus and approval

@vanderpol
Copy link
Copy Markdown
Member Author

@balleman-ctr or @jspearman19 any thoughts on a new behavior, vs a new element to use in a filter?

@g-burkholder
Copy link
Copy Markdown

On the behavior vs filter question - I think we could work with either - but I'd lean toward a filter. The reason is that we already use ntuser_states to filter out disabled users and user profiles not modified in 35 days. So I see adding another filter as more readable than having a filter-like behavior, but then still having two filters. @balleman-ctr or @jspearman19 , let me know if you disagree.

@balleman-ctr
Copy link
Copy Markdown

I lean towards adding as a state/item element (filter approach) over behavior. This lets us collect and see that piece of information, which would be helpful while troubleshooting.

As for “Windows File Explorer” vs “Windows Explorer”, the file description on explorer.exe is still “Windows Explorer” (at least for me on Win11 25H2). I wonder if the “File Explorer” label in the "start" menu is more of a user convenience than a formal name change. The aspect we’re concerned with is its role as the default Windows shell. Alternatively, we could describe it as explorer.exe instead; maybe they will be less likely to change that over time.

@vanderpol
Copy link
Copy Markdown
Member Author

It appears the consensus is for it to remain as an element, with plans to use it as a filter. As for Windows File Explorer vs Windows Explorer, based on @balleman-ctr suggestion, would this text update suffice?

"The user_has_signed_into_explorer element describes if the user account has ever executed explorer.exe"

@balleman-ctr
Copy link
Copy Markdown

@vanderpol, the change makes sense to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants