2017-10-04 1 views
2

사용자를 위해 스키마 확장을 등록했습니다.스키마 확장에 쓸 수있는 권한이 없습니다.

나는 앱에 로그인 한 후 사용자에 대한 데이터를 저장하는 데 사용하고 싶지만 사용 권한을 파악할 수는 없습니다. 내 (관리자) 계정에 나는 아무 문제, 수 있어요하지만 일반 사용자 계정에 I가 나타납니다

"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" 
    } 
} 

내가 (작업을 수행하는) 오픈 확장 대신 스키마 확장을 사용하고있는 이유이며, 확장 프로그램을 통해 사용자를 필터링 할 수 있어야합니다. 나는 열린 연장으로 이것을하는 것처럼 보인다.

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

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

을 앱 내 위임 된 권한은 다음과 같습니다 :

profile, openid, Directory.AccessAsUser.All, Directory.ReadWrite.All, User.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.AllUser.ReadWrite.All은 동의해야합니다.

이 문서가 도움이 될 수 있습니다 : v2 Endpoint and Admin Consent.

+0

저는 V1 엔드 포인트를 사용 중이며 Azure AD 포털을 통해 권한을 부여 받았습니다. https://login.microsoftonline.com/common/adminconsent를 사용하여 승인을 시도했지만 여전히 같은 오류가 표시됩니다. –

관련 문제