Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Claim provider with name LDAPCP does not exist. #21

Closed
XxXMike opened this issue Sep 19, 2017 · 14 comments
Closed

Claim provider with name LDAPCP does not exist. #21

XxXMike opened this issue Sep 19, 2017 · 14 comments

Comments

@XxXMike
Copy link

XxXMike commented Sep 19, 2017

The solution was deployed globally correctly, but when I do this
$tokenIssuerName = “ADFS”
$trust = Get-SPTrustedIdentityTokenIssuer –Identity $tokenIssuerName
$trust.ClaimProviderName = “LDAPCP”
$trust.Update()

I'm getting this error:
Claim provider with name LDAPCP does not exist.

@Yvand
Copy link
Owner

Yvand commented Sep 20, 2017

Do you see LDAPCP when you run this cmdlet:
Get-SPClaimProvider
Are you running your script on a server that is not running SharePoint service "Microsoft SharePoint Foundation Web Application"?

@XxXMike
Copy link
Author

XxXMike commented Sep 20, 2017

I dont see LDAPCP as a claim provider.
Microsoft Sharepoint Foundation Web Application is not showing in Central Admin, but its showing as started if I run Get-SPService | Select TypeName, Status

also, when I try to deploy the package, I get that:
if I force deployment, it will eventually say, that its deployed everywhere successfully.

XC-S-ZW00068 : Failed to load receiver assembly "ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=455f141f47bb8cc6" for feature "LDAPCP" (ID: b37e0696-f48c-47ab-aa30-834d78033ba8).: System.IO.FileNotFoundException: Could not load file or assembly 'ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=455f141f47bb8cc6' or one of its dependencies. The system cannot find the file specified. File name: 'ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=455f141f47bb8cc6'    at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)    at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)    at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)    at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)    at System.Reflection.Assembly.Load(String assemblyString)    at Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject() WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog]. XC-S-ZW00068 : Failed to load receiver assembly "ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=455f141f47bb8cc6" for feature "LDAPCP" (ID: b37e0696-f48c-47ab-aa30-834d78033ba8).: System.IO.FileNotFoundException: Could not load file or assembly 'ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=455f141f47bb8cc6' or one of its dependencies. The system cannot find the file specified. File name: 'ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=455f141f47bb8cc6'    at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)    at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)    at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)    at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)    at System.Reflection.Assembly.Load(String assemblyString)    at Microsoft.SharePoint.Administration.SPFeatureDefinition.get_ReceiverObject() WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

@Yvand
Copy link
Owner

Yvand commented Sep 20, 2017

Unfortunately something went wrong when you deployed the solution.
Don't rely on the successful deployment message, LDAPCP is not installed correctly and you need to re-install it.
Please carefully follow the steps in http://ldapcp.com/Fix-setup-issues.html to fix this.
Don't worry about potential side effects, this will clean up everything and after that you can re-install LDAPCP like if it was installed for the first time.

@XxXMike
Copy link
Author

XxXMike commented Sep 20, 2017

I get something like that when trying to uninstall
s1

@Yvand
Copy link
Owner

Yvand commented Sep 20, 2017

This is why I wrote carefully
As explained in section "Identify LDAPCP features to fix", you must first create directory "LDAPCP" and put feature files inside

@XxXMike
Copy link
Author

XxXMike commented Sep 20, 2017

I swear I did it!
ok now, it seems to be gone, I will try installing again
Get-SPFeature| ?{$_.DisplayName -like 'LDAPCP*'}| fl DisplayName, Scope, Id, RootDirectory
is not returning anything

anything else I should check to make sure its really gone, before doing it again ?

Thanks for your support.

@Yvand
Copy link
Owner

Yvand commented Sep 20, 2017

No you're good, but for safety you should close and open a fresh PowerShell command line.

However, if the server where you are re-installing LDAPCP does not run "Microsoft Sharepoint Foundation Web Application", you need to manually add LDAPCP.dll in the GAC as described in section "Important - Limitations" in http://ldapcp.com/Install-LDAPCP.html

@XxXMike
Copy link
Author

XxXMike commented Sep 20, 2017

:( new error now

image

@Yvand
Copy link
Owner

Yvand commented Sep 20, 2017

Aaaaahhhhh, sorry for that...
Unfortunately you need to redo all the steps in http://ldapcp.com/Fix-setup-issues.html.
But after that you also need to run this stsadm command to delete the LDAPCP persisted object:

stsadm -o deleteconfigurationobject -id 5D306A02-A262-48AC-8C44-BDB927620227

No worries about this command, it deletes only the LDAPCP persisted object.
If you want to see how this persisted object looks like, you can run this SQL command in SharePoint config database:

SELECT * FROM [13_SharePoint_Config].[dbo].[Objects] WHERE Id LIKE '5D306A02-A262-48AC-8C44-BDB927620227'

@XxXMike
Copy link
Author

XxXMike commented Sep 20, 2017

yay! its working now, merci beaucoup!

@Yvand
Copy link
Owner

Yvand commented Sep 20, 2017

My pleasure :)

@Yvand Yvand closed this as completed Sep 20, 2017
@pscheidemann
Copy link

If I may suggest something else (years after): Insted of setting the ClaimProviderName-Member on the authenticationProvider, you may try:

$cp = Get-SPClaimProvider "<name goes here>"; $ap = Get-SPTrustedIdentityTokenIssuer; **Set-SPTrustedIdentityTokenIssuer -Identity $ap -ClaimProvider $cp**

This will configure the Authentication Provider using dedicated objects instead of "reference by string" and ... worked for me. Reinstalling my claimProvider unfortunately did not do the trick.

Regards!

@Yvand
Copy link
Owner

Yvand commented Apr 4, 2019

Thanks @pscheidemann for this tip!
I'll test it and maybe update the install procedure to use this, it is indeed cleaner this way

@subas-hub
Copy link

Hi Yvand,
Please could you help me to fix this issue on EntraCP. I am not sure why EntraCP is looking for ldacp.

PS C:\Windows\system32> $adfs1 = Get-SPTrustedIdentityTokenIssuer "AzureADTrust"
$adfs1.ClaimProviderName = "EntraCP"
$adfs1.Update()
Exception setting "ClaimProviderName": "Could not load file or assembly 'ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80be731bc1a1a740' or one of its dependencies. The system cannot find the file specified."
At line:2 char:1

  • $adfs1.ClaimProviderName = "EntraCP"
  •   + CategoryInfo          : NotSpecified: (:) [], SetValueInvocationException
      + FullyQualifiedErrorId : ExceptionWhenSetting
    
    

Exception calling "Update" with "0" argument(s): "Could not load file or assembly 'ldapcp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=80be731bc1a1a740' or one of its dependencies. The system cannot find the file
specified."
At line:3 char:1

  • $adfs1.Update()
  •   + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
      + FullyQualifiedErrorId : FileNotFoundException
    
    

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants