0

node.jsとMicrosoft Graph APIを使用してOffice 365アプリケーションを作成しようとしています。私はこの例に従っています。 github.com/microsoftgraph/nodejs-connect-rest-sampleAzure ADにOffice 365アプリケーションを登録する方法

私は、Microsoft Graph APIを使用してAzure ADにアクセスする際に深刻な問題を抱えています。私はgraph.microsoft.com/v1.0/usersgraph.microsoft.com/v1.0/organizationをしようとしていますが、私は403 Forbiddenを取得しています。 graph.microsoft.com/v1.0/meはうまく動作します。 Azure ADにOffice 365テナントのユーザーとグループを作成したいと考えています。接続に使用しているユーザーは、Office 365テナントdeveloperのグローバル管理者です。 https://blogs.msdn.microsoft.com/aadgraphteam/2015/10/06/new-graph-api-consent-permissions/

しかし、それは私がapp: apps.dev.microsoft.comを登録するために使用さポータルからはできません。

私はここで読むように私は、アプリ登録にWindows Azure Active Directory同意の権限を追加する必要が信じています。 Directory.ReadWrite.All以上を提供しようとしましたが、同じエラーが発生します

新しいAzure ADポータルからアプリケーションを登録した場合:https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredAppsサインオン後にNodejsアプリケーションサンプルが機能しません。 「aadsts70001アプリケーションで失敗します。CLIENT_IDはこのapiバージョンではサポートされていません」

Appsを登録できる3つの異なるMicrosoftポータルと、PowerShellを使用してアプリケーションを登録することを示唆する別のリンクが見つかりました。さらに私は開発者としてAzure AD v1、v2、およびB2Cテナントの概念を分類しなければなりません。落とし穴がたくさんあるようです。

私の目標は、さまざまなOffice 365アプリケーションとAzure ADとMicrosoft Graph APIを使用して統合されたマルチテナントOffice 365アプリケーションを作成することです。

誰かが間違っていたことを知っていますか?私は何を変える必要がありますか?

+0

問題は、新しい権限がまだ承諾されていないことが原因です。新しい委任された権限が追加される前に、使用しているユーザーが同意した場合、再同意するまで有効になりません。使用しているトークンに、Directory.ReadWrite.Allスコープがscpクレームであるかどうかを確認できますか(たとえば、http://jwt.calebb.net/を使用していますか) –

+0

チップをありがとうございます。私はあなたが言及したことを行うことによって私のコードを動作させることができました。 'Directory.ReadWrite.All'を自分の資格情報のスコープ変数に追加する必要がありました。その後、アプリの再同意を促すためにすべてのCookieをクリアする必要がありました。その後、それは働いた。 – ChrisWorks

+0

しかし、私は本当にこれをユーザーが同意する必要なく動作させたいと思っていました。私は、テナントの「管理者」がユーザーに代わって同意したアプリケーション登録にスコープ権限を追加することで、それは不可能ですか?私は普通のアプリのユーザーに 'Directory.ReadWrite.All'に同意する必要があるのは良い習慣のようには思えません。 – ChrisWorks

答えて

0

マレックとショーンはすでにコメントに助言を提供しています。同じ問題を抱えている他のコミュニティがこの問題の答えを認識できるようにする。この返答で私はそれを要約するでしょう。

Azureのappsレジスタのアクセス許可を再設定するときにアクセス許可を更新するには、パラメータprompt=consenthereを参照)を追加してアクセス許可を再度付与する必要があります。

私は3つの異なるMicrosoftポータルを見つけました。ここにはAppsとPowerShellを使ってアプリケーションを登録することを示唆する別のリンクを登録できます。さらに私は開発者としてAzure AD v1、v2、およびB2Cテナントの概念を分類しなければなりません。落とし穴がたくさんあるようです。

現在のところ、Azureでアプリケーションを登録できる2つの主要なポータルがあります。最初の種類はAzureポータル(oldnew)です。これらのアプリケーションは、V1.0エンドポイントを使用してAzureと統合できます。もう1つはMicrosoft Application Consoleを使用しており、V2.0エンドポイントを使用してAzureと統合されたアプリケーションを登録できます。

v1.0エンドポイントとv2.0エンドポイントの違いを比較するには、hereを参照してください。

関連する問題