public bool ChangeUserResetAttribute(User user) { using (PrincipalContext context = _contextFactory.GeneratePrincipalContext()) { UserPrincipalExtension userSearchParameters = new UserPrincipalExtension(context) { ExtensionAttribute14 = user.BannerID.Value }; PrincipalSearcher userSearch = new PrincipalSearcher(userSearchParameters) { QueryFilter = userSearchParameters }; UserPrincipalExtension userSearchResult = (UserPrincipalExtension)userSearch.FindOne(); if (userSearchResult != null) { try { userSearchResult.ExtensionAttribute8 = PASSWORD_RESET_VALUE; userSearchResult.Save(); return(true); } catch { return(false); } } else { return(false); } } }
private User ConvertUserPrincipalToUser(UserPrincipalExtension userPrincipalExtension) { BannerID bannerID = BannerID.CreateBannerID(userPrincipalExtension.ExtensionAttribute14); string fullName = String.Format("{0}, {1} {2}", userPrincipalExtension.Surname, userPrincipalExtension.GivenName, userPrincipalExtension.MiddleName); string samAccountName = userPrincipalExtension.SamAccountName; return(new User(bannerID, samAccountName, fullName)); }
public string GetUserDistinguishedName(string samAccountName) { string result; using (PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, strContextName, strContextContainer)) using (UserPrincipalExtension userPrincipal = UserPrincipalExtension.FindByIdentity(principalContext, IdentityType.SamAccountName, samAccountName)) { result = userPrincipal.DistinguishedName; } return(result); }
public User FindUserByBannerID(BannerID bannerID) { using (PrincipalContext context = _contextFactory.GeneratePrincipalContext()) { UserPrincipalExtension userSearchParameters = new UserPrincipalExtension(context) { ExtensionAttribute14 = bannerID.Value }; PrincipalSearcher userSearch = new PrincipalSearcher(userSearchParameters) { QueryFilter = userSearchParameters }; UserPrincipalExtension userSearchResult = (UserPrincipalExtension)userSearch.FindOne(); if (userSearchResult != null) { return(ConvertUserPrincipalToUser(userSearchResult)); } return(null); } }
public User FindUserBySamAccountName(string samAccountName) { using (PrincipalContext context = _contextFactory.GeneratePrincipalContext()) { UserPrincipalExtension userSearchParameters = new UserPrincipalExtension(context) { SamAccountName = samAccountName }; PrincipalSearcher userSearch = new PrincipalSearcher(userSearchParameters) { QueryFilter = userSearchParameters }; UserPrincipalExtension userSearchResult = (UserPrincipalExtension)userSearch.FindOne(); if (userSearchResult != null) { return(ConvertUserPrincipalToUser(userSearchResult)); } return(null); } }
/// <summary> /// Returnerer en dictionary med en employees, som har en bestemt manager /// </summary> /// <param name="managerSamAccountName"></param> /// <returns></returns> public Dictionary <string, string> GetManagerEmployees(string managerSamAccountName) { Dictionary <string, string> result = new Dictionary <string, string>(); using (PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, strContextName, strContextContainer)) using (UserPrincipalExtension userPrincipal = new UserPrincipalExtension(principalContext)) { userPrincipal.AdvancedSearchFilter.ManagerEquals(GetUserDistinguishedName(managerSamAccountName)); using (PrincipalSearcher principalSearcher = new PrincipalSearcher(userPrincipal)) { foreach (UserPrincipalExtension user in principalSearcher.FindAll()) { if (user.Name != null && user.SamAccountName != null) { result.Add(user.SamAccountName, user.DisplayName); } } } } return(result); }
public UserRepository() { _pc = MyUtilities.GetPrincipalContext(ouPath); _user = new UserPrincipalExtension(pc); _ps = new PrincipalSearcher(user); }
public UpeWrapper(PrincipalContext principalContext, UserPrincipalExtension userPrincipalExtension) { this.PrincipalContext = principalContext; this.UserPrincipalExtension = userPrincipalExtension; }