代码之家  ›  专栏  ›  技术社区  ›  Jaie

Azure广告如何限制应用程序获取用户的电子邮件地址?

  •  0
  • Jaie  · 技术社区  · 8 年前

    我已经设置了一个Azure Active Directory应用程序,以便它使用以下端点登录用户:

    1. https://login.microsoftonline.com/TenanId/oauth2/authorize
    2. https://login.microsoftonline.com/TenanId/oauth2/token

    我已授予Microsoft Graph API权限,但我所能提供的只是“启用访问”部分中的“登录用户”。 我正在尝试解决是否可以从登录过程中检索不可变的ID以外的任何内容。 查看权限时,似乎在授予登录权限的同时,我还授予访问用户详细信息的权限。是否可以设置此设置,以便我只授予登录权限,而不使用此版本检索任何用户详细信息?

    1 回复  |  直到 8 年前
        1
  •  0
  •   Sa Yang    8 年前

    是否可以设置为仅授予登录权限 但不使用此版本检索任何用户详细信息?

    这是不可能的。

    当您授予用户登录权限时,它还将允许应用程序读取用户配置文件。 The permission 显示字符串为 Sign-in and read user profile 它的名字是 User.Read .

    描述:允许用户登录应用程序,并允许应用程序 阅读已登录用户的配置文件。它还允许应用程序读取 已登录用户的基本公司信息。

    为什么?

    基于OAuth/ODIC,当您使用AAD帐户登录您的应用程序(通过AAD验证/授权您的应用程序)时,您可以使用AAD帐户登录,它必须需要读取用户配置文件。否则,您的应用程序无法知道用户是谁,也无法进行身份验证/授权。 这是应用程序允许用户登录时所需的基本权限。