Microsoft Graph API FindRooms ErrorAccessDenied

时间:2017-11-23 07:20:36

标签: microsoft-graph

我们正尝试通过Beta API上的user_findrooms获取组织中的会议室列表。

我正在使用php-connect-sample,并在此处创建issue后被定向到此处。

我们的应用程序已注册,并具有所需的权限。用户已登录并正确重定向。我可以成功获得Consumer<Trader> traderConsumer1 = trader -> trader.updateBonus(2); Consumer<Trader> traderConsumer2 = trader -> System.out.println(trader); traders.forEach(traderConsumer1.andThen(traderConsumer2)); 端点

当我尝试像这样获取std::bad_function_call端点时:

/me

然后我收到以下错误:

  

客户端错误:获取https://graph.microsoft.com/beta/me/findRooms   导致403 Forbidden响应:{“error”:{“code”:   “ErrorAccessDenied”,“message”:“访问被拒绝。检查凭据   然后再试一次。“,(截断......)

所以它似乎是一个权限错误。

我们的应用具有以下图表权限:

委派权限/me/findRooms$graph = new Graph(); $graph->setApiVersion('beta'); $graph->setAccessToken($_SESSION['access_token']); $rooms = $graph->createRequest("get", "/me/findRooms") ->setReturnType(Model\EmailAddress::class) ->execute();

申请权限User.ReadBasic.AllUser.Read.All

访问Calendars.ReadWrite需要哪些其他权限?

1 个答案:

答案 0 :(得分:1)

在您的身份验证流程中,您需要在示波器中指定User.Read.All而不是User.Read,因为此API需要读取目录中的所有用户才能查找会议室可用性。 Here is more information about how to request such scopes during the /authorize and /token requests