忽略Azure图形API请求中的多因素身份验证

时间:2020-04-09 04:21:25

标签: azure-active-directory azure-ad-graph-api multi-factor-authentication

我想从Azure AD验证用户凭据。该功能适用​​于尚未启用MFA的用户,但是MFA允许用户低于错误。

由于管理员更改了配置,或者 您移至新位置后,必须使用多重身份验证 访问

因此,当我们通过图形API访问时,它需要一种忽略MFA的方法

这是我的代码。

     var values = new Dictionary<string, string>
        {
        { "grant_type", "password" },
        { "client_secret", appKey },
        { "client_id", clientId },
        { "username", userName },
        { "password", password },
        { "scope", "User.Read openid profile offline_access" },
        };

        HttpClient client = new HttpClient();
        string requestUrl = $"https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token";
        var content = new FormUrlEncodedContent(values);

        var response = client.PostAsync(requestUrl, content).Result;

        if (response.IsSuccessStatusCode)
        {
            return true;
        }
        else
        {
            return false;
        }

1 个答案:

答案 0 :(得分:0)

验证用户凭据的正确方法是让用户通过浏览器进行交互身份验证。 这将使他们能够通过MFA,通过与ADFS的联盟登录等。 最重要的是,用户不必将密码提供给您的应用。

您要使用的流仅在规范中作为旧应用程序的升级路径存在。 启用MFA后,其使用就基本上变得不可能了。

相关问题