C# Can';t使用客户端id和密码访问用户照片

C# Can';t使用客户端id和密码访问用户照片,c#,azure,office365,azure-active-directory,microsoft-graph-api,C#,Azure,Office365,Azure Active Directory,Microsoft Graph Api,我试图使用统一API(Microsoft.Graph 1.0.1)访问我的用户profil照片,但在访问照片时,我只返回以下错误: 代码:ErrorAccessDenied 消息:访问被拒绝。请检查凭据,然后重试 访问/列出其他用户配置文件数据工作正常,我的应用程序通过添加为“公司管理员”,并在管理门户中设置了所有权限。当我与我的管理员用户一起登录时,它也可以正常工作。另外,通过“旧”Azure Active Directory图形API,我可以读/写用户的缩略图照片,但这不是Office 36

我试图使用统一API(Microsoft.Graph 1.0.1)访问我的用户profil照片,但在访问照片时,我只返回以下错误:

代码:ErrorAccessDenied
消息:访问被拒绝。请检查凭据,然后重试

访问/列出其他用户配置文件数据工作正常,我的应用程序通过添加为“公司管理员”,并在管理门户中设置了所有权限。当我与我的管理员用户一起登录时,它也可以正常工作。另外,通过“旧”Azure Active Directory图形API,我可以读/写用户的缩略图照片,但这不是Office 365中显示的照片

如何获得对用户个人资料照片执行操作的适当访问权限?

这是我使用的代码(简称为相关部分):


以防万一其他人看到这个错误。我在创建自己的graphClient时也遇到了同样的错误,我得到它的原因是使用了一个非管理员帐户

var users = await graphClient.Users.Request().Select().GetAsync();
使用非管理员帐户,您只能访问一些基本属性,如lastname、firstname等-这对我很有用

var users = await graphClient.Users.Request().Select("mail,givenName,surname").GetAsync();

能否提供HTTP请求和响应,包括失败案例的标题?谢谢。看一看,看是否helps@VenkatAyyadevara-MSFT谢谢,但我已经设法通过邮递员获得了请求/回复-请查看我的更新问题:最后我包括了一个示例谢谢你的信息!将要求我的团队查看并回复您。@ChrFin您能告诉我们您在应用程序配置中配置/请求了哪些权限吗?或者更好的是,您可以解密您的令牌(使用类似jwt.calebb.net的东西)并告诉我们哪些“角色”已授予您的应用程序吗?我还需要在我的web.config中提供以下内容。。。
{
 typ: "JWT",
 alg: "RS256",
 x5t: "MnC_VZcATfM5pOYiJHMba9goEKY",
 kid: "MnC_VZcATfM5pOYiJHMba9goEKY"
}.
{
 aud: "https://graph.microsoft.com",
 iss: "https://sts.windows.net/11205e59-fa81-480f-b497-571579c5389a/",
 iat: 1462795409,
 nbf: 1462795409,
 exp: 1462799309,
 appid: "c34a87ef-352a-4af4-a166-eb7e521a0ec9",
 appidacr: "1",
 idp: "https://sts.windows.net/11205e59-fa81-480f-b497-571579c5389a/",
 oid: "1db8c6b5-10ba-40ac-bbff-86ab440c4fd3",
 roles: [
  "Mail.ReadWrite",
  "Device.ReadWrite.All",
  "User.ReadWrite.All",
  "Calendars.Read",
  "Group.Read.All",
  "Directory.ReadWrite.All",
  "Contacts.ReadWrite",
  "Group.ReadWrite.All",
  "Directory.Read.All",
  "User.Read.All",
  "Mail.Read",
  "Calendars.ReadWrite",
  "Mail.Send",
  "MailboxSettings.ReadWrite",
  "Contacts.Read"
 ],
 sub: "1db8c6b5-10ba-40ac-bbff-86ab440c4fd3",
 tid: "11205e59-fa81-480f-b497-571579c5389a",
 ver: "1.0"
}
var users = await graphClient.Users.Request().Select().GetAsync();
var users = await graphClient.Users.Request().Select("mail,givenName,surname").GetAsync();