Claris FileMaker スキルアップワークショップ(2025/01/26)

アクセス権の理解を深める

アクセス権管理について日ごろの意識を確認しながらスタート

日ごろ様々なアプリケーションやソリューションを構築する際に必ず設定をする(人によってはあまり気にしない?)必要があるアクセス権管理について参加者の現状を確認しながら開始。

アクセス権の管理は実質的にはアカウント管理と表裏一体にあり、アカウント設定の画面を確認しながらその管理の仕方を検証 した。参加者のコメントを相互に確認しながらのアカウントの設定で話題になったのが、複数ファイルでのアカウント設定。運用旭面ではどうしても単独ファイルで完結することはそう多くはない。共有アカウントを使う、という手法もないわけではないものの、アカウント追加と削除のスクリプトステップを使いながら運用している方が大半。複数ファイルでの運用中に複数のアカウントをハンドリングする場合は、その制限意図を検証することが必要となる、など、アカウントとアクセス権を何を目的に設定するのかを改めて確認した。

ここで事前に主催者側で用意した2個のファイルで構成されているサンプルファイルの紹介をし、このサンプルファイルを参考にこの後の事例検討を具体的に進めていった。

ある程度の人数が存在する環境での利用を想定した場合、「各レコードの変更者を記録するため」などアカウントとアクセス権の管理の目的を明確に認識していないといたずらに複雑な構成を作り込んでしまう可能性がある、ことをこのサンプルファイルを利用しながら確認。 一方で組織において運用、利用する場合は、個々人が所属する部署や、組織での異動、入退社のような日常的な変更要素にも柔軟かつ確実に対応する必要がある。 こうした運用環境でのノウハウはそれぞれの組織や開発者に蓄積されている知識であることが多いため、ここでサンプルを元に、1つの方法を具体的に紹介。

 

サンプルファイルを元にした事例検証

基本的なアクセス権を構成する機能アカウント(セキュリティグループ)を設定した上で、そのグループに属するユーザーを特定テーブルにて管理可能なユーザーレコードで管理する、という方法が紹介され、その手法を採用した際に考慮しなければいけない要素を協議した。 アクセス権としては、完全管理、削除ができる権限、閲覧だけできる権限、などの権限設定が一般的な権限として認識されこれらの代表的な権限を各利用者にどのように付与するかを検証した。
この方法以外は誤り、というような紹介ではなく、あくまで1つの事例としてその長所短所を確認しながら、というワークショップならではの学習スタイル。この一連の検証の中で、複数ファイルで参照ファイルからの完全アクセス権の要求はデフォルトでは✓が入っているのか、いないのかなどきちんと認識して置く必要があることが認識できた。運用面ではトラブルになりかねない、この機能についても1人の気付きで皆で検証できるワークショップならではの展開

 

事例検証が次の事例検証の必要性を呼ぶ展開

より詳細にアクセス制限の実現、として、セキュリテイの詳細設定を事例とともに検証。例えば、レイアウトは表示のみ、レコードはアクセスなし、とした場合のユーザーが視認する画面の確認をする。ここで当該「**」は表示できません、などの画面構成は、ユーザー体験としての適切性は考慮してあげたいとのコメントがあった。レイアウトアクセス権のないレイアウトに誘導されてしまった場合、配置されているボタンなども表示されないために、ユーザーに提供する復帰手順の方法は熟慮が必要となりそう。また、こうしたレイアウトへ移動した際の画面表示が、スクリプトが配置されたボタンで移動した場合、レイアウトメニューから移動した場合、初期設定で最初に表示するレイアウトで指定されて移動した場合、とでそれぞれ微妙に異なる為に別途詳細に確認、検証が必要、となった。 レイアウトアクセス権(表示の可否)を設定している場合、当該レイアウトへの移動そのものは制限されている訳ではない為に、get(lastError)では取得できない ことから、get(layoutAccess)で0を取得してその後のハンドリングを実装することで対応する。 認証情報としての参照先に外部認証を指定した場合の動作についても参考までに検証した。現場では認証サーバーの配置までは準備できなかったため、FMSが運用されているhost上にユーザーアカウント、そのユーザーが属するグループアカウントを設定することでADサーバーなどを配置、設定しなくとも外部認証を利用することが利用できることになる手法について、経験者からその実装方法について紹介。ただし、ここのユーザーをOS管理のユーザーとして設定しなければならず、FileMaker内部で完結する方法とは異なるために、運用局面での影響は考慮する必要がある、とのコメント。 AD認証、oAuth、SAMLなど外部認証は多岐にわたるものの、より詳細な管理が必要になるなど、今後の運用展開には必要な技術知識として学びましょうと確認。