【问题标题】:Azure AD Authentication through restful api通过 restful api 进行 Azure AD 身份验证
【发布时间】:2021-06-19 17:21:07
【问题描述】:

我现在正在通过这两个示例使用 Azure AD 身份验证,并且一切正常:

但是有什么方法可以使用如下所示的 RESTful API 对 Azure AD 进行身份验证?

POST https://loginmicrosoft/XXXXXX
Body 
{
    "username":"YOURACCOUNT",
    "password":"YOURPASSWORD"
}

我想使用这种方式的原因是因为我们有自己的登录页面并希望与 Azure AD 集成。

【问题讨论】:

    标签: azure authentication oauth-2.0 restful-authentication


    【解决方案1】:

    是的,你可以。它在 OAuth 2.0 中使用资源所有者密码凭证授权来调用。但是,从 OAuth 2.1 开始,它不再是有效的流程,Microsoft 建议您不要使用它。在此处查看他们的文档:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc

    OAuth 2.1 整合了后续规范中发布的更改以简化核心文档。

    与 OAuth 2.0 的主要区别如下所示。

    • 使用授权代码流的所有 OAuth 客户端都需要 PKCE
    • 必须使用精确的字符串匹配来比较重定向 URI 本规范省略了隐式授权 (response_type=token)
    • 本规范省略了资源所有者密码凭据授予
    • 不记名令牌使用省略了在 URI 的查询字符串中使用不记名令牌
    • 公共客户端的刷新令牌必须受发件人限制或一次性使用

    如果您有自己的登录页面,为什么不在 Azure AD 上进行重定向或托管您的登录页面?

    【讨论】:

    • 感谢您的回答! “如果您有自己的登录页面,为什么不在 Azure AD 上进行重定向或托管您的登录页面?”,因为我们的登录页面也是在 OAuth 2.0 流程中设计的,所以我们只是想知道如何将我们的登录方法与 Azure 集成AD 但不重定向到 Azure AD 登录页面。
    • 顺便说一句,由于我们的帐户在一个组织(公司)下,我们也可以使用 ROPC 流程吗?
    猜你喜欢
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2012-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-01
    相关资源
    最近更新 更多