SCCM Query for local Admin

Arni 116 Reputation points
2021-07-29T22:26:04.767+00:00

Hello, I need assistance in generating report to show Local Admin users in our Windows 7 Windows 10, and Windows Servers environment. I need to compile these to place a security rules. The report should also show the name of the computer or the FQDN.

Any help is greatly appreciated, thanks.

We're using SCCM 2012.

Microsoft Security Intune Configuration Manager Other
{count} votes

Accepted answer
  1. Amandayou-MSFT 11,156 Reputation points
    2021-07-30T02:46:24.64+00:00

    Hi @Arni ,

    We could use SCCM CMPivot Query to find local administrator accounts.

    Use the below SCCM CMPivot query to find local administrator accounts. Enter the query and click Run Query.
    Administrators | where Name !contains 'Administrator' and Name !contains 'Domain Admins'

    For more information, please refer to Prajwal Desai's article:
    Find Local Administrator Accounts with SCCM CMPivot Query
    Note: Non-Microsoft link, just for the reference.


    If the response is helpful, please click "Accept Answer" and upvote it.
    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


7 additional answers

Sort by: Most helpful
  1. Paolo Bragagni 1 Reputation point
    2021-12-01T15:22:40.877+00:00

    It seems that it never goes though the part where you check for Enable or disable
    if ( ($ReturnedValues.PrincipalSource -eq 'Local') -and ($ReturnedValues.ObjectClass -eq 'User')) {
    ecc ecc

    perhaps because of language?
    'User'->'Utente'

    in CMLocalGroupMembers.log
    I found everything but enable/disable

    part of log:

    <![LOG[Type: Local
    ]LOG]!><time="09:47:27.040704" date="12-1-2021" component="ff33ae1c-b473-4ffe-8267-b73bd39c9735.ps1" context="NT AUTHORITY\SYSTEM" type="1" thread="8" file="">
    <![LOG[Group: Administrators
    ]LOG]!><time="09:47:27.122001" date="12-1-2021" component="ff33ae1c-b473-4ffe-8267-b73bd39c9735.ps1" context="NT AUTHORITY\SYSTEM" type="1" thread="8" file="">
    <![LOG[Account or nested group Inside: myname
    ]LOG]!><time="09:47:27.163759" date="12-1-2021" component="ff33ae1c-b473-4ffe-8267-b73bd39c9735.ps1" context="NT AUTHORITY\SYSTEM" type="1" thread="8" file="">
    <![LOG[Domain: PC-NAME
    ]LOG]!><time="09:47:27.185128" date="12-1-2021" component="ff33ae1c-b473-4ffe-8267-b73bd39c9735.ps1" context="NT AUTHORITY\SYSTEM" type="1" thread="8" file="">
    <![LOG[Category: Utente

    ]LOG]!><time="09:47:27.232527" date="12-1-2021" component="ff33ae1c-b473-4ffe-8267-b73bd39c9735.ps1" context="NT AUTHORITY\SYSTEM" type="1" thread="8" file="">

    0 comments No comments

  2. Paolo Bragagni 1 Reputation point
    2021-12-02T08:33:17.547+00:00

    Yes it was localization.

    Change that lines in:
    #Check if a Local user account is enabled or not. Make it $null to start with; just to be sure it's clean and empty.
    $Enabled = $null
    if ( ($ReturnedValues.PrincipalSource -eq 'Local') -and (($ReturnedValues.ObjectClass -eq 'User') -or ($ReturnedValues.ObjectClass -eq 'Utente'))) {


  3. Sherry Kissinger 5,526 Reputation points
    2021-12-02T14:04:51.483+00:00

    Thanks for testing! I've added a note to the original blog entry with your findings, and your work around. Perhaps I can craft a localization-agnostic method for determining a local user account enabled/disabled... Some global companies may have dozens or more localizations to consider; the script might get really messy with multiple -or statements for different possible localizations.

    But I'm glad you found the cause, and a workaround for your environment.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.