Example #1
0
        public async Task <List <AADObjectModel> > VaidateAADUserGroupObjectAsync(string aadObjectString)
        {
            List <AADObjectModel> aADObjects = new List <AADObjectModel>();

            if (string.IsNullOrWhiteSpace(aadObjectString))
            {
                return(aADObjects);
            }
            Task <List <AADObjectModel> > groupEqResults = ValidateGroupAsync(aadObjectString);
            AADObjectModel userResult = await ValidateUserAsync(aadObjectString);

            if (userResult.isValid)
            {
                aADObjects.Add(userResult);
            }
            aADObjects.AddRange(await groupEqResults);
            if (aADObjects.Count == 0)
            {
                Task <List <AADObjectModel> > userResults  = ValidateUser2ChanceAsync(aadObjectString);
                Task <List <AADObjectModel> > groupResults = ValidateGroup2ChanceAsync(aadObjectString);
                aADObjects.AddRange(await userResults);
                aADObjects.AddRange(await groupResults);
            }
            return(aADObjects);
        }
Example #2
0
        private async Task <AADObjectModel> ValidateUserAsync(string aadObjectString)
        {
            AADObjectModel aADObject = new AADObjectModel();
            UserGraphModel userResult;

            if (string.IsNullOrWhiteSpace(aadObjectString))
            {
                return(new AADObjectModel()
                {
                    isValid = false
                });
            }
            try
            {
                string response = await CallGetApiAsync("https://graph.microsoft.com/v1.0/users/" + aadObjectString + "?$select=userPrincipalName,id");

                if (response.Equals("NotFound"))
                {
                    return(new AADObjectModel()
                    {
                        isValid = false
                    });
                }
                else
                {
                    userResult = JsonConvert.DeserializeObject <UserGraphModel>(response);
                }
                aADObject.FriendlyName = userResult.UserPrincipalName;
                aADObject.ObjectId     = userResult.Id;
                aADObject.ObjectType   = "USER";
                aADObject.isValid      = true;
            }
            catch (Exception ex)
            {
                //swallow exception since it can only be that it is not the right format
                aADObject.isValid = false;
            }
            return(aADObject);
        }