以下のような構成で考えているのですが、どのようにすれば動的な意味での自分だけがみれるようにできますか?
(動的な意味での自分とは、田中さんは田中さんのデータだけ、佐藤さんは佐藤さんのデータだけという意味です。)
構成
・組織とロールを使用してアクセス権を設定します。
・ユーザ数は1000人以上いるため、一人ひとり設定するのは現実的ではないため、行えません。
・このアプリのユーザは「データを全部見れる人」と「自分の分しか見れない人」が存在しており、「自分の分しか見れない」ロールがあります。
・1つのレコードに対して、n人が閲覧します。
・「自分のみ」ロールの人は、各レコードのなかにユーザ選択が存在しており、その中に名前がある人が閲覧できます。
そうでない人は、関係なく閲覧できます。
・作成者・更新者はCSVインポートを使用したり、誰が更新したりするか一意ではないため使用できません。
この場合、どのようにすれば「自分の分のみ」ロールの人の動的な意味での自分だけが見ることができるアクセス権を設定できますか?
レコードのアクセス権を追加し、
【レコードの条件】
すべてのレコード
【アクセス権】
Everyone:許可する操作なし
フォームのフィールドのユーザ選択フィールド:閲覧、編集、削除可
「全部見られる」ロール:閲覧、編集、削除可
とすればいかがでしょうか。
すみません。
私の説明が足りませんでした。
組織とロールを使用するのですが、
日本各地方ごとに組織が分かれています。
(北海道・東北・・・・・九州という風に)
その、九州の人は九州の情報しかみれず、なおかつ、「自分の分だけ」の人は「自分の分だけ」ですが、
そうじゃない人は、九州の情報であれば、全部見える。
というイメージです。
なるほど。ご説明ありがとうございます。
> その、九州の人は九州の情報しかみれず、なおかつ、「自分の分だけ」の人は「自分の分だけ」ですが、
> そうじゃない人は、九州の情報であれば、全部見える。
自分の組織の情報であれば全部見える、だけならなんとかなりそうですが、
そこにロールを組み合わせて、となると、標準の機能ではできなさそうですね。すみません。
デフォルトの一覧を「自分の分だけの一覧」にし、
「自分の組織の一覧」や「全組織の一覧」を追加して、
それらについては、「一覧画面毎のアクセス権設定について」
https://cybozudev.zendesk.com/hc/ja/community/posts/206443836
のようにカスタマイズする方法もありそうです。
ただし、これだと一覧画面で表示されなくても、URLでレコード番号を指定して直接表示させることが可能なので、アクセス権としては対応できていないです。
最近追加された、組織選択フィールドを使用して、下図の様な感じでいけるかも知れません。
フォーム上には、管理者組織(組織選択フィールド)、閲覧可能ユーザー(ユーザー選択フィールド)が存在。
管理者組織には、レコードの対象組織(九州管理者や東北管理者)を代入。
閲覧可能ユーザーには、そのレコードを見る事が出来る人を代入。
九州管理者に所属する人は、自組織のレコードを全て閲覧できます。
東北管理者に所属する人は、同上。。
管理者組織に属さない場合は、閲覧可能ユーザーに自分が含まれているレコードのみ閲覧できます。
細かい検証していませんが、こんな感じで行けそうな気が。
(上画像の場合、閲覧可能ユーザーに自分が含まれている場合、全国どこの地域のレコードも見れてしまうので、そこはもう一工夫いるかも知れません)
尚、"地区"を判別するのに組織選択フィールドを使用せず、ドロップダウン等を使用する場合、全地区の分(10個位?)をがんばって設定すれば、目的の権限設定が出来る様な気がします(こちらはなんとなく)。