如何仅使用 Microsoft 个人帐户在 Microsoft Graph 中进行身份验证?

23W

根据文档,Microsoft Graph 仅支持来自 Azure AD v2.0 和 Azure AD 的令牌:

Microsoft Graph 支持两种身份验证提供程序:

  • 要使用个人 Microsoft 帐户(例如 live.com 或 outlook.com 帐户)对用户进行身份验证,请使用 Azure Active Directory (Azure AD) v2.0 终结点。
  • 若要使用企业(即工作或学校)帐户对用户进行身份验证,请使用 Azure AD。

但是,Azure AD v2.0 是支持两种 Microsoft 帐户类型的新端点:个人(以前的 Live 帐户)和工作/学校(经典的 Azure AD 帐户)。目前还不清楚,如何将授权仅限于个人帐户。

Azure AD 仅支持工作/学校帐户。

那么,如果我想允许我的应用程序仅使用个人帐户,该怎么做?如何仅使用 Microsoft 个人帐户在 Microsoft Graph 中进行身份验证(禁止用户使用工作/学校帐户)?

PS:如果重要的话,我在我的应用程序中使用 MSAL 进行身份验证。

高拉夫曼特里

根据 的文档Azure AD v2.0,如果您只想支持Microsoft Accounts,您想要使用的端点是https://login.microsoftonline.com/consumers/oauth2/v2.0/authorize. 这里的关键是consumers确保您的用户只能选择使用 Microsoft 帐户进行身份验证。

如果我接受Github example of MSAL,你会做出的改变是Startup_Auth.cs

        app.UseOpenIdConnectAuthentication(
            new OpenIdConnectAuthenticationOptions
            {
                // The `Authority` represents the v2.0 endpoint - https://login.microsoftonline.com/consumers/v2.0
                // The `Scope` describes the initial permissions that your app will need.  See https://azure.microsoft.com/documentation/articles/active-directory-v2-scopes/                    
                ClientId = clientId,
                Authority = String.Format(CultureInfo.InvariantCulture, aadInstance, "consumers", "/v2.0"),
                RedirectUri = redirectUri,                    
                Scope = "openid email profile offline_access Mail.Read",
                PostLogoutRedirectUri = redirectUri,
                TokenValidationParameters = new TokenValidationParameters

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Microsoft Graph个人帐户。如何获取用户照片?

Microsoft Graph / me不适用于个人帐户

用于个人帐户的Microsoft Graph Email API(webhooks)?

Microsoft Graph 使用客户端凭据流(应用程序权限)和个人帐户发送邮件

Microsoft Graph登录-个人帐户触发“租户中不存在用户帐户”

使用Powershell对Microsoft Graph API进行身份验证

通过Microsoft Graph API非交互地从个人帐户访问日历

在Microsoft Graph API中获取个人帐户的邮箱别名无效

使用个人帐户microsoft登录OAuth2和Azure Active Directory

使用Microsoft.Graph库的仅应用程序Microsoft Graph身份验证

Microsoft Graph API - 个人帐户的 Mail.ReadBasic 范围支持(hotmail.com、live.com、outlook.com)

使用服务帐户凭据的Microsoft Graph的OAuth2身份验证

Microsoft Graph API OnlineMeeting 如何对与会者进行身份验证

如何通过django-microsoft-auth使用Azure AD在Django中进行身份验证

Swift-使用Microsoft Graph进行Firebase身份验证(重定向URL问题)

在Microsoft Teams Bot中进行身份验证后如何获取用户访问令牌?

ADAL.js在Microsoft个人帐户中不起作用

Microsoft Identity Platform V2不适用于个人帐户

日历事件无法获取| Microsoft Graph API | 使用高级个人前景帐户

如何使用 django-microsoft-auth 获取当前登录用户进行 Microsoft 身份验证?

带有 MSAL 的 Microsoft Graph 身份验证(问题)

Microsoft Graph 中的 Outlook API 身份验证

当Web应用程序向Microsoft Graph验证访问者及其本身的身份时,身份验证就会进行

使用 Python 的 Microsoft Sharepoint 身份验证

如何在Microsoft AD OAuth 2身份验证中从“工作”帐户告诉“学校”

与所有Microsoft帐户的Node.js一起使用的身份验证库

如何使用 Microsoft Share To Teams 按钮对用户进行身份验证?

通过Microsoft Azure进行身份验证时如何使用nativeclient重定向URI?

如何使用Azure B2C对Microsoft chatbot进行身份验证