Example #1
0
        public UTRGVUserProfile GetUser(string cn)
        {
            UTRGVUserProfile user = new UTRGVUserProfile();

            DirectoryEntry    rootDSE = rootDSE = new DirectoryEntry("LDAP://" + _domain, _srvAcc, _srvPassword);
            DirectorySearcher search  = new DirectorySearcher(rootDSE);

            search.Asynchronous = true;
            search.PageSize     = 1001;                                                                                                                                                                                                                                                                 // To Pull up more than 100 records.

            search.Filter = "(&(&(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)(cn=" + cn + "*))(|(memberOf=CN=utrgv-staff,OU=Groups,DC=ad,DC=utrgv,DC=edu)(memberOf=CN=utrgv-faculty,OU=Groups,DC=ad,DC=utrgv,DC=edu)memberOf=CN=utrgv-students,OU=Groups,DC=ad,DC=utrgv,DC=edu))"; //UserAccountControl will only Include Non-Disabled Users.
            SearchResultCollection result = search.FindAll();


            foreach (SearchResult item in result)
            {
                if (item.Properties["displayName"].Count > 0)
                {
                    user.Name = item.Properties["displayName"][0].ToString();
                }
                if (item.Properties["cn"].Count > 0)
                {
                    user.Cn = item.Properties["cn"][0].ToString();
                }
                if (item.Properties["mail"].Count > 0)
                {
                    user.Email = item.Properties["mail"][0].ToString();
                }
            }

            return(user);
        }
Example #2
0
        public async Task <IHttpActionResult> me()
        {
            UTRGVUserProfile user = _loginProvider.GetUser(User.Identity.Name);
            var dbUser            = await db.Users.Where(u => u.Cn == user.Cn).FirstOrDefaultAsync();

            if (dbUser != null)
            {
                user.Role = dbUser.Role.Name;
            }
            else
            {
                user.Role = "Faculty";
            }


            return(Ok(user));
        }