組織内の客室リストをベータ版のuser_findrooms経由で取得しようとしています。Microsoft Graph API FindRooms ErrorAccessDenied
私はphp-connect-sampleを使用しており、ここにissueを作成した後に指示されました。
アプリケーションが登録されており、必要な権限を持っています。ユーザーはログインし、正しくリダイレクトされます。私はこのような/me/findRooms
エンドポイントを取得しようとすると、私は成功し/me
エンドポイント
を取得することができます:
$graph = new Graph();
$graph->setApiVersion('beta');
$graph->setAccessToken($_SESSION['access_token']);
$rooms = $graph->createRequest("get", "/me/findRooms")
->setReturnType(Model\EmailAddress::class)
->execute();
をその後、私は次のエラーを取得する:
Client error: GET https://graph.microsoft.com/beta/me/findRooms resulted in a 403 Forbidden response: { "error": { "code": "ErrorAccessDenied", "message": "Access is denied. Check credentials and try again.", (truncated...)
だから、パーミッションのようですエラー。
は、我々は我々のアプリのために、以下のグラフの権限を持っている:
委任アクセス権:User.ReadBasic.All
とUser.Read.All
アプリケーション権限:追加の権限が/me/findRooms
にアクセスするために必要とされるCalendars.ReadWrite
とUser.Read.All
?
ユーザーのいる環境でのみ実行している場合は、アプリの権限を指定する必要はありません。定義した委任されたアクセス許可が、ベータエンドポイントの部屋を照会するのに十分であるように見えますが、その他の認証の問題が発生しています。その他のコンテキスト:[AAD V2 auth](https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-scopes)を使用していますか?また、[トークンをデコードする](http://jwt.calebb.net/)の場合、 'scp'コレクションには何が表示されますか?返信@DmitryPimenov ため –
おかげではい、私はトークンをデコードするとき、それはSCPの下に次の内容が含まれてい のOAuthトークンを取得するにはアズールのAD v2.0のエンドポイントを使用しています: '「Calendars.ReadWrite User.Read」 ' – karel