【问题标题】:Securing .Net Core Web Api for Angular 2保护 Angular 2 的 .Net Core Web Api
【发布时间】:2016-10-16 06:16:10
【问题描述】:

我想完全在 Angular2 中构建一个应用程序,它将通过向 .Net Core Web Api 发送调用来与数据库进行对话。有很多关于构建 Web Api 层的好文章,我的 ng2 没问题,但我正在努力寻找有关如何为我的 Angular 2 调用和潜在的第三方调用保护 Web Api 的材料。我愿意接受任何安全机制(Oauth2?)。任何指导表示赞赏。

【问题讨论】:

  • 克隆MVC的github源码获取样本

标签: .net security authentication angular asp.net-core


【解决方案1】:

你看过 GitHub 上的这个 Azure-Sample 了吗?

https://github.com/Azure-Samples/active-directory-angularjs-singlepageapp-dotnet-webapi

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    保护WebApi 通常使用 OAuth2 (access_token)。 为此,您需要实现自己的 OAuth2 令牌生成器服务器,或者您可以使用 Identity Server 4(使用 Identity Server 将为您提供 SSO 功能)。 登录时,Angular 应用程序将收到一个访问令牌并在每个请求的标头中将其发送到WebApiWebApi 将验证访问令牌并授权请求(为此,Identity Server 已经有一个 js 库以及 github 上的大量示例)。

    看看https://github.com/IdentityServer/IdentityServer4

    【讨论】:

      【解决方案3】:

      您可以使用 WebAPI 上的身份验证和授权来保护应用程序。像其他答案一样,您可以使用基于令牌的身份验证。您可以找到许多有关此的在线材料。保护 API 时的一件主要事情是确保授权用户只能访问他有权访问的资源。我注意到许多开发人员忽略了这一点。应用身份验证和授权是不够的,但我们需要确保授权用户无法访问具有相同权限的其他用户的数据。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-06-20
        • 2017-02-27
        • 2021-08-22
        • 2020-07-05
        • 2017-08-05
        • 2017-07-26
        • 1970-01-01
        • 2017-12-04
        相关资源
        最近更新 更多