テナント アクセス許可とアプリ専用の組み合わせを必要とする SharePoint のプロバイダー ホスト型アドインで、開発者の操作性が変わりました。 この記事では、これらのソリューションの開発とデバッグの新しいエクスペリエンスについて説明します。
適用対象:SharePoint Online のプロバイダー ホスト型アドイン
問題を理解する
Visual Studio でデバッグに移動し、デバッグを開始すると、下の図のように "このアプリに対するテナント管理者の承認が必要です" というメッセージが表示されます。
[信頼する] がクリックできないようになっているのは、Visual Studio はプロジェクトの設定で指定した開発者サイト コレクションに対して動作していますが、テナント レベルのアクセス許可とアプリ専用の併用は、テナント管理サイトを信頼することによってのみ付与されるからです。
チュートリアル
手順 1:新しいサービス プリンシパルを作成する
テナントのサイト コレクションに移動し、新しいクライアント ID とクライアント シークレットを生成します。 (例: https://contoso.sharepoint.com/_layouts/15/appregnew.aspx
。) このページの [クライアント ID] フィールドと、[クライアント シークレット] フィールドの両方で [生成] をクリックし、残りのフィールドに入力します。 アドインを開発するときには、[アプリ ドメイン] として、ポートを含む localhost
を必ずご使用ください。 次の図のようになります。
手順 2:テナントのアクセス許可を付与する
この手順を実行するには、SharePoint Online の管理者である必要があります。
SharePoint 管理センター (たとえば、https://contoso-admin.sharepoint.com/_layouts/15/appinv.aspx
) に移動し、テナントのアクセス許可を付与します。
手順 3:マニフェストと Web.config を更新する
手順 1 で作成したクライアント ID に合わせて、Visual Studio のソリューションでマニフェストおよび web.config を更新します。
手順 4:アプリをパッケージ化し、アプリ カタログにアプリ ファイルを追加します。
SharePoint アドイン プロジェクトの上で右クリックし、[公開] をクリックします。
手順 1 で作成した [クライアント ID] と [クライアント シークレット] の値を指定します。
アドインをデバッグするには、以下の図のとおり、必ずポートを含む https://localhost
を指定します。
そして、アプリ カタログのサイトにアドインを展開します。
手順 5:開発者サイト コレクションにアドインをインストールします。
開発者サイトに移動し、アプリを追加します。 [アプリの詳細] をクリックします。
[アプリ] タイルを選択した場合、[詳細情報] を選択して、アプリを要求する必要があります
要求が送信されると、SharePoint の管理者またはアプリ カタログの管理者が要求を承認するまで、状態は保留状態になります。 要求を承認するには、アプリ カタログのアプリの要求を選択し、要求を承認します。
要求が承認されると、アドインをインストールできるようになります。
手順 6:アドインのデバッグ
Visual Studio の Web プロジェクトで右クリックし、[デバッグ] を選んで新しいインスタンスを開始します。 開始したら、サイトに移動し、アドインを起動します。
注:
- 何らかの理由でアプリのパッケージ ファイルが変更された場合は、アプリ カタログに再展開し、開発者サイト コレクションに再インストールする必要があります
- アドインに AppInstalled イベント レシーバーがある場合は、手順 5 を実行する前に、手順 6 を実行する必要があります