我正在尝试唯一标识 Active Directory 域中的对象。sAMAccountName 或邮件地址可能会发生变化,objectSid 也是如此。但我看到还有一个 objectGUID。
我只是想知道:这种情况会因任何原因而改变,还是我可以假设这永远不会改变?
我问的原因是我从应用程序中引用了一些 AD 对象,并且需要在几周或几个月后返回并且仍然获得对象,但是应用程序无法获得更改通知。所以我需要一个永不改变的价值。
我正在尝试唯一标识 Active Directory 域中的对象。sAMAccountName 或邮件地址可能会发生变化,objectSid 也是如此。但我看到还有一个 objectGUID。
我只是想知道:这种情况会因任何原因而改变,还是我可以假设这永远不会改变?
我问的原因是我从应用程序中引用了一些 AD 对象,并且需要在几周或几个月后返回并且仍然获得对象,但是应用程序无法获得更改通知。所以我需要一个永不改变的价值。
http://technet.microsoft.com/en-us/library/cc961625.aspx?ppud=4
复制和粘贴: SID 有时会更改。Group 对象的 SID 不会改变。其他对象属性的值可以更改,但 Object-GUID 永远不会更改。当一个对象被分配一个 GUID 时,它会一直保持这个值。
如果有与之关联的 GUID,则它永远不应更改,因为 GUID 代表全局唯一标识符
如果您将计算机作为域的成员并重命名它,则 GUID 不应更改,但正如所述,将其从域中删除并将其添加回新对象中。
“当一个对象被分配了一个 GUID 时,它会一直保持这个值。”
不确定这是多么真实。我通过将计算机添加到 AD 域并记录 GUID 对此进行了测试。然后我从域中删除了计算机,将其重命名,然后将其添加回同一域。计算机上的 GUID 不同。我很好奇其他人是否也可以验证这一点。