2016-12-15 21 views

答えて

1

最後の回答を作成するだけです。 OAuth2.0のclient_credentialフローを使用してアプリケーションアクセストークン(ユーザーコンテキストなし)を取得する方法について説明しているこの記事の情報に従うことをお勧めします。これには、お客様のテナントの管理者にアクセスを許可する方法マルチテナントアプリケーション。上記の答えは、認証クライアントライブラリ(ADAL)を使用してトークンを取得する方法を示していますが、これはHTTPリクエストを使用して行うこともできます。

注:上記の文書化されたリンクを使用してサービスプリンシパルなどについて心配する必要はありません。それは、同意/承認フローを通してすべての機能をカバーします。

希望すると、

1

証明書ベースのアプリケーションベース認証を使用できます。

アプリケーションのマニフェストにX.509証明書を追加したら、アプリケーショントークンを取得するために次のようなものを使用できるはずです。これはアプリケーションのログインであることに注意してください。そのため、アクセス許可はアプリケーションにある必要があり、ログインしたユーザーではない必要があります。

var cert = new X509Certificate2(certBytes, certificatePassword); 
var clientAssertionCertificate = new ClientAssertionCertificate(clientId, cert); 

var authenticationResult = 
    await authenticationContext.AcquireTokenAsync(resourceToAuthenticate, clientAssertionCertificate); 
関連する問題