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 >

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.10 3,527 1/30/2015
1.0.8 681 1/23/2015
1.0.7 561 1/16/2015
1.0.6 545 1/16/2015
1.0.4 676 1/15/2015