Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static DataTable getADValuesByParameter(string strFilter, string strLDAPUser, string strLDAPPath, string strLDAPPWD, string strLDAPProperties)
- {
- DataTable functionReturnValue = default(DataTable);
- string[] arrLDAP = null;
- DirectoryEntry rootEntry = new DirectoryEntry();
- DirectorySearcher searcher = new DirectorySearcher();
- SearchResultCollection results = default(SearchResultCollection);
- DataTable dtExchangeUserData = new DataTable();
- arrLDAP = strLDAPProperties.Split(new char[] { ',' });
- rootEntry.Path = strLDAPPath;
- rootEntry.Username = strLDAPUser;
- rootEntry.Password = strLDAPPWD;
- rootEntry.AuthenticationType = AuthenticationTypes.Secure;
- searcher.SearchRoot = rootEntry;
- searcher.SearchScope = SearchScope.Subtree;
- searcher.Filter = strFilter;
- searcher.PropertiesToLoad.AddRange(arrLDAP);
- //var value = rootEntry.NativeObject;
- results = searcher.FindAll();
- Int16 si = default(Int16);
- foreach (SearchResult result in results)
- {
- si = 0;
- object[] arrKeyValue = new object[result.Properties.Count - 1];
- // -2 weil property "adspath" nicht dazu gehört, und .count -1 weil 0 basierendes array
- if ((result != null))
- {
- System.Collections.IEnumerator myEnumerator = arrLDAP.GetEnumerator();
- while (myEnumerator.MoveNext())
- {
- foreach (string Key in result.Properties.PropertyNames)
- {
- if (Key != "adspath")
- {
- if (Key.Equals(((string)myEnumerator.Current).ToLower()))
- {
- if (dtExchangeUserData.Columns[Key] == null)
- dtExchangeUserData.Columns.Add(Key);
- if (Key.Equals("objectguid"))
- {
- arrKeyValue[si] = new Guid(((byte[])result.Properties[Key][0]));
- }
- else
- {
- arrKeyValue[si] = result.Properties[Key][0].ToString();
- }
- si++;
- }
- }
- }
- }
- if (arrKeyValue.Length > 0)
- dtExchangeUserData.Rows.Add(arrKeyValue);
- }
- }
- functionReturnValue = dtExchangeUserData;
- dtExchangeUserData.Dispose();
- rootEntry.Close();
- rootEntry.Dispose();
- return functionReturnValue;
- }
- Membership.ValidateUser()
- <connectionStrings>
- <add name="ADConnectionString" connectionString="LDAP://server.com/OU=users,DC=test,DC=adam"/>
- </connectionStrings>
- <authentication mode="Forms" >
- <forms loginUrl="~/Login.aspx/Test/" timeout="2880" />
- </authentication>
- <authorization>
- <deny users ="?" />
- </authorization>
- <!--<identity impersonate="true" />-->
- <trust level="Full" />
- <membership defaultProvider="MyMembershipProvider">
- <providers>
- <add name="MyMembershipProvider"
- type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
- connectionStringName="ADConnectionString"
- connectionUsername="[domain][user]"
- connectionPassword="[password]"
- connectionProtection="Secure"
- enableSearchMethods="true"
- />
- </providers>
- </membership>
Add Comment
Please, Sign In to add comment