私は、ユーザーカレンダーにアクセスする必要があるマルチテナントのOffice 365デーモンを開発しています。マルチテナントデーモンオフィス365アプリのコンシューマーAADへの登録は、管理者の同意を得て、コンシューマーに別途登録する必要がありますか?
証明書を使用してこのアプリを導入した企業のテナント(Tenant1)に正常に登録しました。アクセストークンを取得できました。
私は別のAADテナント(テナント2)を作成し、テナント2の管理者アカウントを使用してデーモンアプリにログインし、管理者同意画面を表示し、同意しました。エラーは返されませんでした。
しかし、私はアプリトークンを取得しようとしましたが、トークンを取得できましたが、空のアクセス許可があります。このトークンを使用してOffice 365 APIを呼び出すと、401
が得られます。
サービスプリンシパルオブジェクトを作成する必要があります。また、私はテナント2アプリの登録でこのアプリを見ることができません。
すべての消費者は、自分のADテナントにこのアプリケーションを手動で登録し、アプリケーションマニフェストファイルを変更して証明書の詳細を追加する必要がありますか?
マルチテナントの利点についてはわかりません。
IはAzure Active Directory documentationで続くが見つかりました:
次の図は、HRアプリケーションと呼ばれるサンプルマルチテナントアプリケーションのコンテキストにおいて、アプリケーションのアプリケーションオブジェクトと対応するサービスプリンシパルオブジェクト間の関係を示す図です。このシナリオでは3つのAzureのADテナントがあります
- Adatum側 - Contoso社
- HRアプリを開発した会社が使用するテナント - HRアプリの消費者であるContoso社の組織で使用テナント、
- Fabrikamの - もHRアプリあなたは、各テナントがあなたのアプリケーションを登録する必要はありません
ここでいくつかのコードサンプルを共有する必要があると思います。一般に、複数のテナントに複数のアプリケーションを登録する必要はありません。テナント1のメインアプリケーションがマルチテナント対応である限り、任意の数のテナントで同じように動作するはずです。 –