Merge pull request #1292 from darrenferguson/dev-v7
Fix U4-8532 - No built in Active Directory authentication in Umbraco
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
using System.Configuration;
|
||||
using System.DirectoryServices.AccountManagement;
|
||||
using System.Threading.Tasks;
|
||||
using Umbraco.Core.Models.Identity;
|
||||
|
||||
namespace Umbraco.Core.Security
|
||||
{
|
||||
public class ActiveDirectoryBackOfficeUserPasswordChecker : IBackOfficeUserPasswordChecker
|
||||
{
|
||||
public virtual string ActiveDirectoryDomain {
|
||||
get {
|
||||
return ConfigurationManager.AppSettings["ActiveDirectoryDomain"];
|
||||
}
|
||||
}
|
||||
|
||||
public Task<BackOfficeUserPasswordCheckerResult> CheckPasswordAsync(BackOfficeIdentityUser user, string password)
|
||||
{
|
||||
bool isValid;
|
||||
using (var pc = new PrincipalContext(ContextType.Domain, ActiveDirectoryDomain))
|
||||
{
|
||||
isValid = pc.ValidateCredentials(user.UserName, password);
|
||||
}
|
||||
|
||||
var result = isValid
|
||||
? BackOfficeUserPasswordCheckerResult.ValidCredentials
|
||||
: BackOfficeUserPasswordCheckerResult.InvalidCredentials;
|
||||
|
||||
return Task.FromResult(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -114,6 +114,7 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\SqlServerCE.4.0.0.1\lib\System.Data.SqlServerCe.Entity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.DirectoryServices.AccountManagement" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Net.Http.WebRequest" />
|
||||
@@ -504,6 +505,7 @@
|
||||
<Compile Include="PropertyEditors\ValueConverters\ImageCropperValueConverter.cs" />
|
||||
<Compile Include="Publishing\UnPublishedStatusType.cs" />
|
||||
<Compile Include="Publishing\UnPublishStatus.cs" />
|
||||
<Compile Include="Security\ActiveDirectoryBackOfficeUserPasswordChecker.cs" />
|
||||
<Compile Include="Security\BackOfficeClaimsIdentityFactory.cs" />
|
||||
<Compile Include="Security\BackOfficeCookieAuthenticationProvider.cs" />
|
||||
<Compile Include="Security\BackOfficeSignInManager.cs" />
|
||||
|
||||
Reference in New Issue
Block a user