Notion 行ごとの閲覧権限の設定方法 : hkob の雑記録 (267)

はじめに

hkob の雑記録の第267回目は、行ごとの閲覧権限の設定方法を解説します。昨日の段階で諦めたのですが、Notion の kazuki さんに対策を教えてもらったので、そのやり方を解説します。

kazuki さんとのやりとり

こちらは、昨日のブログの記事の紹介ポストです。

これに対して、Notion の kazuki さんから以下の質問を受けました。

具体例だと説明が大変だと思ったので、読み取り権限よりもさらに権限のないデータベースだけが見える共有がしたい旨を答えました。

すると、「リンクドビューの共有」を使うことでできるのではという回答をいただきました。

早速試してみました。実際に実現できて感動しました。今回はこのやり方を紹介していきます。

行ベースの閲覧権限の設定方法

昨日あきらめて捨ててしまったデータベースをゴミ箱から復元してきました。見てわかるように、「参加者」に設定したユーザは、このページを編集できるようにしています。こちらの設定方法は昨日のブログに書いてあるので、そちらを参照してください。

データベースをゴミ箱から復元

次にシェアするページを作成します。ここでは「閲覧権限設定テスト」としました。ここにリンクドビューを作成します。中央のデータベースをリンクで、先ほどの「全会議議事録」を選択します。

リンクドビューの作成

接続すると以下のような画面になりました。現在はデータベースオーナーなので、「新規ページ」などが見えていますし、全てのデータが見えています。

作成されたリンクドビュー

このページをゲストユーザに共有します。こちらは読み込み権限でも編集権限でもどちらでもいいと思います。ゲストユーザでこのページを確認すると、以下のようになりました。行ベースの権限設定により参加者として登録されているページのみが見えています。また、データソース自体に権限はないので、新規ページなどの表記はありません。とりあえず閲覧権限設定までは完成です。

閲覧制限されたデータベースビュー

新規ページの作成方法

上に書いたようにデータベース(データソース)自体には権限がないので、新しくページを設定できるのは、元々のデータベースに権限を与えられたユーザのみとなります。これだと使い勝手が悪いので、一度権限を与えられたユーザには新規ページを作成できるようにしたいです。

最初、Notion Form でできるのではと思いましたが、データベースへの権限がないため、アクセス不可となって展開できませんでした。次にボタンプロパティでページの作成をしようとしましたが、ゲストユーザにはボタンをアクセスする権限がありませんでした。検討したところ、ページ生成を実施するのが、ユーザでなければよいことに気づきました。そこで、それが可能となるデータベースオートメーションを使う方法を試してみました。

まず、データベースオーナーで、「新規議事録」というチェックボックスを追加します。

チェックボックスを追加

そして、データベースオートメーションを設定します。追加した新規議事録のチェックマークが設定されたときに、全会議議事録にページを追加し、トリガーしたユーザを参加者に設定します。これによって、トリガーしたユーザは編集も可能になるということです。設定された新規議事録のチェックは外しておきます。

作成したデータベースオートメーション

実際にチェックを押したみたところ、以下のようにページが追加され、閲覧権限も設定されています。

新規に追加されたページ

おわりに

特定のユーザにのみ閲覧権限をつけたいという要望はこれまでも多数目にしていました。少し手間がかかりますが、実際にできるようになったのは大きいと思います。明日はこの仕組みを本校の議事録の統合に実際に適用してみたいと思います。今日の記事が皆さんの参考になれば幸いです。

hkob.notion.site