jimpiet
Goto Top

Remote den Benutzertyp eines Users herausfinden

Moin,

wenn man unter Windows 7 in die erweiterten Systemeinstellungen geht und dort unter Benutzerprofile auf Einstellungen klickt, kann man ja den Typ eines Benutzers herausfinden. Geht dies auch remote?
Knackpunkt ist, dass es sich z.T. auch um Win95 & 98 PCs handelt, sowie XP und Win7, welche über einen PDC auf Mac OSX Server verwaltet werden.
Kann man sowas per WMI herausfinden?

Viele Grüße

Content-Key: 204739

Url: https://administrator.de/contentid/204739

Printed on: April 20, 2024 at 01:04 o'clock

Member: colinardo
colinardo Apr 10, 2013 updated at 11:47:17 (UTC)
Goto Top
Hi JimPiet,
ich denke du meinst ob ein Benutzer ein "Administrator" ist oder ein "Standardbenutzer".
Dafür könntest du folgenden Befehl in einer Batch nutzen: (Benutzername der abgefragt werden soll in Zeile 1 ändern)
set BENUTZERNAME=USER
set USERTYPE=NORMAL
for /f "tokens=2 delims=*" %%i IN ('net user %BENUTZERNAME% ^| findstr "\*.*"') DO @(  
   if "%%i" == "Administraors" (set USERTYPE=ADMIN)  
)
echo %BENUTZERNAME% ist vom Typ '%USERTYPE%'  

Das Script kann man dann z.B. so erweitern das es mit PSEXEC auf dem Remote-System ausgeführt wird.

noch eine Methode mit VBS:
strComputer = "."  
username = "DeinUser"  
usertype = "NORMAL"  
Set colGroups = GetObject("WinNT://" & strComputer & "")  
colGroups.Filter = Array("group")  

For Each objGroup In colGroups
    For Each objUser in objGroup.Members
        If objUser.name = username Then
            If objGroup.Name = "Administrators" Then  
            	usertype = "ADMIN"  
            End If
        End If
    Next
Next

WScript.Echo "Benutzer " & username & " ist vom Typ: " & usertype  
Grüße Uwe
Member: DerWoWusste
DerWoWusste Apr 10, 2013 at 12:57:00 (UTC)
Goto Top
Hi.

Und noch was zur Info: auf win95/98/ME waren die Nutzertypen nicht differenziert - alle hatten volle Rechte.
Member: JimPiet
JimPiet Apr 10, 2013 at 13:06:22 (UTC)
Goto Top
Moin Uwe,

das ist denke ich auch gar nicht verkehrt, aber ich meinte, ob der User ein lokales Profil oder ein servergespeichertes Profil hat.

Viele Grüße
Member: colinardo
colinardo Apr 10, 2013 updated at 15:40:05 (UTC)
Goto Top
Ach so, sorry ...zu schnell gelesen.
Scheint nur über eine Windows-Funktion der userenv.dll zu gehen:
http://social.technet.microsoft.com/Forums/en-US/winservergen/thread/ef ...

back-to-topVB.Net Code:
Imports System
Module MainModule
    <System.Runtime.InteropServices.DllImportAttribute("userenv.dll", EntryPoint:="GetProfileType")> _  
    Public Shared Function GetProfileType(ByRef pdwflags As UInteger) As Boolean 
    End Function

    Sub Main()
    
        Const PT_LOCAL As UInteger = 0
        Const PT_TEMPORARY As UInteger = 1
        Const PT_ROAMING As UInteger = 2
        Const PT_MANDATORY As UInteger = 4
        
        Dim ProfileType As UInteger
        GetProfileType(ProfileType)
        
        Select Case ProfileType
        Case PT_LOCAL
            Console.WriteLine("Local Profile")  
        Case PT_ROAMING
            Console.WriteLine("Roaming Profile")  
        Case PT_TEMPORARY
            Console.WriteLine("Temporary Profile")  
        Case PT_MANDATORY
            Console.WriteLine("Mandatory Profile")  
        End Select
                
     End Sub

End Module

Hier eine kompilierte Konsolen-Applikation(.Net 2.0) mit dem Code > Download

Grüße Uwe
Member: colinardo
colinardo Apr 10, 2013 updated at 15:52:50 (UTC)
Goto Top
Über die Registry scheint es doch noch eine Möglichkeit zu geben:
http://www.pcreview.co.uk/forums/purpose-state-key-located-users-profil ...
Member: JimPiet
JimPiet Apr 11, 2013 at 07:55:02 (UTC)
Goto Top
Super, danke, werde ich mal ausprobieren!