AngularJs web服务用户帐户

AngularJs web服务用户帐户,angularjs,web-services,azure,authentication,asp.net-web-api,Angularjs,Web Services,Azure,Authentication,Asp.net Web Api,我已经基于Azure构建了一个web应用程序。我在Azure中有一个web api服务作为后端,angularjs作为前端hostet 我想创建一个带有个人用户帐户的登录页面。经过一些阅读,我发现了不同的用户身份验证策略。有些使用SQL数据库管理用户帐户。有些使用Azure Active Directory。当我不得不使用Azure AD和SQL Database时?我的意见是比较您将获得的好处 Azure广告: 对于IT管理员,Azure AD提供了一个价格合理、易于使用的解决方案 为员工和

我已经基于Azure构建了一个web应用程序。我在Azure中有一个web api服务作为后端,angularjs作为前端hostet


我想创建一个带有个人用户帐户的登录页面。经过一些阅读,我发现了不同的用户身份验证策略。有些使用SQL数据库管理用户帐户。有些使用Azure Active Directory。当我不得不使用Azure AD和SQL Database时?

我的意见是比较您将获得的好处

Azure广告:

对于IT管理员,Azure AD提供了一个价格合理、易于使用的解决方案 为员工和业务合作伙伴提供单点登录(SSO)访问权限 数以千计的云SaaS应用程序,如Office365、Salesforce.com、, DropBox和Concur

对于应用程序开发人员,Azure AD允许您专注于构建 通过使其快速和简单地与世界集成 数百万组织使用的类标识管理解决方案 环游世界

Azure广告还包括一整套身份管理 功能包括多因素身份验证、设备 注册、自助密码管理、自助组 管理、特权帐户管理、基于角色的访问控制、, 应用程序使用情况监视、丰富的审核和安全监视 和警觉。这些功能有助于确保基于云的安全 应用程序、简化IT流程、降低成本并帮助确保 实现了公司合规目标

使用您的数据库自己动手,您将必须完成以上所有工作,例如使用Office365进行SSO


所以你必须问问自己你的应用程序是做什么的?选择适合您需要的方法

用SQL管理自己用户帐户的应用程序称为基于表单的身份验证。这是大多数互联网应用程序过去的工作方式,但也有很多缺点

用户必须记住每个站点的密码,但通常在多个站点上重复使用密码。如果一个网站遭到黑客攻击并破坏了密码数据库,那么其他网站上的用户帐户可能会受到威胁

为了防止这种情况发生,网站必须确保正确存储密码(使用慢速算法对密码进行加密和散列),并应用其他类型的操作安全性来保护数据库

然后出现了基于令牌的身份验证,它允许应用程序将身份验证部分委托给外部第三方。这允许用户使用相同的用户名和密码登录到多个应用程序

大多数第三方登录提供商,如谷歌、微软、Facebook等,都有专门的服务人员,因此比您自己创建的任何服务都更安全

所以,除非你有很好的理由不这么做,否则我建议你使用第三方登录提供商,比如Azure AD和其他可能的