internal static void User_Unlock(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, performCustomWindowsContextImpersonalization); try { UnlockAccount2(userName, ad); } catch (Exception y) { if (performCustomWindowsContextImpersonalization) { using (var impersonation = new ImpersonateUser(ad.LDAPUser, ad.LDAPDomain, ad.LDAPPassword, ImpersonateUser.LOGON32_LOGON_NEW_CREDENTIALS)) { ad.User_Unlock(userName); } } else { ad.User_Unlock(userName); } ad.Dispose(); } }
public void SearchADUsers() { var dict = ADWrapper.GetUsers().ToDictionary(x => x.UserName); var user = dict["litvinov"]; Assert.IsNotNull(user.Email); }
/// <summary> /// /// </summary> /// <param name="userName"></param> /// <param name="mustChange"></param> /// <param name="domain"></param> public static void User_MustChangePasswordNextLogon(string userName, bool mustChange, string domain) { if (Common.mustChangedNextLogon == false) { return; } ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, performCustomWindowsContextImpersonalization); //PrincipalContext pr = new PrincipalContext(ContextType.Domain, domain, "dc=corp,dc=local", username, password); if (performCustomWindowsContextImpersonalization) { using (var impersonation = new ImpersonateUser(ad.LDAPUser, ad.LDAPDomain, ad.LDAPPassword, ImpersonateUser.LOGON32_LOGON_NEW_CREDENTIALS)) { ad.User_MustChangePasswordNextLogon(userName, mustChange); } } else { ad.User_MustChangePasswordNextLogon(userName, mustChange); } }
internal static void User_SetActivation(string userName, bool disabled, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName, performCustomWindowsContextImpersonalization); ad.User_SetActivation(userName, disabled); ad.Dispose(); }
public RegisteredUsers(GitLabWrapper gitLabWrapper, DXVcsWrapper vcsWrapper) { this.gitLabWrapper = gitLabWrapper; ADUsers = ADWrapper.GetUsers().ToDictionary(x => x.UserName, new UserNameEqualityComparer()); Users = CreateGitLabUsers().ToDictionary(x => x.UserName, new UserNameEqualityComparer()); this.VcsUsers = vcsWrapper.GetUsers().ToList(); }
internal static List <ActiveDirectoryUser> GetUsersFromGroup(string groupName, string domain) { try { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD); List <ADUser> list = ad.Users_SearchByGroupName(groupName); ad.Dispose(); if (list.Count != 0) { var userList = from u in list select new ActiveDirectoryUser(u); return(userList.ToList()); } else { return(null); } } catch (Exception ex) { throw ex; } }
void User_Reset_Password(string userName, string newPassword, string domain) { ADWrapper ad = new ADWrapper(domain, _ImpersonateLogin); ad.User_ResetPwd(userName, newPassword, true); ad.Dispose(); }
internal static void User_Reset_Password(string userName, string newPassword, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName, performCustomWindowsContextImpersonalization); ad.User_ResetPwd(userName, newPassword, true); ad.Dispose(); }
internal static void User_Unlock(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName, performCustomWindowsContextImpersonalization); //ad.User_SetLockedStatus(userName, false); ad.User_Unlock(userName); ad.Dispose(); }
void Connect() { ///172.22.12.110 ADWrapper _ADHelper = new ADWrapper("LDAP://PC1.Pelsoft.es/DC=Pelsoft,DC=ar", "moviedo", "xxxxxx"); _ADHelper.User_Get_ByName("moviedo"); _ADHelper.User_ChangeEmail("moviedo", "*****@*****.**"); }
internal static bool UserExist(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName, performCustomWindowsContextImpersonalization); bool exist = ad.User_Exists(userName); ad.Dispose(); return(exist); }
internal static bool UserExist(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, CommonHelpers.CnnStringNameAD, apiAppSettings.apiConfig.activeDirectoryImpersonate); bool exist = ad.User_Exists(userName); ad.Dispose(); return(exist); }
internal static Boolean UserExist(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, performCustomWindowsContextImpersonalization); bool exist = ad.User_Exists(userName); ad.Dispose(); return(exist); }
public override SearchDomainsUrlsResponse Execute(SearchDomainsUrlsRequest pServiceRequest) { SearchDomainsUrlsResponse wResponse = new SearchDomainsUrlsResponse(); UserBC wUserBC = new UserBC(pServiceRequest.ContextInformation.AppId, pServiceRequest.SecurityProviderName); List <DomainUrlInfo> wDomainUrlInfoList = ADWrapper.DomainsUrl_GetList(pServiceRequest.SecurityProviderName); wResponse.BusinessData.DomainsNameList = wUserBC.MapListDomainToListString(wDomainUrlInfoList); return(wResponse); }
internal static ActiveDirectoryUserBE User_Info(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, CommonHelpers.CnnStringNameAD, apiAppSettings.apiConfig.activeDirectoryImpersonate); ADUser usr = ad.User_Get_ByName(userName); if (usr == null) { return(null); } return(usr.getBE()); }
internal static ActiveDirectoryUser User_Info(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName, performCustomWindowsContextImpersonalization); ADUser usr = ad.User_Get_ByName(userName); if (usr != null) { return(null); } return(new ActiveDirectoryUser(usr)); }
//public ADGroup(LdapEntry wLdapEntry) //{ // if (wLdapEntry.ContainsKey(ADProperties.NAME)) // _Name = wLdapEntry[ADProperties.NAME][0]; // if (wLdapEntry.ContainsKey(ADProperties.DISTINGUISHEDNAME)) // _Name = wLdapEntry[ADProperties.DISTINGUISHEDNAME][0]; // if (wLdapEntry.ContainsKey(ADProperties.DESCRIPTION)) // _Name = wLdapEntry[ADProperties.DESCRIPTION][0]; // if (wLdapEntry.ContainsKey(ADProperties.LOGINNAME)) // _Name = wLdapEntry[ADProperties.LOGINNAME][0]; // if (wLdapEntry.ContainsKey(ADProperties.OBJECTCATEGORY)) // _Name = wLdapEntry[ADProperties.OBJECTCATEGORY][0]; // if (wLdapEntry.ContainsKey(ADProperties.USERPRINCIPALNAME)) // _Domain = wLdapEntry[ADProperties.USERPRINCIPALNAME][0].Split('.').First(); // if (!String.IsNullOrEmpty(_DistinguishedName)) // { // SetNameInfo(_DistinguishedName); // } //} /// <summary> /// /// </summary> /// <param name="directoryGroup"></param> public ADGroup(DirectoryEntry directoryGroup) { string domainAddress; string userPrincipalName = ADWrapper.GetProperty(directoryGroup, ADProperties.USERPRINCIPALNAME); _Name = ADWrapper.GetProperty(directoryGroup, ADProperties.NAME); _DistinguishedName = ADWrapper.GetProperty(directoryGroup, ADProperties.DISTINGUISHEDNAME); _Description = ADWrapper.GetProperty(directoryGroup, ADProperties.DESCRIPTION); _FirstName = ADWrapper.GetProperty(directoryGroup, ADProperties.LOGINNAME); _Category = ADWrapper.GetProperty(directoryGroup, ADProperties.OBJECTCATEGORY); _CN = ADWrapper.GetProperty(directoryGroup, ADProperties.CONTAINERNAME); if (!string.IsNullOrEmpty(userPrincipalName)) { domainAddress = userPrincipalName.Split('@')[1]; } else { domainAddress = string.Empty; } if (!string.IsNullOrEmpty(domainAddress)) { _Domain = domainAddress.Split('.').First(); } //if (pDirectoryEntry.Properties.Contains("sAMAccountName")) //{ // base.Name = pDirectoryEntry.Properties["sAMAccountName"][0].ToString(); //Nombre usuario como aaguirre // _CN = base.Name; //} //if (pDirectoryEntry.Properties.Contains("userPrincipalName")) // _UserPrincipalName = pDirectoryEntry.Properties["userPrincipalName"][0].ToString();//Nombre usuario como [email protected] //if (pDirectoryEntry.Properties.Contains("name")) // base.FullName = pDirectoryEntry.Properties["name"][0].ToString(); //Nombre completo //if (pDirectoryEntry.Properties.Contains("sAMAccountType")) // _FirstName = pDirectoryEntry.Properties["sAMAccountType"][0].ToString(); //if (pDirectoryEntry.Properties.Contains("objectCategory")) // base.Category = pDirectoryEntry.Properties["objectCategory"][0].ToString(); //ej:CN=GS_Comite_comunicacion_RW,OU=Seguridad,DC=Datacom,DC=org if (!string.IsNullOrEmpty(_DistinguishedName)) { SetNameInfo(_DistinguishedName); } }
private void button4_Click(object sender, EventArgs e) { lblResult.Text = string.Empty; try { adADWrapper = new ADWrapper(txtPath3.Text, txtLoginName.Text, txtPassword.Text); lstDomains.DataSource = adADWrapper.Domain_GetList1(); label4.Text = adADWrapper.LDAPPath; } catch (Exception ex) { lblResult.Text = Fwk.Exceptions.ExceptionHelper.GetAllMessageException(ex); } }
internal static CentralizedSecurity.wcf.Contracts.DomainsUrl[] GetAllDomainsUrl() { List <DomainUrlInfo> auxlist = ADWrapper.DomainsUrl_GetList2(System.Configuration.ConfigurationManager.ConnectionStrings[ActiveDirectoryService.CnnStringName].ConnectionString); if (auxlist.Count != 0) { var list = from d in auxlist select new CentralizedSecurity.wcf.Contracts.DomainsUrl(d); return(list.ToArray <CentralizedSecurity.wcf.Contracts.DomainsUrl>()); } else { return(null); } }
public static SafeAccessTokenHandle TryImpersonate(ADWrapper ad) { // Call LogonUser to obtain a handle to an access token. SafeAccessTokenHandle safeAccessTokenHandle; bool returnValue = LogonUser(ad.LDAPUser, ad.LDAPDomain, ad.LDAPPassword, LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, out safeAccessTokenHandle); if (false == returnValue) { int ret = Marshal.GetLastWin32Error(); TechnicalException tx = new TechnicalException(string.Format("LogonUser failed with error code : {0}", ret)); throw tx; } return(safeAccessTokenHandle); }
internal static Fwk.CentralizedSecurity.Contracts.DomainsUrl[] GetAllDomainsUrl() { //List<DomainUrlInfo> auxlist = ADWrapper.DomainsUrl_GetList2(System.Configuration.ConfigurationManager.ConnectionStrings[Common.CnnStringNameAD].ConnectionString); List <DomainUrlInfo> auxlist = ADWrapper.DomainsUrl_Get_FromSp_all(Common.CnnStringNameAD); if (auxlist.Count != 0) { var list = from d in auxlist select new Fwk.CentralizedSecurity.Contracts.DomainsUrl(d); return(list.ToArray <Fwk.CentralizedSecurity.Contracts.DomainsUrl>()); } else { return(null); } }
void init() { try { urls = ADWrapper.DomainsUrl_GetList("ActiveDirectory");//@"Data Source=SANTANA\SQLEXPRESS;Initial Catalog=Logs;Integrated Security=True"); domainUrlInfoBindingSource.DataSource = urls; cmbDomains.SelectedIndex = 1; lblURL.Text = ((DomainUrlInfo)cmbDomains.SelectedItem).LDAPPath; } catch (Exception ex) { lblCheckResult.Text = Fwk.Exceptions.ExceptionHelper.GetAllMessageException(ex); btnAutenticate.Enabled = false; } }
internal static void User_Lock(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, false); if (performCustomWindowsContextImpersonalization) { using (var impersonation = new ImpersonateUser(ad.LDAPUser, ad.LDAPDomain, ad.LDAPPassword, ImpersonateUser.LOGON32_LOGON_NEW_CREDENTIALS)) { ad.User_SetLockedStatus(userName, true); } } else { ad.User_SetLockedStatus(userName, true); } }
internal static void User_Lock(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, false); if (performCustomWindowsContextImpersonalization) { var safeAccessTokenHandle = TryImpersonate(ad); WindowsIdentity.RunImpersonated(safeAccessTokenHandle, () => { ad.User_SetLockedStatus(userName, true); }); } else { ad.User_SetLockedStatus(userName, true); } }
internal static ActiveDirectoryUser[] GetUsersFromGroup(string groupName, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName); List <ADUser> list = ad.Users_SearchByGroupName(groupName); ad.Dispose(); if (list.Count != 0) { var userList = from u in list select new ActiveDirectoryUser(u); return(userList.ToArray <ActiveDirectoryUser>()); } else { return(null); } }
internal static ActiveDirectoryGroup[] GetGroupsFromUser(string userName, string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName); List <ADGroup> list = ad.User_SearchGroupList(userName); ad.Dispose(); if (list.Count != 0) { var activeDirectoryGroupList = from g in list select new ActiveDirectoryGroup(g); return(activeDirectoryGroupList.ToArray <ActiveDirectoryGroup>()); } else { return(null); } }
private void button3_Click(object sender, EventArgs e) { lblResult.Text = string.Empty; try { //ImpersonateLogin wImpersonation = new ImpersonateLogin(); //wImpersonation.domain = txtDomainName.Text; //wImpersonation.user= txtLoginName.Text; //wImpersonation.password= txtPassword.Text; adADWrapper = new ADWrapper(txtPath2.Text, txtLoginName.Text, txtPassword.Text); //adADWrapper.LDAPDomainName = txtDomainName.Text; lstDomains.DataSource = adADWrapper.Domain_GetList1(); label4.Text = adADWrapper.LDAPPath; } catch (Exception ex) { lblResult.Text = Fwk.Exceptions.ExceptionHelper.GetAllMessageException(ex); } }
internal static ActiveDirectoryGroup[] GetGroups(string domain) { ADWrapper ad = new ADWrapper(domain, ActiveDirectoryService.CnnStringName, performCustomWindowsContextImpersonalization); List <ADGroup> list = ad.Groups_GetAll(); ad.Dispose(); if (list.Count != 0) { var userList = from u in list select new ActiveDirectoryGroup(u); return(userList.ToArray <ActiveDirectoryGroup>()); } else { return(null); } }
public static Boolean ResetPassword(string usernameToresset, string domain, string newPassword, Boolean UnlockAccount, Boolean NextLogon) { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, performCustomWindowsContextImpersonalization); if (performCustomWindowsContextImpersonalization) { var safeAccessTokenHandle = TryImpersonate(ad); return(WindowsIdentity.RunImpersonated(safeAccessTokenHandle, () => { //return ResetPassword2(usernameToresset, newPassword, ad); return ResetPassword_ADWrapper(usernameToresset, newPassword, ad); })); } else { //return ResetPassword2(usernameToresset, newPassword, ad); return(ResetPassword_ADWrapper(usernameToresset, newPassword, ad)); } }
internal static void User_SetActivation(string userName, bool disabled, string domain) { ADWrapper ad = new ADWrapper(domain, Common.CnnStringNameAD, false); if (performCustomWindowsContextImpersonalization) { using (var impersonation = new ImpersonateUser(ad.LDAPUser, ad.LDAPDomain, ad.LDAPPassword, ImpersonateUser.LOGON32_LOGON_NEW_CREDENTIALS)) { ad.User_SetActivation(userName, disabled); } } else { ad.User_SetActivation(userName, disabled); } ad.Dispose(); }