Connecting to SharePoint with MFA enabled

Copper Contributor

I'm trying to create a simple windows 10 desktop app (WPF) that will connect to SharePoint.


I have the following code that is taken from an example online, however this account has MFA enabled.

I get the following error:


"Microsoft.SharePoint.Client.IdcrlException: The account password has expired, as specified by the account settings.\r\n at Microsoft.SharePoint.Client.Idcrl.IdcrlAuth.GetServiceToken(String securityXml, String serviceTarget, String servicePolicy)

Code as follows:


private void button_Click(object sender, RoutedEventArgs e)
     var context = GetUserContext();
     var results = context.LoadQuery(context.Web.Lists.Include(list => list.Title, list => list.Id));

     try {
     catch (Exception err) {
     // Error: Microsoft.SharePoint.Client.IdcrlException: The account password has expired, as specified by the account settings.
     string temp = err.ToString();

     results.ToList().ForEach(x => {
     tbOutput.Text += x.Title;

public static ClientContext GetUserContext()
     var o365Password = new SecureString();

     foreach(char c in configuration.o365Password) {

     var o365Credentials = new SharePointOnlineCredentials(configuration.o365Email, o365Password);
     var o365Context = new ClientContext(configuration.o365Url);
     o365Context.Credentials = o365Credentials;

     //Web web = o365Context.Web;

     return o365Context;

public class configuration
     public static string o365Url = "";
     public static string o365Email = "";
     public static string o365Password = "password_here";

How would I fix this?

Thank you

1 Reply

You can't authenticate with a user account if MFA is enabled.


Take a look at App-only authentication. There are two methods available for this: via Azure Active Directory or by registering the app directly with SharePoint.