2017-09-09 4 views
0

내가하고 싶은 일은 매우 간단합니다. 웹 앱에서 Office 365 및 Azure 계정을 프로비저닝하십시오. 그리고 나는 그것이 내 앱뿐만 아니라 모든 IT 부서 (다른 조직들도 마찬가지)에서 내 앱에 로그인 할 수 있도록하고 싶다. 나의 이해에서Azure 사용자 프로비져닝을 사용하는 Microsoft Graph API

내가 데리고있는 단계는 다음과 같습니다 apps.dev.microsoft.com

  • 등록 앱 및 ID와 비밀을 얻을.
  • 은 내가 관심이있는 스코프는 (내 경우 Directory.ReadWrite.AllUser.ReadWrite.All에서) 사용 - 위임 된 권한 및 응용 프로그램 권한 모두에서 사용 가능 로그인 프로세스

    https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=[My 클라이언트] & RESPONSE_TYPE = 코드 &를 통과

  • redirect_uri로 = [내 계정]/계정/사무실 & response_mode = 쿼리 & 범위 = 오픈 ID % 20User.Read % 20offline_access % 20Directory.ReadWrite.All

  • 확인 나는 지금 내가 무엇을 얻을하는 액세스 토큰을 가진 객체입니다

POST https://login.microsoftonline.com/common/oauth2/v2.0/token?...secret and so on...

내 반환 URL에 다시받는 코드는, 등등 등등 토큰을 갱신.

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

을하지만 다른 작업을 수행 할 때 토큰이 유효하지 않은 것 같다

내가 사용자를 얻기 위해 그것을 사용하는 경우, 모든 작업입니다. 예를 들어

: 내가 잘못 무엇

무단>

https://management.core.windows.net/subscriptions == :

  • 이 푸른 구독을 리스팅 (계정이 여러 구독 admin입니다)? 그 배후의 IDEA가 맞습니까?

    모든 구독에 수동 설정 단계가 없거나 수동으로 "TenantID"를 수동 입력하지 않고 "전역"수준에서 수행해야합니다.

답변

1

범위가 Microsoft Graph API 인 토큰을 요청 했으므로 https://graph.microsoft.com/에 의해 API 엔드 포인트를 사용할 수 있습니다.

https://management.core.windows.net/subscriptions에 대한 호출은 이 아니며 Microsoft Graph API의이 아니므로이 토큰은 해당 리소스에 유효하지 않습니다. 전화는 Service Management REST API입니다. 이 API에 대한 인증은 documented here입니다.