twitter youtube tumblr flickr rss mail

category: FileMaker

FileMaker Server で簡易端末認証


本記事のタイトルとURL をコピーする

FileMaker Server にホストしているファイルに対して、あらかじめ登録したクライアントのみがアクセスできるようにしてみた。

これを実現するには、クライアント端末固有の Persistent ID を使えばいい。

環境:macOS Catalina Version 10.15.6(英語環境)、FileMaker Pro 18 Advanced

(1)まずは FileMaker Server 上に Persistent ID を管理するための以下のようなカスタム App を別個に用意する(PersistentIDManager というアプリ名とする)。

端末名及び Persistent ID を格納するテキストフィールド(フィールド名はそれぞれ Machine、PersistentID としよう)を作成する。

クライアントはこのカスタム App にアクセスすることで自身の Persistent ID を登録する。クライアントの端末名と合わせて Persistent ID を記録していくわけだ。

Persistent ID ようのフィールドには Get ( PersistentID ) で取得した値を格納すればいい。

(2)FileMaker Server 上に置くカスタム App(CustomApp と名付けよう)に、特に何も配置しないレイアウトを用意する(Empty というレイアウト名としよう)。クライアントからアクセスがあった際に、一旦このレイアウトに誘導し、認証が通った端末だけがデータが置かれたレイアウトへ行くようにするためだ。

(3)再び1のカスタム App へ戻り、以下のような認証用スクリプトを作成する。やっていることは、クライアントの Persistent ID を探すことだ。

(4)再び CustomApp アプリに戻る。以下のようなスクリプトを作成する。

(5)4のスクリプトを「File>File Options>Script Triggers>OnFirstWindowOpen」に割り当てる。

***

以上の設定をすることで、1で端末登録をした端末のみがカスタム App にアクセスができ、登録していない端末ではファイルが閉じるような仕組みができた。

あまり美しい方法ではないが、簡易な端末認証を実装できた。


書籍