2017-10-04 24 views
2

ユーザー用にスキーマ拡張を登録しました。スキーマ拡張に書き込む権限がありません

私は、アプリにログインした後にユーザーのデータを保存するために使用したいと思いますが、アクセス許可を把握することはできません。私(管理者)アカウントに私がすることができるよ、何の問題ではなく、私が受け取る通常のユーザーアカウントの:

"error": { 
    "code": "Authorization_RequestDenied", 
    "message": "Insufficient privileges to complete the operation.", 
    "innerError": { 
     "request-id": "2ee94ed5-f351-4992-8db0-2e3b420aa581", 
     "date": "2017-10-04T09:37:49" 
    } 
} 

私が代わりに(仕事をする)のオープン拡張のスキーマ拡張を使用している理由は、ありませんその拡張機能によってユーザーをフィルタリングする必要があることを確認します。オープンな拡張機能でこれを行うようには思えない。

次のようにPATCH要求は次のとおりです。

https://graph.microsoft.com/v1.0/me

{ 
    "extkh2zr49b_notifications":{ 
     "badgeCount":"0", 
     "pushToken":"test", 
    } 
} 

とアプリのための私の委任権限は次のとおりです。

profileopenidDirectory.AccessAsUser.AllDirectory.ReadWrite.AllUser.ReadWrite.All

答えて

1

通常のユーザーがスキーマ拡張を編集することは不可能だと私は結論づけました。利用可能なすべてのアクセス許可を付与しようとしました。

代わりにオープンエクステンションを使用しました。グループのすべてのメンバーとその内線番号を返すことができました。 ?

https://graph.microsoft.com/v1.0/groups/[id]/members/ $/microsoft.graph.userは$ =拡張を展開します。これは、クエリは以下の通りです

(...延長のための組織内のすべてのユーザーをチェックするよりもはるかに優れた)私には十分でした& $ select = id

これはMicrosoftの公式ドキュメントのいずれでも見つかりませんでしたので、うまくいけば動作します!

1

前通常のユーザーはレバーを操作できます特定の範囲の年齢であれば、まずそれらの範囲にAdmin Consentを提供する必要があります。あなたの場合、スコープDirectory.AccessAsUser.All,Directory.ReadWrite.AllおよびUser.ReadWrite.Allは同意する必要があります。

この資料はお役に立ちましたか。v2 Endpoint and Admin Consent

+0

私はV1エンドポイントを使用しており、Azure ADポータルから許可を得ています。私はhttps://login.microsoftonline.com/common/adminconsentを使って許可しようとしましたが、私はまだ同じエラーを受けていますか? –

関連する問題