ASystems.DirectoryServicesProviders 1.0.10

This package include a custom implementation of ActiveDirectoryMembershipProvider which allowes for caching and return of displayname.
It also includes a RoleProvider leveraging LDAP group as roles (lacks support for adding and deleting roles).

Configuration for the provider, read https://msdn.microsoft.com/en-us/library/system.web.security.activedirectorymembershipprovider.aspx for more info

<add name="DirectoryServicesMembershipProvider"
  type="ASystems.DirectoryServicesProviders.DirectoryServicesMembershipProvider, ASystems.DirectoryServicesProviders"
  connectionStringName="ADService"
  connectionUsername="UserWithAppropriateRights" <!-- remove for apppool credentials -->
  connectionPassword="PasswordForUser" <!-- remove for apppool credentials -->
  connectionProtection="Secure" <-- Secure, None -->
  cache="15" <!-- minutes to cache, 0 to disable caching -->
  allowedRoles="" <!-- comma separated string with groups, or name of appsetting containing the comma separated groups -->
  enableUpdate="true"
  enablePasswordReset="true"
  enableSearchMethods="true"
  requiresQuestionAndAnswer="true"
  applicationName="/"
  description="Default AD connection"
  requiresUniqueEmail="false"
  clientSearchTimeout="30"
  serverSearchTimeout="30"
  attributeMapPasswordQuestion="department"
  attributeMapPasswordAnswer="division"
  attributeMapFailedPasswordAnswerCount="singleIntAttribute"
  attributeMapFailedPasswordAnswerTime="singleLargeIntAttribute"
  attributeMapFailedPasswordAnswerLockoutTime="singleLargeIntAttribute"
  attributeMapEmail = "mail"
  attributeMapUsername = "userPrincipalName" <!-- userPrincipalName, sAMAccountName -->
  attributeMapProviderUserKey = "objectSid" <!-- objectSid, objectGUID -->
  additionalAttributes = "" <!-- comma separated string with attributes that are included in search results -->
  maxInvalidPasswordAttempts = "5"
  mergeWith="NameOfMembershipProvider" <!-- use to combine users from multiple providers -->
  mergeStyle="After" <!-- After, Before -->
  passwordAttemptWindow = "10"
  passwordAnswerAttemptLockoutDuration = "30"
  minRequiredPasswordLength="7"
  minRequiredNonalphanumericCharacters="1"
  passwordStrengthRegularExpression="@\"(?=.{6,})(?=(.*\d){1,})(?=(.*\W){1,})""
/>

<add name="DirectoryServicesRoleProvider"
  type="ASystems.DirectoryServicesProviders.DirectoryServicesRoleProvider, ASystems.DirectoryServicesProviders"
  connectionStringName="ADService"
  connectionUsername="UserWithAppropriateRights" <!-- remove for apppool credentials -->
  connectionPassword="PasswordForUser" <!-- remove for apppool credentials -->
  connectionProtection="Secure" <-- Secure, None -->
  cache="15" <!-- minutes to cache, 0 to disable caching -->
  useOrganisationalUnits="false" <!-- use organisational units as role instead of groups -->
  mergeWith="NameOfRoleProvider" <!-- use to combine roles from multiple providers -->
  mergeStyle="After" <!-- After, Before, Mixed -->
  applicationName="/"
  attributeMapUsername = "userPrincipalName" <!-- userPrincipalName, sAMAccountName -->
/>

Install-Package ASystems.DirectoryServicesProviders -Version 1.0.10
dotnet add package ASystems.DirectoryServicesProviders --version 1.0.10
<PackageReference Include="ASystems.DirectoryServicesProviders" Version="1.0.10" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ASystems.DirectoryServicesProviders --version 1.0.10
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

Ability to disable updating users in directory service < this should also apply for create and delete >

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.10 3,150 1/30/2015
1.0.8 560 1/23/2015
1.0.7 438 1/16/2015
1.0.6 420 1/16/2015
1.0.4 535 1/15/2015