计划为angularjs和webapi项目实现基于令牌的身份验证,我们将开发一个内部企业应用程序 .

我们需要实现可以使用的身份验证

从网络内部访问

  • Windows身份验证(内部网络)
    如果从外部网络访问,
  • 并显示登录表单 .

我们在SQL数据库中有用户和角色表 . 我们需要对Active Directory进行身份验证,但使用SQL数据库中的用户信息和角色信息 .

这是我想到的计划

  • 检查请求来源

  • 如果内部使用System.UserName并从SQL db获取用户和角色信息

  • 如果是外部显示登录表单,请允许用户输入用户名和密码 . 使用输入的用户名和密码检查Active Directory . 如果成功从Active Directory获取公用名,并使用它从SQL db获取用户和角色信息 .

我们如何为angularjs和webapi应用程序实现基于令牌的身份验证?