使用ldp.exe实用程序,我已经连接到LDAP使用的Windows盒子的管理员帐户。CN=testing test,OU=AutomationQA_OU_2,DC=adb,DC=fed,DC=xyz,DC=com
给。
distinguishedName: CN=testing test,OU=AutomationQA_OU_2,DC=adb,DC=fed,DC=xyz,DC=com;
userPrincipalName: [email protected];
uSNChanged: 34251;
uSNCreated: 34246;
然后我做了一个捆绑
res = ldap_bind_s(ld, NULL, &NtAuthIdentity, NEGOTIATE (1158)); // v.3
{NtAuthIdentity: User='testing'; Pwd=<unavailable>; domain = 'adb'}
Authenticated as: 'ADB\testing'.
然后又检查了usn。其增加了
distinguishedName: CN=testing test,OU=AutomationQA_OU_2,DC=adb,DC=fed,DC=xyz,DC=com;
userPrincipalName: [email protected];
uSNChanged: 34252;
uSNCreated: 34246;
然后我重复了上述步骤,即再次进行绑定,但这次当我试图获取uSNChanged数字时,我看到它没有增加......
第一次绑定用户是否只会增加usn号?在绑定的情况下,如何处理usn号的变化。
谁能解释一下?
USN会在你用来验证的账户上发生变化。
USN只有在账户被修改时才会改变。当你进行身份验证时,USN会发生变化。lastLogon
属性得到更新,因此账户发生了变化,所以USN也得到了更新。
凭证往往是自动缓存的,所以第二次做同样的事情会使用第一次尝试的相同访问令牌,不会算作第二次登录。所以 lastLogon
不会更新,USN也不会改变。
您绑定的账户上的USN不会改变。因此,如果你绑定的账户是 不 和你用来验证的账户一样,你会看到USN不会改变。