【agent】静态id生成规则
一、逻辑流程:
- 程序先判断系统类型(华为云 优先级最高 其次是 citrix 再次是其他情况)
优先级高 表示 如果判断是华为云,就算citrix 有值,也认为是华为云
- 如果是华为云, 先读静态ID注册表中存储位置。
- 如果有值,使用该静态ID
- 如果没有值
- 读其他情况中静态ID 在注册表中的存储位置
- 如果有值,把该值复制到华为云在注册表中的存储位置
- 如果没有值,利用 ListOfSIDs 中的值,生成AgentID,其他的按原来方式生成,并他们写入到华云云静态ID 的存储位置
- 读其他情况中静态ID 在注册表中的存储位置
- 如果是CITRIX 先读静态ID注册表中存储位置。
- 如果有值,使用该静态ID
- 如果没有值
- 读其他情况中静态ID 在注册表中的存储位置
- 如果有值,把该值复制到CITRIX在注册表中的存储位置
- 如果没有值,利用CPUID 和 MAC 生成AGENTID,并他们写入到CITRIX静态ID 的存储位置
- 读其他情况中静态ID 在注册表中的存储位置
- 如果是其他情况 先读静态ID注册表中存储位置。
-
- 如果有值,使用该静态ID
- 如果没有值,利用CPUID 和 MAC 生成AGENTID,并他们写入到静态ID 的存储位置
二、系统判断原则:
判断注册表字段的值。
1、华为云
注册表:
32bits:
HKEY_LOCAL_MACHINE\SOFTWARE\\HUAWEI\\VirtualDesktopAgent 下面ListOfSIDs 有值
64bits:
HKEY_LOCAL_MACHINE\SOFTWARE\\WOW6432Node\\HUAWEI\\VirtualDesktopAgent 下面ListofSIDs 有值
2、CITRIX
32bits 和 64bits 都是这里
HKEY_LOCAL_MACHINE\SOFTWARE\\citrix\\MachineIdentityServiceAgent 下面IdentityMountPoint 有值
3、其他系统
上述两种情况的键值都没有,视为其他情况
三、静态id存储位置
1、华为云
32bits:
HKEY_LOCAL_MACHINE\SOFTWARE\\HUAWEI\\VirtualDesktopAgent
下面的三个字段:
- Agentid
- Hardinfo
- makeinfo
64bits:
HKEY_LOCAL_MACHINE\SOFTWARE\\WOW6432Node\\HUAWEI\\VirtualDesktopAgent
下面的三个字段:
- Agentid
- Hardinfo
- makeinfo
2、CITRIX
32bits 和 64bits:
HKEY_LOCAL_MACHINE\SOFTWARE\\citrix\\MachineIdentityServiceAgent
下面的三个字段:
- Agentid
- Hardinfo
- makeinfo
3、其他系统
32bits:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Auditsys
下面的三个字段:
- Agentid
- Hardinfo
- makeinfo
64bits:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Auditsys
下面的三个字段:
- Agentid
- Hardinfo
- makeinfo