08-01-2017 01:08 PM
08-01-2017 01:08 PM
We have federated authentiation in our org and i am trying to connect to SharePoint site using CSOM with SharePoint Online credentials but getting an error. Here is the error message;
Microsoft.SharePoint.Client.IdcrlException: The partner returned a bad sign-in name or password error. For more information, see Federation Error-handling Scenarios. Anyone know a solution to this problem.
08-02-2017 12:07 AMSolution
I've seen this error more than once. In most cases I just typed username / password wrong. Federated authentication should not be a problem but have you considered using App Credentials also? Are you using Multi-factor authentication?
PnP's AuthenticationManager Class provides some usefull utility methods to obtain an authenticated context in different ways. Could you try using GetWebLoginClientContext for getting an authenticated context?
08-02-2017 02:21 PM
It looks like we are facing a similar issue, but have asked in different parts of the forum. https://techcommunity.microsoft.com/t5/SharePoint/Using-SharePoint-Client-Side-Object-Model-with-Pow...
I'll let know if I find anything.
08-03-2017 06:21 AM
08-21-2017 06:02 PM
Thanks Chris and Paul, i finally able to connect to SP Online site using OfficeDevPnP (
11-23-2018 01:59 AM
Here same problem. Federation with MFA, with digital key. So no more UN and PWD.
login with pnp-online works because I can user -weblogin.
But for some parts of my scripting I need CSOM. And the login for CSOM is with UN and PWD and I can't find a way to login with weblogin.
This is the code I used for CSOM-login which doesn't work anymore.
Add-Type -Path ".\Microsoft.SharePoint.Client.dll"
Add-Type -Path ".\Microsoft.SharePoint.Client.Runtime.dll"
$adminAccount = "*******************"
$adminPassword = ConvertTo-SecureString "***********" -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $adminAccount, $adminPassword
$credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($cred.Username, $cred.Password)
$script:contextWeb = New-Object Microsoft.SharePoint.Client.ClientContext($siteURL)
$script:contextWeb.Credentials = $credentials