鍋綿ブログ

C#・SharePoint・SharePoint Framework・Office365を中心に扱うブログです。

SharePoint Framework 1.6が公開されました!

2018年9月5日に、SharePoint Framework 1.6が公開されました。v1.5.1からの変更点を紹介します。詳細についてはGitHubのWikiをご覧ください。

 

 

Web API機能がβ版から一般公開になった

Azure AD認証を利用するAPIへの接続クラスは、v1.5.1ではβ版扱いでしたが、v1.6で一般公開(GA)されました。GAに伴い、認可の部分に変更があったようです。AADで保護されたリソースへの接続は、AADアプリケーション登録(サービスプリンシパル)によって制御されるようになりました。

v1.5.1の頃には、隠しIFrameで対象サービスの画面を表示してアクセストークンを得る方法が公式サイトで紹介されており、実際にそのような実装をしていたのですが、本稿執筆時点ではSharePoint Framework側が明確にAAD認証を通す方法が推奨されています。

Azure Active Directory (Azure AD) でセキュリティ保護された API への接続 | Microsoft Docs

この変更に伴い、以下の注意点があります。 

v1.5.1以前に登録したAADアプリケーションは再設定が必要

内部で利用するAADアプリケーション登録が変わったようなので再設定が必要とのこと。

MicrosoftGraphに接続するにはMSGraphClientクラスを利用する

v.1.5.1でも非推奨扱いでしたが、古いメソッドである「GraphHttpClient」クラスを利用してはいけません。このメソッドは2018年10月頃に削除されます。MSGraphClientの利用方法は公式サイトに記載があります。

MSGraphClient を使って Microsoft Graph に接続する | Microsoft Docs

って書いてあるからやってみたんですが、GraphHttpClientクラスを使うと「リリース前の機能だから本番環境では使えない」みたいなエラーが発生しました。なんじゃこりゃ。

AAD認証を利用するサードパーティのAPIに接続するにはAadHttpClientクラスを利用する

公式ページにやり方が載っています。

SharePoint Framework ソリューションでの Azure AD でセキュリティ保護された API への接続 | Microsoft Docs

但し以下API向けには別の簡単な方法があります。

  • SharePoint REST API

SPHttpClientクラスを利用します。

SharePoint API への接続 | Microsoft Docs

  • Microsoft Graph

前述の通りMSGraphClientクラスを利用します。

拡張機能がテナント単位で展開可能になった

今まではサイト単位で展開していましたが、テナント単位での展開が可能になりました。

SharePoint フレームワークの拡張機能のテナント ワイド展開 | Microsoft Docs

プロジェクト内のファイル構成が変更された

今後ビルドツールをシェイプアップしようとしているようで、手始めにtslintとtsコンパイラがビルドプロセスから除かれたようです。v1.5.1で作成されたプロジェクトをv1.6に対応させる場合、いくつかの変更が必要になりますのでご注意ください。

SharePoint Framework v1.6 release notes · SharePoint/sp-dev-docs Wiki · GitHub

 

以上、参考になれば幸いです。