public void SamrChangePasswordUser_SUCCESS() { IChecker PtfAssert = TestClassBase.BaseTestSite.Assert; string oldPassword = "******"; string newPassword = "******"; CreateTempUser createTempUser = new CreateTempUser( _samrProtocolAdapter, testUserName, oldPassword, AdtsUserAccountControl.ADS_UF_NORMAL_ACCOUNT); BaseTestSite.Log.Add(LogEntryKind.TestStep, string.Format("Create test user, username:{0} password:{1}.", testUserName, oldPassword)); Common.UpdatesStorage.GetInstance().PushUpdate(createTempUser); BaseTestSite.Log.Add(LogEntryKind.TestStep, string.Format("Set user must change password to user:{0}.", testUserName)); Common.Utilities.UserMustChangePassword( _samrProtocolAdapter.pdcFqdn, _samrProtocolAdapter.ADDSPortNum, _samrProtocolAdapter.primaryDomainUserContainerDN, testUserName); ConnectAndOpenUser( GetPdcDnsName(), _samrProtocolAdapter.primaryDomainFqdn, testUserName, out _userHandle); SamrCryptography samrCryptography = new SamrCryptography(oldPassword, newPassword); BaseTestSite.Log.Add(LogEntryKind.TestStep, string.Format("SamrChangePasswordUser, OldPassword:{0}, NewPassword:{1}.", oldPassword, newPassword)); HRESULT hresult = (HRESULT)SAMRProtocolAdapter.RpcAdapter.SamrChangePasswordUser( _userHandle, 1, samrCryptography.GetOldLmEncryptedWithNewLm(), samrCryptography.GetNewLmEncryptedWithOldLm(), 1, samrCryptography.GetOldNtEncryptedWithNewNt(), samrCryptography.GetNewNtEncryptedWithOldNt(), 0, samrCryptography.GetNewNtEncryptedWithNewLm(), 0, samrCryptography.GetNewLmEncryptedWithNewNt()); PtfAssert.AreEqual(HRESULT.STATUS_SUCCESS, hresult, "SamrChangePasswordUser returns success."); }
public void SamrUnicodeChangePasswordUser2_SUCCESS() { IChecker PtfAssert = TestClassBase.BaseTestSite.Assert; string oldPassword = "******"; string newPassword = "******"; CreateTempUser createTempUser = new CreateTempUser( _samrProtocolAdapter, testUserName, oldPassword, AdtsUserAccountControl.ADS_UF_NORMAL_ACCOUNT); BaseTestSite.Log.Add(LogEntryKind.TestStep, string.Format("Create test user, username:{0} password:{1}.", testUserName, oldPassword)); Common.UpdatesStorage.GetInstance().PushUpdate(createTempUser); BaseTestSite.Log.Add(LogEntryKind.TestStep, string.Format("Set user must change password to user:{0}.", testUserName)); Common.Utilities.UserMustChangePassword( _samrProtocolAdapter.pdcFqdn, _samrProtocolAdapter.ADDSPortNum, _samrProtocolAdapter.primaryDomainUserContainerDN, testUserName); Site.Log.Add(LogEntryKind.TestStep, "Initialize: Create Samr Bind to the server."); _samrProtocolAdapter.SamrBind( GetPdcDnsName(), _samrProtocolAdapter.primaryDomainFqdn, _samrProtocolAdapter.DomainAdministratorName, _samrProtocolAdapter.DomainUserPassword, false, true); SamrCryptography samrCryptography = new SamrCryptography(oldPassword, newPassword); BaseTestSite.Log.Add(LogEntryKind.TestStep, string.Format("SamrUnicodeChangePasswordUser2, OldPassword:{0}, NewPassword:{1}.", oldPassword, newPassword)); HRESULT hResult = (HRESULT)SAMRProtocolAdapter.RpcAdapter.SamrUnicodeChangePasswordUser2( SAMRProtocolAdapter.RpcAdapter.Handle, DtypUtility.ToRpcUnicodeString(_samrProtocolAdapter.pdcNetBIOSName), DtypUtility.ToRpcUnicodeString(testUserName), samrCryptography.GetNewPasswordEncryptedWithOldNt(), samrCryptography.GetOldNtEncryptedWithNewNt(), 0x01, samrCryptography.GetNewPasswordEncryptedWithOldLm(PasswordType.Unicode), samrCryptography.GetOldLmOwfPasswordEncryptedWithNewNt()); PtfAssert.AreEqual(HRESULT.STATUS_SUCCESS, hResult, "SamrOemChangePasSamrUnicodeChangePasswordUser2swordUser2 returns success."); }