首页 文章

在ASP.NET Core应用程序中使用标准Active Directory?

提问于
浏览
5

我正在创建一个新的ASP.NET Core 1.0应用程序 . 其中一个要求是使用Active Directory进行用户身份验证 . 不幸的是,我们的组织只使用“旧”Active Directory . 我们根本不使用Azure Active Directory .

当我在Visual Studio 2015中创建一个新项目时,在“更改身份验证”下没有此选项:

enter image description here

最好的方法是什么?

2 回答

  • 1

    这是目前不可能的 .

    ASP.NET Core仅支持OpenID Connect OIDC . 当前的ADFS版本,您需要在本地单个组织仅支持WSFed,它尚未在Core中实现,并且不太可能通过RTM在Core中实现 . ADFS也支持OAuth,但为该部分编写代码的AAD团队一直专注于OIDC .

  • 3

    ASP.NET Core 1.0 RC2可以利用Windows身份验证 . 以下代码将使您可以访问Configure()函数中的AD用户标识对象 . 我还没有发现将此标识映射到ApplicationDbContext中的Microsoft.AspNetCore.Identity授权的优雅方法 .

    app.Use(async (context, next) =>
        {
                var identity = (ClaimsIdentity) context.User.Identity;
                await next.Invoke();
        });
    

    我发布了一个您可能想要关注的类似问题:Best practice for storing ASP.NET Core Authorization claims when authenticating users against Active Directory?

相关问题