如何在ASP.NET样板文件中使用LDAP(免费启动模板)

如何在ASP.NET样板文件中使用LDAP(免费启动模板),asp.net,active-directory,ldap,asp.net-core-2.0,aspnetboilerplate,Asp.net,Active Directory,Ldap,Asp.net Core 2.0,Aspnetboilerplate,我想使用免费启动模板版本的样板文件,在我的.net核心应用程序中通过Active Directory集成身份验证。我按照中的说明进行操作,例如安装Abp.Zero.Ldap包,创建ldapaauthenticationsource类,并注入依赖项,如: [DependsOn(typeof(AbpZeroLdapModule))] public class MyApplicationCoreModule : AbpModule { public override void PreIniti

我想使用免费启动模板版本的样板文件,在我的.net核心应用程序中通过Active Directory集成身份验证。我按照中的说明进行操作,例如安装
Abp.Zero.Ldap
包,创建
ldapaauthenticationsource
类,并注入依赖项,如:

[DependsOn(typeof(AbpZeroLdapModule))]
public class MyApplicationCoreModule : AbpModule
{
    public override void PreInitialize()
    {
        Configuration.Modules.ZeroLdap().Enable(typeof (MyLdapAuthenticationSource));    
    }

    ...
}
我是否需要使用实现
ILdapSettings
接口的类来定义任何自定义设置?或创建引用?

.NET Core 2.0的任何类或文件 这些指令可能不起作用,因为尚未实现.NET Core的LDAP/AD auth扩展

跟踪此功能:

.NET Framework 4.6.1 通过安装
Abp.Zero.Ldap
包,您已经在引用该模块(已移动)

如中所述:

LdapAuthenticationSource需要ILdapSettings作为构造函数参数。此接口用于获取LDAP设置,如连接到Active Directory的域、用户名和密码。默认实现(LdapSettingsclass)从设置管理器获取这些设置

如果使用设置管理器,则没有问题。您可以使用更改LDAP设置。如果需要,可以将初始/种子数据添加到数据库中,以在默认情况下启用LDAP身份验证

因此,您不需要创建实现
ILdapSettings
的类。使用设置管理器的好处是它将设置存储在数据库中。自定义类用于从其他地方获取它或硬编码它(如果您只是想尝试,那么它很有用,但在生产/git提交中是一个大禁忌)

首先,您可以通过以下方式为主机添加种子数据:


谢谢你的回复。我使用了一个核心2.0模板和一个完整的.NET框架作为目标框架。不知道这意味着什么,但在依赖项注入过程中不再出现引用错误,这是我使用Core2.0模板和.NET Core(跨平台)作为目标框架时得到的。是的,请参阅。谢谢!我要试一试!这个问题解决了吗?我让它工作,但我怎样才能验证我的用户在广告上没有传递其密码?谢谢
public void Create()
{
    // ...

    // LDAP
    AddSettingIfNotExists(LdapSettingNames.IsEnabled, "false");
    // AddSettingIfNotExists(LdapSettingNames...
}