我正在考虑将 Windows Azure ACS 作为在我的应用程序中实现我自己的用户名/密码方案的替代方案。这将是一个公开网站。
除了使用 Google 或 Facebook 等 SSO 提供商之外,我还可以使用 Windows Azure ACS 来支持用户名/密码身份验证吗?
我发现它支持 Active Directory 作为提供程序。我不确定这是否正确,因为我一直将 Active Directory 视为“企业”提供商。
最佳答案
Windows Azure ACS 不支持您所需形式的用户名/密码身份验证。 Shahin 对此进行了详细概述。
您的选择实际上是:
- Windows Azure Active Directory (WAAD)
- Identity Server (IdSVR)
虽然使用域 Controller 选项部署的经典本地 Active Directory 确实非常有进取心,但 WAAD 并不是云中相同内容的精确副本。我实际上建议您尝试一下。使用WAAD Graph API您可以在 WAAD 中完全自动化用户管理。
您的第二个选项基于 IdSVR。这是功能齐全的身份服务器和安全 token 服务。它是根据安全方面的最佳实践开发的,并且非常容易扩展!虽然它不提供对用户管理(用户注册、密码重置等)的开箱即用支持,但它是 ASP.NET MVC 4 应用程序。因此您可以非常轻松地自己添加此功能。实际上有an open enhancement planned for User Management API and UI .
WAAD 和 IdSVR 都与 ACS 集成良好,因此您可以为社交身份以及自己的登录提供无缝支持。
另一项仍处于 Beta/预览版的服务是 SocialSTS project 。它是 Azure ACS 的扩展,旨在帮助您向访问控制服务添加更多身份提供商(例如 LinkedIn、Twitter、GitHUB、Amazon Login 等)。
关于azure - Windows Azure ACS 是否支持用户名/密码身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16922237/