public override async Task <object> Resolve(KeyVaultActiveDirectoryApplicationId value) { var password = _passwordPolicy.GetPassword(); var applicationCreateParametersInner = new ApplicationCreateParametersInner { DisplayName = value.ClientName, Homepage = $"https://{value.ClientName}", IdentifierUris = new List <string> { $"https://{value.ClientName}" }, PasswordCredentials = new List <PasswordCredential> { new PasswordCredential { EndDate = DateTime.Now.AddYears(1000), Value = password } } }; var application = await _context.Graph.Applications.CreateAsync(applicationCreateParametersInner); _context.Values.Add(new KeyVaultActiveDirectoryApplicationSecret(value.ClientName), password); return(application.AppId); }