Windows 10中还有其他类似的标识符和概念
Windows 10中还有其他类似的标识符和概念。以下是一些常见的:
-
用户名(Username):每个用户在系统中都有一个唯一的用户名,用于登录和识别用户身份。
-
用户ID(User ID):每个用户在系统中都有一个唯一的用户ID,用于在系统级别上标识用户。Windows系统中使用的是SID(Security Identifier)来唯一标识用户
-
组(Group):组是一种将多个用户集合在一起的机制。每个组都有一个唯一的组ID。
-
组ID(Group ID):每个组在系统中都有一个唯一的组ID,用于在系统级别上标识组。
-
计算机名(Computer Name):计算机名是给计算机分配的唯一标识符,用于在网络中识别计算机。
-
主机名(Host Name):主机名是计算机在网络中的名称,用于标识特定的计算机。
-
IP地址(IP Address):IP地址是用于在网络中标识计算机的数字标识符。
-
文件名(File Name):文件名是用于在文件系统中标识特定文件的名称。
-
文件路径(File Path):文件路径指定了文件在文件系统中的位置,包括目录和文件名。
-
注册表项(Registry Key):注册表项是Windows操作系统中用于存储配置信息的数据库条目。
-
进程ID(Process ID):每个正在运行的程序都有一个唯一的进程ID,用于在系统中标识该进程。
-
服务名(Service Name):服务名是用于标识在系统中运行的服务的名称。
-
窗口句柄(Window Handle):窗口句柄是用于在Windows系统中标识窗口的唯一标识符。
-
MAC地址(MAC Address):MAC地址是用于在网络中标识网络适配器的物理地址。
-
端口号(Port Number):端口号是在网络通信中用于标识应用程序或服务的数字标识符。
-
UNC路径(UNC Path):UNC路径是一种用于在网络中标识共享文件夹的路径格式。
-
连接句柄(Connection Handle):连接句柄是用于在Windows中标识网络连接的唯一标识符。
-
图像句柄(Image Handle):图像句柄是用于在Windows中标识正在运行的程序的图像的唯一标识符。
-
GUID(Globally Unique Identifier):全局唯一标识符,用于在系统中唯一标识对象或实体。
-
文件描述符(File Descriptor):在操作系统中用于标识已打开文件的整数值。
-
线程ID(Thread ID):每个线程在系统中都有一个唯一的线程ID,用于标识特定线程。
-
COM对象标识符(COM Object Identifier):用于在Component Object Model (COM) 中标识COM对象的唯一标识符。
-
窗口类名(Window Class Name):用于在Windows系统中标识窗口类的名称。
-
驱动器号(Drive Letter):在Windows系统中用于标识存储设备或磁盘分区的字母。
-
事件ID(Event ID):在Windows系统中用于标识特定事件的唯一标识符。
-
系统错误码(System Error Code):在Windows系统中用于标识特定系统错误的数字代码。
-
计算机描述符(Computer Descriptor):在Windows系统中用于描述计算机的信息,例如操作系统版本、硬件配置等。
-
DLL名称(DLL Name):动态链接库文件名,用于在Windows系统中标识特定的DLL文件。
-
计算机名(Computer Name):用于在网络中标识计算机的名称。
-
用户名(User Name):用于在系统中标识用户的名称。
-
注册表项值(Registry Value):注册表中存储的配置信息的键值对。
-
程序包名(Package Name):用于标识Windows应用程序包的名称。
-
错误日志条目(Error Log Entry):记录在系统日志中的错误信息条目。
-
文件路径(File Path):用于在文件系统中标识文件或文件夹的路径。
-
注册表键(Registry Key):注册表中存储的配置信息的分类标识。
-
IP地址(IP Address):用于在网络中标识设备的唯一地址。
-
系统环境变量(System Environment Variable):在操作系统中定义的全局变量,用于配置系统行为和应用程序运行。
-
进程ID(Process ID):每个运行的进程在系统中都有一个唯一的进程ID,用于标识特定进程。
Windows 用户的 SID(安全标识符)是一个唯一的标识符,用于标识系统中的每个用户账户。你可以通过多种方法查询用户的 SID,包括使用注册表、命令行工具和 PowerShell 命令。下面是如何通过这些方法查询用户 SID 的步骤:
1. 通过注册表查询用户 SID
在 Windows 注册表中,你可以找到用户 SID 信息。SID 存储在以下位置:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
每个子键对应一个用户 SID,并且键值 ProfileImagePath 存储了与该 SID 关联的用户配置文件路径。
步骤:
- 打开 注册表编辑器(按
Win + R,输入regedit,然后回车)。 - 导航到
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList。 - 查找各个子键(每个子键的名称是 SID),并查看
ProfileImagePath键对应的路径。
通过注册表,你可以找到每个用户的 SID。
2. 通过 CMD 命令查询用户 SID
在命令行中,使用 wmic 或 whoami 命令来查询当前用户或其他用户的 SID。
2.1 查询当前用户的 SID:
使用 whoami 命令与 SID 参数来查询当前用户的 SID。
whoami /user
这会显示当前用户的用户名和 SID。
2.2 查询特定用户名的 SID:
如果你想查询其他用户的 SID,可以使用 wmic 命令:
wmic useraccount where name='用户名' get sid
替换 用户名 为你想查询的用户的用户名。
例如,如果你想查询 Administrator 用户的 SID:
wmic useraccount where name='Administrator' get sid
3. 通过 PowerShell 查询用户 SID
在 PowerShell 中,使用 Get-LocalUser 或 Get-WmiObject 来查询本地用户的 SID。
3.1 查询当前用户的 SID:
可以通过以下 PowerShell 命令查询当前用户的 SID:
([System.Security.Principal.WindowsIdentity]::GetCurrent()).User.Value
这会返回当前登录用户的 SID。
3.2 查询指定用户名的 SID:
使用 Get-LocalUser 命令查询本地用户的 SID:
Get-LocalUser -Name "用户名" | Select-Object Name, SID
替换 用户名 为你想查询的用户。
例如,查询 Administrator 用户的 SID:
Get-LocalUser -Name "Administrator" | Select-Object Name, SID
3.3 使用 Get-WmiObject 查询用户 SID:
你也可以使用 Get-WmiObject 查询特定用户的 SID:
Get-WmiObject -Class Win32_UserAccount -Filter "Name='用户名'" | Select-Object Name, SID
总结
- 注册表查询:通过
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList查找用户 SID。 - CMD 查询:使用
whoami /user查询当前用户的 SID,或使用wmic useraccount查询其他用户的 SID。 - PowerShell 查询:通过
Get-LocalUser或Get-WmiObject命令查询本地用户的 SID。
这些方法都可以有效地帮助你查询到 Windows 用户的 SID。
# 获取当前用户的用户名
$env:USERNAME
# 获取当前用户的SID
$SID = (New-Object System.Security.Principal.NTAccount($env:USERDOMAIN, $env:USERNAME)).Translate([System.Security.Principal.SecurityIdentifier]).Value
$SID
PowerShell中,您可以使用以下命令来查看所有用户的SID:
# 获取本地计算机上所有用户的SID
$users = Get-WmiObject -Query "Select * From Win32_UserAccount"
foreach ($user in $users) {
$username = $user.Name
$sid = $user.SID
Write-Host "Username: $username, SID: $sid"
}
这个命令将获取本地计算机上所有用户的SID,并将它们的用户名和SID输出到控制台。请注意,此命令需要以管理员权限运行才能获取完整的用户信息。
PowerShell查看当前用户所属的用户组信息,可以使用以下命令:
# 获取当前用户所属的所有用户组
$groups = [System.Security.Principal.WindowsIdentity]::GetCurrent().Groups
# 输出用户组信息
foreach ($group in $groups) {
$groupName = $group.Translate([System.Security.Principal.NTAccount]).Value
Write-Host "Group: $groupName"
}
这个命令将输出当前用户所属的所有用户组信息。
PowerShell中,您可以使用以下命令来查看计算机名称(Computer Name):
# 获取计算机名称
$computerName = $env:COMPUTERNAME
$computerName
这个命令将输出当前计算机的名称。您可以直接在PowerShell中运行这个命令,并查看输出结果即可得知当前计算机的名称。
PowerShell中,您可以使用以下命令生成一个新的GUID(Globally Unique Identifier):
# 生成一个新的GUID
New-Guid
运行上述命令将在控制台中生成一个新的GUID,并将其显示出来。GUID是一种唯一标识符,通常用于标识对象或实体,在许多情况下被用于确保全局唯一性。
如果您想将生成的GUID保存到变量中以便后续使用,可以将命令修改为:
# 生成一个新的GUID并保存到变量
$guid = [System.Guid]::NewGuid()
$guid
这样生成的GUID将保存在变量 $guid 中,并可以随时访问。
PowerShell 中,您可以使用以下命令查询本地计算机的 UUID(Universally Unique Identifier):
# 查询本地计算机的 UUID
(Get-WmiObject Win32_ComputerSystemProduct).UUID
这个命令将返回本地计算机的 UUID。如果您需要查询远程计算机的 UUID,可以将命令修改为:
# 查询远程计算机的 UUID
(Get-WmiObject Win32_ComputerSystemProduct -ComputerName "remoteComputerName").UUID
其中,“remoteComputerName”是远程计算机的名称或IP地址。这个命令将返回远程计算机的 UUID。
GUID(Globally Unique Identifier)是一种全局唯一标识符,也称为UUID(Universally Unique Identifier)。它是一个128位的数字标识符,通常以字符串形式表示。GUID的生成是基于算法和计算机主机的唯一标识信息,因此在理论上,它在全球范围内是唯一的。
GUID的主要目的是用于标识对象或实体,确保其在不同系统、不同时间和不同环境中的唯一性。以下是一些常见的用途:
- 数据库记录标识:在数据库中,GUID可以用作主键,确保记录的唯一性,无论记录是在单个数据库还是不同数据库之间进行操作。
- 软件开发:GUID在软件开发中广泛应用。例如,它可以用于标识组件、类、接口、文件等,确保其唯一性,避免命名冲突。
- 全球唯一标识:由于GUID的全局唯一性,它被用于创建全局唯一的标识符。例如,在分布式系统中,可以使用GUID作为节点或实体的唯一标识。
- 文档和资源标识:GUID可用于唯一标识文档、资源或文件,以便进行跟踪、索引和引用。
- 唯一性约束:GUID可用于在系统中创建唯一性约束,确保某些值的唯一性,如订单号、用户标识等。
GUID是一种用于确保全球范围内的唯一性的标识符。它在许多领域中被广泛应用,以解决唯一性标识和避免命名冲突的问题。

浙公网安备 33010602011771号