SharePoint Online を使っていてユーザーからよくある要望のひとつとして、「PDF をブラウザで開けるようにしたいけどダウンロードはさせたくない」というものがあります。ただ、以前は標準機能だけではできず、他のサービスを組み合わせるなど、いろいろ検討されてきました。

そんなもんだよなあ…、と思っていたのですが、ひょんなことから再び調べてみる機会があり、いろいろ試してみると「あれ?モダン UI なら出来るかもしれないぞ…?」というところまで動作を確認できました。

とは言え、設定をするとなんだか上手く動かないところもあり、Microsoft が意図した使い方ではないのかもしれません…。

設定手順

どこか不具合の見落としや抜け穴があるかもしれないので、いろんな人が動作を再現できるように手順を書いておきます。

手順 1: コミュニケーション サイトを作成する

この方法はモダンサイトでしか使えないので、まずはコミュニケーションサイトを作成しましょう。普段通り、SharePoint のスタートページから [サイトの作成] で作成します。なんら工夫は必要ないので、サッと作ってしまいましょう。

手順 2: ドキュメント ライブラリを作成する

サイトが作成できたらドキュメント ライブラリを作成しましょう。[新規] – [ドキュメント ライブラリ] で作成します。これもなんら工夫は必要ないので、サッと作りましょう。

手順 3: 適当なファイルをアップして共有リンクを作成する

ライブラリが作成できたら、何か適当なファイルをアップします。アップしたファイルを選択し、[共有] から共有リンクを作成しましょう。この一見すると意味のなさそうな手順が大事ですので、必ず忘れずに行いましょう。作成された共有リンクは使わないので、メモしておく必要はありません。なんならファイルは削除しておきましょう。

手順 4: ライブラリの権限設定を行う

つぎはライブラリの権限設定です。ライブラリを開いた状態で、右上の歯車アイコンから [ライブラリの設定] をクリックし、設定画面で [このドキュメント ライブラリに対する権限] をクリックします。

この状態で、例えば「閲覧」権限が付与されている「<サイト名> 閲覧者」にチェックを入れて、リボンメニューから [ユーザー権限の編集] と進みましょう。

「権限」で「閲覧」にチェックが付いているのを外して、「制限付きビュー」にチェックを入れて保存します。手順 3 の共有リンクの作成を飛ばしていると「制限付きビュー」が選択できません。

動作確認

今回の手順では「閲覧者」の権限を変更したので、[サイトのアクセス許可] からは「読み取り」としてユーザーにアクセスを許可します。

そのユーザーでライブラリにアクセスすると、ファイルを選らんでもダウンロードのメニューが表示されません。ファイルをクリックすると、ちゃんと開きますが、ここでもメニューにはダウンロードは表示されません。

さらに、ファイルへの直パスを指定してアクセスしてみると、「アクセス許可がありません」としてファイルを開くことができません。ちなみに、クラシック UI に切り替えた場合も、PDF などは同様にアクセス許可がないとして開くことができません。開けるのはモダン UI のライブラリからのみです。

見つけた不具合

いまのところ目に付いた不具合としては、ライブラリの詳細ウィンドウを開き、ドキュメントのプレビューを表示させようとするとエラーになります。エラーメッセージを見ると、IRM で保護されていると勘違いしているみたいですね。

さいごに

というわけで、SharePoint Online のモダン ライブラリを利用して PDF のダウンロードを禁止したライブラリを作ってみる手順でした。何か見落としている不具合などがあるかもしれませんので、試してみて気づいたところがあれば Twitter などで教えてもらえると嬉しいです。