【问题标题】:Need Guidance Implementing OAuth 2.0 in ASP.NET App需要在 ASP.NET 应用程序中实施 OAuth 2.0 的指导
【发布时间】:2014-08-13 21:10:04
【问题描述】:

我创建了一个 ASP.NET 应用程序和一个 Azure-AD 域。目前,我已将 ASP.NET 身份验证设置为命中 Azure-AD 中的 wsfed 端点。一切正常,但问题是这会发出一个 SAML 令牌,我需要一个 JWT。根据我在大量互联网搜索后阅读的内容,我需要对我的 Azure-AD 域的 OAuth 2.0 端点进行身份验证。这样做的问题是,如果一切都按照它的方式配置,我总是从这个端点返回 400,可能是因为我的配置文件都设置为 fed auth。我的问题是如何配置我的 ASP.NET 应用程序,以便它可以与我的 Azure-AD 域的 OAuth 2.0 端点通信?

我需要使用被动身份验证。

【问题讨论】:

    标签: asp.net oauth-2.0 azure-active-directory


    【解决方案1】:

    Azure AD 支持 OAuth2.0 流,您可以在用户使用被动身份验证登录后执行该流,以接收访问令牌以代表用户对 WebAPI 进行委派调用。您可以使用 Active Directory 身份验证库 (ADAL SDK) 来执行 OAuth 流程。这个示例应用程序正是这样做的:http://code.msdn.microsoft.com/AAL-Server-to-Server-9aafccc1

    但是,对于您的方案,我们现在建议使用 OpenId Connect 流程,而不是 SAML SSO + OAuth。使用 Azure AD OpenIDConnect 流,Web 应用程序会收到一个 SSO 令牌 (JWT id_token),它使用它来登录用户,并且还会收到一个可以兑换访问令牌 (JWT 访问令牌) 的身份验证代码 (OAuth 身份验证代码)代表用户访问 WebAPI。 Azure AD 提供了一个执行此操作的 OWIN 组件。这个示例应用程序应该可以帮助您完成:https://github.com/AzureADSamples/WebApp-WebAPI-OpenIDConnect-DotNet

    最后,请参阅此帮助主题以查找 Azure AD 支持和推荐用于您的 Web 应用程序/API 和富客户端/移动应用程序的所有身份验证流程:http://msdn.microsoft.com/en-us/library/azure/dn499820.aspx

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-06
      • 1970-01-01
      • 2010-10-28
      • 2014-11-16
      • 2021-04-03
      • 2012-02-09
      • 2015-06-05
      • 1970-01-01
      相关资源
      最近更新 更多