This project has moved. For the latest updates, please go here.

LDAPCP v5.1

Rating:        Based on 7 ratings
Reviewed:  6 reviews
Downloads: 13004
Released: Jul 7, 2016
Updated: Jul 7, 2016 by Yvand
Dev status: Stable Help Icon

Recommended Download

Application LDAPCP
application, 80K, uploaded Jul 7, 2016 - 11064 downloads

Other Available Downloads

Application LDAPCP for Developers
application, 454K, uploaded Jul 7, 2016 - 1851 downloads
Application LDAPCP Debug
application, 322K, uploaded Jul 7, 2016 - 89 downloads

Release Notes

Changes in version 5.1 (published 07/07/2016)
- Bug fixes to improve augmentation

Changes in version 5 (published 06/07/2016)
- Added most wanted feature: Augmentation
- Administration pages were completely reviewed. They are now hosted in User Controls instead of directly in pages, so it's now possible to reuse them for different persisted objects
- Updated LDAPCP initialization logic to make it simpler
- Added method LDAPCP.GetConfiguration that replaces LDAPCP.SetCustomConfiguration (that is now deprecated)
- Fixed: exact search is now working fine
- Minor improvements

Changes in version 4 (published 15/06/2016)
- A lot of changes in the code to make it more robust and a lot easier to read and maintain
- Developers that inherit LDAPCP class can do more customization and it's easier thanks to new class "RequestInformation" that gives useful information on current request
- Improved logging
- Fixed bug with "{fqdn}" not applying correctly with multiple LDAP connections
- Fixed bug that prevented in some scenario to create correctly a metadata entry in claims mapping page to populate a property of the PickerEntity (e.g. email)
- Various minor bug fixes

Changes in version 3.10 (published 29/03/2016)
- Added an overridable method that is called after permissions are created, but before they are sent to SharePoint, so that you have developers have a chance to remove the ones already created, and add new ones
- New: by default display name of groups are also queries to create role permissions
- It is not possible to show/hide claim name in display text of permissions
- Various improvements and fixes in claims mapping page

Changes in version 3.9 (published 05/11/2015)
- Fixed NullReferenceException bug that occurred with specific LDAP servers like Tivoli
- LDAPCP can now dynamically append FQDN to LDAP results when it creates permission, using token {fqdn}
- Minor improvements

Changes in version 3.8 (published 09/09/2015)
- An attempt to get LDAP object is now performed even if input was potentially submitted with a keyword that bypasses LDAP lookup
- Fixed a bug where LDAPCP may display permissions in web apps where it is not used

Changes in version 3.7 (published 11/02/2015)
- Implemented SupportsUserKey to support rehydration for provider hosted apps
- Updated logging

Changes in version 3.6 (published 14/01/2015)
- Fixed incorrect test on metadata field while creating item in claims table page
Validated new features added by itsystemsGuy:
- Added in the functionality to search by group attributes (i.e displayName).
- Added in timeout logic so LDAP queries will only run for a certain period of time before failing. The default is 10 seconds for new deployments and can be set in LDAPCP config page.
- Added in logic so that a domain token can be used as a prefix which will then replace {domain} with the relevant domain associated to the search result.

Changes in version 3.4 (published 06/11/2014)
- Improvements in claims table page
- Fixed bug in text description
- Now permission metadata can be set on any SPClaimEntityTypes (not only User)

Changes in version 3.3 (published 12/08/2014)
- Fixed incorrect value of parameter isIdentityClaimType in overridable method FormatPermissionValue
- Fixed permission validation issue when AlwaysResolveUserInput is set to true. Now, if this property is set to true, LDAP lookup is completely bypassed

Changes in version 3.2 (published 18/07/2014)
Added 2 overridable methods to allow customization of value and display text of permissions. This makes some customization a lot easier (see class LDAPCP_CustomResolution in LDAPCP for Developers for more details)

Changes in version 3.1 (published 11/07/2014)
Connection to LDAP servers is now multi-threaded (using Parallel Library only available in .NET 4+)

Changes in version 3.0 (published 08/07/2014)
Rewrote important parts of the code to be smarter, faster and more reliable.
Include various bug fixes
This is also the last version sharing the same code than LDAPCP 2010

Changes in version 2.2 (published 05/06/2014)
Fixed a minor bug that prevented LDAPCP to return results from central administration in rare scenarios

Changes in version 2.1 (published 05/06/2014)
Updated LDAPCP administration pages to:
- Connect to multiple LDAP / AD
- Set a keyword to resolve an input without LDAP lookup
- Set a prefix to add to a value returned by LDAP
And other minor improvements

Changes in version 2.0 (published 15/05/2014)
Fixed bug with multithreading: Results collections used by LDAPCP were shared by every thread. As a result, in very rare cases (issues were reported only with Project when it synchronized permissions between PWA and projects sites), and sometimes (< 1%) permission was created with values of another user.
Full integration of LDAPCP logging with SharePoint logging infrastructure
Improved admin "claims table" page with new options and improved layout

Changes in version 1.11 (published 22/04/2014)
New option to filter exact match only
New option to specify a custom LDAP filter individually for each LDAP attribute
Minor optimizations
Added new options in LDAPCP admin pages
Now by default computer accounts are excluded from results list

Changes in version 1.10 (published 27/03/2014)
Improved logging with a dedicated Area (LDAPCP) and a dedicated event id (1337)
Fixed memory leak issue
Some optimizations to improve performance
Better management of permissions metadata

Changes in version 1.9 (published 12/11/2013)
Minor optimizations in the code
Removed messages related to metadata of permission from ULS logging, which tended to flood the logs
added parameters "context" and "entityTypes" in method SetLDAPConnections to cover new scenarios for developers

Changes in version 1.8.0.0 (published 23/09/2013)
Many changes on the code to improve resilience and better support customizations of developers (especially when connecting to multiple LDAP servers)
added new property "LDAPAttributeToDisplay" to customize display text of each claim type
updated general admin page
added new LDAP attribute "sn" to search users with their last name
improved logging
minor bug fixes

Changes in version 1.7.0.0 (published 13/05/2013)
Added a new administration page to customize claims list
Fixed: minor bug that could occur with attributes set to be resolved as identity claim

Changes in version 1.6.0.0 (published 17/04/2013)
Fixed: bug when creating a SPClaimTypeMapping with a LocalClaimType different than IncomingClaimType

Changes in version 1.5.0.0 (published 28/03/2013)
New: Added ability to connect to LDAP in ServerBind authentication mode
New: Added option to exclude AD distribution lists from LDAP lookup

Changes in version 1.4.0.0 (published 21/03/2013)
Improved: Dramatic performance improvement of LDAP lookup by not using wildcard in front of search terms by default, which allows LDAP to use its indexes to speed up the lookup
New: Added option to choose to add or not a wildcard in front of search terms by default
New: Searches additional attributes to populate metadata of permission created (title, phone and SIP address)

Changes in version 1.3.0.0 (published 19/02/2013)
Fixed: sAMAccountName LDAP attribute is linked to http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname claim type, as it should
Fixed: better use of WIF namespaces in code: use System.Security.Claims as primary namespace for WIF

Changes in version 1.2.0.1 (published 25/01/2013)
Fixed: Removed an unnecessary check in the constructor that prevented LDAPCP to be called in some processes like OWSTimer or PowerShell, and could prevent to perform some operation.

Changes in version 1.2.0.0 (published 25/01/2013)
New: Added a new option to not resolve disabled users (works for AD only)
Fixed: Incorrect claim type used if incoming and local claim type are different (with New-SPClaimTypeMapping cmdlet)

Changes in version 1.1.0.0 (published 20/01/2013)
- Fixed: error "the user doesn't exist or is not unique" when web application has multiple zones and default zone does not use a TrustedLoginProvider

RTM version for SharePoint 2013 (published 02/12/2012)
It is largely based on LDAPCP 2010 v3.0.0.0, but with improvements and bug fixes:
- Improved: identity claim can now use any LDAP attribute as preferred display value.
- Fixed: Did not search on additional attributes outside of the people picker control.
- Changed: Description text does not display claim provider name anymore for better readability
- Changed 2 claim types:
"http://schemas.xmlsoap.org/claims/Group" becomes "http://schemas.microsoft.com/ws/2008/06/identity/claims/role" because it doesn’t exist anymore in .NET 4.5
"http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname" becomes "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier" because SharePoint throws an error message when it is used in a SAML token.

Reviews for this release

     
Good solution for all your needs. Very powerful and configurable through CA.
by SergeySolovyev on Apr 1, 2016 at 10:19 AM
     
Thanks for a great solution - makes working with PeoplePicker so much easier when Federation is implemented
by mongey on Feb 13, 2015 at 6:02 AM
     
Awesome solution. Works like a charm!
by Flashback333 on Jul 18, 2014 at 4:48 PM
     
Great job ! thanks a lot !
by manuelj on Sep 27, 2013 at 10:42 AM
     
Talk about saving me some time! This solution keeps getting better and better! We are taking advantage of the multiple LDAP connections feature in the Developers package and it works a treat ... Thanks Yvan!
by GlifNard on Sep 27, 2013 at 3:09 AM
     
Excellent! Thanks for this work.
by macslui on Apr 12, 2013 at 2:25 PM