UmbBackofficeMembershipProvider 4.1.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package UmbBackofficeMembershipProvider --version 4.1.1                
NuGet\Install-Package UmbBackofficeMembershipProvider -Version 4.1.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="UmbBackofficeMembershipProvider" Version="4.1.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add UmbBackofficeMembershipProvider --version 4.1.1                
#r "nuget: UmbBackofficeMembershipProvider, 4.1.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install UmbBackofficeMembershipProvider as a Cake Addin
#addin nuget:?package=UmbBackofficeMembershipProvider&version=4.1.1

// Install UmbBackofficeMembershipProvider as a Cake Tool
#tool nuget:?package=UmbBackofficeMembershipProvider&version=4.1.1                

UmbBackofficeMembershipProvider

Code to allow Umbraco 7.7.2+ to use MembershipProvider-based providers for Active Directory authentication.

Users of Umbraco 7.4.2-7.7.1 should use UmbBackofficeMembershipProvider 3.0.0 (NuGet). This version requires API changes and bug fixes present in Umbraco 7.7.2+ to function properly.

What's inside

This project includes a DLL that will allow you to use a traditional MembershipProvider for logging in Umbraco backoffice users.

System requirements

  1. NET Framework 4.5
  2. Umbraco 7.7.2+

NuGet availability

This project is available on NuGet.

Usage instructions

Getting started

  1. Before making any configuration file changes, make sure that you have an Administrator-level user account in Umbraco with the same username as the Active Directory account that you will use to login to Umbraco. It doesn't matter what you set for the password once UmbBackofficeMembershipProvider is enabled as it will check against Active Directory and not Umbraco for the password.

Installing UmbBackofficeMembershipProvider

  1. Add UmbBackofficeMembershipProvider.dll as a reference in your project or place it in the \bin folder.

  2. In web.config, make the following modifications:

    • Add or modify the following line in the <appSettings> section:
    <add key="owin:appStartup" value="BackofficeMembershipProviderCustomOwinStartup" />
    
    • Add a LDAP connection string to your LDAP server in the <connectionStrings> section, like shown in the example code below. Specify a path to the domain root or a container/OU if you want to limit where the user accounts can be located.
    <add connectionString="LDAP://mydomain.mycompany.com/DC=mydomain,DC=mycompany,DC=com" name="ADConnectionString" />
    
    • Add a membership provider named BackofficeMembershipProvider, like shown in the example code below. Be sure the connectionStringName matches the LDAP connection string you defined. attributeMapUsername specifies the username format - sAMAccountName for just the username, or userPrincipalName to use username@mydomain.mycompany.com. Be sure the usernames you configure in Umbraco use the same format.

    • If you are upgrading from a pre-7.3.1 version of Umbraco that used an Active Directory provider for backoffice users, you must change UsersMembershipProvider to Umbraco.Web.Security.Providers.UsersMembershipProvider. If you have a new installation, this is the default provider already.

    <membership defaultProvider="UmbracoMembershipProvider">
      <providers>
        <add
           name="BackofficeMembershipProvider"
           type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=4.0.0.0, 
                 Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
           connectionStringName="ADConnectionString"
           attributeMapUsername="sAMAccountName"
           connectionUsername="testdomain\administrator" 
           connectionPassword="password"/>
        <add
          name="UsersMembershipProvider"
          type="Umbraco.Web.Security.Providers.UsersMembershipProvider, Umbraco"
          minRequiredNonalphanumericCharacters="0" minRequiredPasswordLength="8"
          useLegacyEncoding="true" enablePasswordRetrieval="false"
          enablePasswordReset="true" requiresQuestionAndAnswer="false"
          passwordFormat="Hashed" />
      </providers>
     </membership>
  1. In config\UmbracoSettings.config:
    • If you are using the default Umbraco.Web.Security.Providers.UsersMembershipProvider class for UsersMembershipProvider, you don't need to do anything.

Configure user account creation

This version of UmbBackOfficeMembershipProvider can automatically create Umbraco backoffice user accounts for authenticated users. If you want to enable this functionality, follow these instructions:

  1. Insert the following <appSettings> keys in web.config:
    • <add key="BackOfficeMembershipProvider:CreateAccounts" value="true" /> - set to true to enable automatic account creation
    • <add key="BackOfficeMembershipProvider:AccountRoles" value="editor" /> - comma-separated list of groups user should be added to; defaults to editor if key is not present
    • <add key="BackOfficeMembershipProvider:AccountCulture" value="en-US" /> - culture/language to use in creating new account; defaults to value of umbracoDefaultUILanguage if key is not present
    • <add key="BackOfficeMembershipProvider:AccountEmailDomain" value="mydomain.com" /> - specifies domain name to be used in setting username@accountemaildomain e-mail address for newly created accounts; ignored if username is already a valid e-mail address, hostname of website is used otherwise if key is not present
Product Compatible and additional computed target framework versions.
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.2.0 1,398 12/9/2018
4.1.1 13,944 10/3/2017
4.1.0 1,069 10/3/2017
3.0.0 5,705 3/9/2017
2.0.1 6,304 2/22/2016
2.0.0 989 2/9/2016

Removes unneeded dependencies from 4.1.0.

This version allows the automatic creation of Umbraco backoffice accounts for authenticated users. Umbraco 7.7.2+ required.