2017-11-08 18 views
1

私は、Microsoft GraphとスコープprofileopenidemailおよびUser.Readを使用してWebアプリケーションを作成しました。これは正常に動作します。管理者はどのようにしてアプリにアクセスできますか?

私は今offline_accessUser.ReadMail.SendCalendars.ReadWriteDirectory.ReadWrite.AllDirectory.AccessAsUser.AllUser.Read.AllFiles.ReadWrite.AllFiles.ReadFiles.ReadWrite、およびSites.Read.Allスコープを含めたいです。

私はメッセージを取得ログインしようとしている:

あなたは、このアプリケーションにアクセスすることはできませんが。

チュートリアルサンプルアプリケーションには、管理者だけが許可する組織内のリソースにアクセスするためのアクセス許可が必要です。あなたがそれを使用する前に、このアプリに許可を与えるように管理者に依頼してください。

私はhttps://apps.dev.microsoft.com/でアプリを登録し、これらのグラフの権限は設定されている:

enter image description here

をPHPを使用して、私は次の

use Microsoft\Graph\Graph; 
use Microsoft\Graph\Model; 
const CLIENT_ID   = 'xxx'; 
const CLIENT_SECRET  = 'xxx'; 
const REDIRECT_URI  = 'xxxx'; 
const AUTHORITY_URL  = 'https://login.microsoftonline.com/common'; 
const AUTHORIZE_ENDPOINT = '/oauth2/v2.0/authorize'; 
const TOKEN_ENDPOINT  = '/oauth2/v2.0/token'; 
const SCOPES    = 'profile openid email offline_access User.Read Mail.Send Calendars.ReadWrite Directory.ReadWrite.All Directory.AccessAsUser.All User.Read.All Files.ReadWrite.All Files.Read Files.ReadWrite Sites.Read.All'; 

を使用してauthorisationUrl

を作成します
$authorizationUrl = $provider->getAuthorizationUrl(); 

どうすれば管理者にアクセスを許可することができますか?

答えて

2

管理者の同意を得るには、テナントの管理者が/adminconsentに対して認証されている必要があります。私はこの上でブログ記事を書いた

https://login.microsoftonline.com/common/adminconsent? 
client_id=[APPLICATION ID]&redirect_uri=[REDIRECT URI] 

この作品を通してどのようにあなたを歩くのに役立ちます:v2 Endpoint and Admin ConsentこのURLのプロトタイプは(だけ読みやすくするため改行)です。

関連する問題