FileMaker セキュリティ対策「セキュリティ」 中級編(15章)

FileMaker公式テキスト中級編!!!

中級編では、
中級開発者として複数の利用者を想定してシンプルなカスタムAppを作成する
といった内容になります。

全16章です。
前回は、14章『運用を計画しよう』について学びました。
👉FileMaker 中級編(14章)

今回は、15章『セキュリティ』についての知識を学びます。

 

セキュリティ・・・セキュリティの目的はシステム全体の保護です。想定しない外部からのアクセス、内部からのユーザによる誤操作、悪意のある行為(盗用など)などからデータやシステムを守ります。

セキュリティの対象

カスタム App のセキュリティには大きく分けて2つあります。
・ファイルに対して行う設定
・FileMaker Cloud や FileMaker Server で行う設定

その他
ネットワークやハードウェア でOSへの外部からの進入について。。。
・ネットワーク(外部からのアクセスの経路を防ぐ)
・ハードウェアやOS(外部、あるいは想定していない内部からのシステムへの進入を防ぐ)
などの対策が必要です🧐

アカウント

データ保護の目的の 1 つは、ファイルにアクセスする権利を持っているユーザの操作によってデータ の整合性が損なわれることを防ぐことです。

ユーザを決定

カスタム App を使用できるユーザを決定します。ユーザを決めることはセキュリティ設定の第一歩です。ユーザのセキュリティ設定はファイルごとに行います。
ユーザー数の数だけアカウントが必要です

・アカウント名とパスワードによりログインするための「アカウント」
・アカウントの権限(できること/できないこと)を設置する「アクセス権セット」

アカウントとアクセス権セットの管理には。。。

・[完全アクセス]アクセス権セットが割り当てられたアカウント
・[完全アクセスのないアカウントを管理]のチェックがオンのアクセ ス権セットが付加されたアカウント

が必要です。

デフォルトアカウント

FileMaker Pro で新しいファイルを作成すると「デフォルトアカウント」が作成されます。
・アカウント名は Admin
・パスワードは 空欄
・アクセス権セットは [完全アクセス]

ファイルオプションで、このアカウントによる自動ログインが設定されています。
[完全アクセス] アクセス権セットのアカウントは、データ、レイアウト、スクリプト、各種設定のすべてを行うことができる、開発に必須の「権限」です。

●開発者のセキュリティ
※カスタム App の運用開始時までに、Admin アカウントの自動ログインは解除するべきです。
・開発作業中は、必要時以外は開発担当者のみファイルへアクセスする
・運用開始後は、ユーザが与えられたアカウントとアクセス権セット以外でのアクセスをできないようにする。
上記のことが大切です。

「Admin」アカウント
他の[完全アクセス]アクセス権セットのアカウントを作成後、「Admin」アカウントのアクティブを「オフ」にするか削除するか検討してく ださい
※すべての[完全アクセス]アクセス権セットのアカウントを削除してしまわないように注意します。

●[ゲスト]アカウント
新しいファイルには[ゲスト]アカウントも登録されています。このアカウントは特別です。「削除」できません。「アクティブ」にするかどうか(有効/無効)の設定が可能です。デフォルトでは チェック「オフ(無効) 」になっています。

※ユーザがアカウントがなしでもファイルにアクセスできます。
つまり、誰でもアクセスを可能とする場合にこのアカウントを利用します。

自動ログインの解除

新しいファイルでは、ファイルオプションで自動ログインが設定されています。そのため、ファイルを開いたとき、ログインのためのダイアログが表示されていません。

[ファイルオプション]ダイアログの
[次のアカウントを使用してログイン]のチェック「オフ」にする

アクセス権セット

ユーザのセキュリティは、アクセス権セットでの権限設定が基本です。

担当や部門、部署での作業の違いを管理します。1 アクセス権セットには複数のアカウントを結びつけることが可能です。新しいファイルにはデフォルトのアクセス権セットが 3 つが登録されます。

・[完全アクセス]
・すべての開発機能を含めたファイルへのすべてのアクセス
・複製できない
・ファイルにこのアクセス


・[データ入力のみ]

・レコードの作成、削除、変更、インポート、エクスポートが可能
・レイアウトモードをはじめとした、開発機能へはアクセスできない


・[閲覧のみアクセス]

・レイアウトとレコードの表示、エクスポートが可能
・レイアウトモードをはじめとした、開発機能へはアクセスできない

※デフォルトのアクセス権セットだけではカスタム App は運用できない場合は、必要なアクセス権 セットを作成して運用します。

●機密にする情報を考える
どのデータの何をユーザに許可するかです。人に関する情報を取り扱うカスタム App であれば、 従業員の給与や、患者の病歴などは必要な場合のみ表示するべきです。

●整合性を考える
どのデータの何をユーザが実行できるかです。
整合性・・・ データを想定している通りに正確で「一貫性」があるように管理することです。

●スクリプトと完全アクセス
スクリプトに[完全アクセス権を付与]して、ユーザに割り当てられたアクセス権セットではできない処理を実行させることが可能です。

●アクセス権セットによるログイン後の違い
アクセス権セットを使い分けることで、ログイン後の作業の可否を切り分けることが可能です。

アクセス権セットの設定

アクセス権セットは、次のように設定します。

(1) [ファイル]-[管理]-[セキュリティ…]メニューを選択
(2) [セキュリティの管理]ダイアログが表示される
(3) [詳細設定…]をクリック
(4) 新規作成、編集、複製、削除などを実行する

[新規 …]をクリックすると、[アクセス権セットの編集]ダイアログが表示されます。

[アクセスケンセットの名前]
わかりやすい名前を入力します。
この名前が、Get ( アカウントアクセス権セット名 ) の結果になります。
[データアクセスとデザイン]
レコード、レイアウト、値一覧、スクリプトについての権限を設定します。

[レコード:] レコードの表示、編集、作成、削除をファイル全体に対して設定するか、個々のテー ブル、あるいはフィールドについて設定します。

[レイアウト:] レイアウトの表示、作成、変更、削除をファイル全体に対して設定するか、個々のレイアウトについて設定します。レイアウトへの制限を設定する場合、注意が必要です。ユーザ へ表示されるレイアウトに制限するとスクリプト利用しているレイアウトが表示できなくなってエラーが起きるかもしれません。注意してください。

[値一覧:] アクセスなし、表示のみ、変更可能をファイル全体に対して設定するか、個々の値一覧 について設定します。

[スクリプト:] アクセスなし、実行のみ、変更可能をファイル全体に対して設定するか、個々のスクリプトについて設定します。アクセスなしとするとスクリプトが実行できなくなります。

[拡張アクセス権]
ファイルへのクライアントからのアクセスについての設定をおこないます。

[その他のアクセス権]
印刷、エクスポートなどいくつかの FileMaker Pro の機能について設定を行います。情報の出力を許可することなので「オン」定には注意します。

[拡張アクセス権の管理] 「オン」にするとそのファイルの拡張アクセス権を設定することが可能になります。

[完全アクセスのないアカウントを管理] 開発者以外のアカウントを管理する権限を与えるもの。

[ユーザによるデータ入力警告の無視を許可] 「オン」にするとフィールドオプションで設定された[入力値の制限]によるデータ入力やインポートでの警告を無視できます。

[アイドル状態の時、サーバーからユーザの接続を解除する] ログイン後、何も作業していない状況で一定時間が経過したら、接続の解除をする設定です。
 画面をそのままにしてユーザが席を離れて一定時間が経過したら、接続が解除され、他の人がファイルを操作してしまうことを防げます。
接続時間は、FileMaker Cloud や FileMaker Server の[Admin Console]で設定します。
初期値は「オン」です。

[ユーザによるパスワードの変更を許可] アカウントを同じパスワードで使い続けることを制限するかどうかです。「オン」にする場合は、

(1) アカウント管理担当者がアカウントを登録する
(2) ユーザにアカウントを知らせる
(3) ユーザが初回ログイン時に、登録時のパスワードと違うものにする
という手順にします。オプションとして指定間隔ごとの変更、最低文字数の設定が可能です。

[利用できるメニューコマンド](メニューバーの表示)
・ すべて
・ 編集のみ
・ 最小
から、選択します。実際にメニューに表示される内容は[データアクセスとデザイン]で設定した内容により変わります。なお、カスタムメニューセットの設定内容が優先されます。

[アクセス権セットの編集]
ダイアログで設定した内容は、ユーザの作業を制限します。
設定後は必ずテストを実施しましょう!!!!

拡張アクセス権の設定

アクセス権セットには、「拡張アクセス権」も設定できます。
次の方法で設定します。

(1) [ファイル]-[管理]-[セキュリティ…]メニューを選択
(2) [セキュリティの管理]ダイアログで[詳細設定…]をクリック
(3) 「拡張アクセス権」タブをクリック
(4) 新規作成、編集、削除などを実行する

拡張アクセス権は、次のようなものです。
・アクセス権セットに割り当てて利用できる接続経路を限定する
・1 アクセス権セットに複数の拡張アクセス権を割り当てられる

以下の関数で設定内容がわかります。

『Get ( アカウント拡張アクセス権 )』

デフォルトの拡張アクセス権

拡張アクセス権 内容
fmwebdirect FileMaker WebDirect によるアクセスが可能
fmxdbc ODBC/JDBC データソースとしてのアクセスが可能
fmapp FileMaker Pro、FileMaker Go で FileMaker ネットワークによるアクセスが可能
fmreauthenticate10 FileMaker Pro、FileMaker Go で再ログインをおこなわなくても良いスリープ/バックグラウンドの最長時間を指定します。初期値は 10 分です。
fmxml XMLWeb 公開でのアクセスが可能
fmphp PHPWeb 公開でのアクセスが可能
fmextscriptaccess AppleScript および ActiveX による FileMaker スクリプトの実行が可能
fmurlscript URL からのスクリプトの実行が可能
fmrest FileMaker Data API での Web サービスからのアクセスが可能

拡張アクセス権は、
・FileMaker Pro や FileMaker Go を終了
・ファイルを閉じる
・ログアウトする

これらによりセッションを終了後、次のセッションから有効になります。

拡張アクセス権を作成する
デフォルトの9つとは別の拡張アクセス権を作成して利用できます。新しく作成する拡張アクセス権 は、デフォルトのものとは少し種類が違います。アクセス権セットに任意のキーワードを付加するものです。

「見積書印刷」という拡張アクセス権を作成して「営業ユーザ」「事務員ユーザ」「経理ユーザ」 アクセス権セットに割り当て、見積書を印刷するスクリプトで Get( アカウント拡張アクセス権 ) 関数の結果に FilterValues 関数で拡張アクセス権名があったら実行するという条件分岐を入れる、などの使い方ができます。

アカウント情報

原則として 1 ユーザに 1 アカウントで運用することで人の識別が可能です。
そして、1 アカウントごとに必ず 1 アクセス権セットを割り当てなければなりません。

● アカウント作成の注意点
・アカウント名の大文字と小文字は区別されない
・パスワードは大文字、小文字が区別される

●認証方法
「FileMaker ファイル」認証以外にもFileMaker Pro では、 カスタム App の共有手段に応じてそれぞれの認証方法が用意されています。

・FileMaker ファイル
・外部サーバー(Apple Open Directory、Windows ドメイン)
・OAuth アイデンティティプロバイダ(Amazon、Google、Microsoft Azure AD)
・Claris ID
・外部 IdP( Okta、Microsoft Active Directory (AD) )

『Get (アカウントタイプ)』
認証方法がわかる関数

●「外部サーバー」
FileMaker Server でカスタム App を共有する場合に、ネットワーク上の認証サーバーをカスタム App のログイン時の認証に利用する方法です。

「OAuth アイデンティティプロバイダ」の認証
FileMaker Server でファイルがホストされている場合に利用可能な認証方法です。OAuth アイデンティティプロバイダに基づいてユーザが認証されます。
「Claris ID」および「外部 IdP」による認証
FileMaker Cloud でファイルがホストされている場合に利用可能な認証方法です。Claris ID は Claris International Inc. の製品とサービス全般にわたってユーザを認証するための総合的なアカウントシステムです。

※外部サーバー、OAuth アイデンティティプロバイダ、Claris ID あるいは外部 IdP アカウントによる認証について、詳しくはヘルプやクラリス・ジャパン株式会社の Web サイトを参考にしてください。
https://www.claris.com/ja

ファイルアクセス

これまではユーザとファイルについてのセキュリティのための解説でしたが、ファイル間のセキュリティについても設定することが可能です。
複数のファイルを組み合わせてカスタムAppを作成する時などにも必要になってきます。

・ファイルごとの設定が必要
・アカウントもファイルごとに必要
・アカウントの一致が重要
・スクリプトによるアカウントの更新

ファイルレベルでのセキュリティ

区分 設定場所 内容 注意事項
ファイル間でのアクセス認証 外部データソース
ファイルアクセス
完全アクセス権で
アカウントで認証
認証後もアカウントとパスワードの
組み合わせが重要
ファイルの暗号化 ディベロッパー
ユーティリティ
ファイルを暗号化 「暗号化パスワード」を安全に
保管する必要がある
ホスト表示での不可視化 共有設定 ファイルの存在
そのものを不可視化
別のファイルから開く仕組みが必要

外部データソース
FileMaker ファイルは、他のファイルを参照できます。

1、リレーションシップグラフを開き、左下「テーブルの追加ボタン」をクリック。
2、[テーブル指定]ダイアログが表示。
[データソース:] FileMaikerデータソースの追加 ファイルを選択。
[名前] 外部データファイル_製品

外部ファイルをTOとして配置できた!!
※外部ファイルのTO名は斜体で記されます。

これで外部ファイルを使うことができるようになりましたが。。。
セキュリティの設定は各ファイルごとに行わないといけません😳

ファイル間でのアクセス認証
外部参照時に、そのファイルの[完全アクセス]アクセス権セットのアカウントでログインしなければならないという制限が設定可能です。 デフォルトでは「オン」

1、[ファイル]-[管理]-[セキュリティ…]メニューを選択
2、 [詳細設定…]をクリック
3、「ファイルアクセス」タブを選択
4、設定内容が表示される

[このファイルへの参照の使用に完全アクセス権を要求する] 「オン 」
・「保護されたファイル」(別のファイルから参照されるためにはログインが必要)
・未認証のファイルからは[ファイルを開く]スクリプトステップで開けない

※完全アクセス権のアカウントとパスワードを知っていないとファイルが開けません。

元ファイルと外部ファイルの完全アクセス権アカウントが重要になります!

完全アクセス権の
アカウント一致・・・他ファイルでも同じく開ける
アカウント不一致・・・他ファイルが開けないので、他ファイルに再度サインイン

暗号化によるセキュリティ対策

アカウントやファイル参照以外にもセキュリティ対策をすることができます。
アクセスされてしまった場合の対策になります。

暗号化のパスワードを忘れると元に戻すことができません!!!

●ファイルを暗号化
暗号化パスワードを知らない人はファイルを使用することができません!

暗号化と復号
「復号」は、暗号化、圧縮化などがされているデータを元のデータに復元することです。
暗号化されているデータの復号は、キー(秘密の暗号キー)で行います。

暗号化の設定
FileMaker Pro の[Developer ユーティリティ]で暗号化を行います。
※FileMaker Cloud ではホストするファイルには暗号化が必須であり、自動で行われます。

1、ファイルを閉じた状態で メニュー ツール [Developer ユーティリティ]
2、[追加]ボタンをクリック
3、ファイルを選択
4、その他の設定。。。。

暗号化ファイルの使用
クライアント側では暗号化パスワードを入力することなくカスタム App を利用 することができる設定もあります。
暗号化パスワードの管理
暗号化 パスワードの情報は物理的に別の場所で管理するようにしてください。

ファイルの表示と非表示

ホストされているファイルを開く場合、[ホスト]ダイアログにファイルアイコンを表示するかどうかについて設定が可能です。

●ファイルを常に非表示にする
ファイルを開くための[ホスト]ダイアログに表示しない設定が可能です。
これは、ファイルごとに設定します。

セキュリティを計画する

セキュリティの計画は、運用開始前までに行ってください。

①内外からの不正なアクセスなどからデータの保護を考えます。
・ネットワーク、サーバーとクライアントのハードウェア、OS のセキュリティ対策がどのように行われているかを確認する。
・必要があれば、上記の対策の変更を担当者と検討する

②ファイルのセキュリティ
・他のファイルからの外部参照についてファイルアクセスの設定が必要があるかどうか
・ファイルを暗号化するかどうか(暗号化パスワードの保管場所をファイルとは別の場所にする)
・共有ファイルを開く際に、ファイル名を表示するかどうか

③[完全アクセス]アクセス権セットのアカウント
・開発担当者以外が使用できないように管理する
・役割によって複数作成する
・緊急時のアカウントを、ファイルとは別の場所に保管する

④アカウント
・カスタム App のユーザを決定
・ユーザによるアカウントのログイン方法を、外部認証か、FileMaker ファイル認証か決定
・ユーザの権限を必要に応じて 1 つあるいは複数決定
・アクセス権セットを権限を決定内容に応じて作成しアカウントに割り当て

外部認証を使用する場合は運用ルールは担当者と検討して決定する。
FileMaker ファイル認証を使用する場合
・アカウントを 1 人 1 つにする
・パスワードはユーザのみが知り得るようにする
・以下の作業についてルールを決定する
 アカウントの管理担当者の決定
 アカウントの新規登録
 アカウントの停止
 アカウントの再開
 アカウントの削除
 パスワードを忘れたときの対応

・FileMaker Cloud / FileMaker ServerではSSL暗号化通信を行います。
SSL 暗号化通信のための証明書を購入しインストールするなどが必要となってきます。
詳細は割愛します。。。

 

・バックアップファイルの保存場所についても不正なアクセスから守る
・ステータスツールバーの表示/非表示
・カスタムメニューの使用/不使用
・履歴(ログ)を取得して保存する
など、セキュリティを考える上で様々な対策を取ることができます。


以上で15章は終わりです。

次回は16章「カスタム App の最適化」について学習していきます😚

ついに最後の章です。あと少し、頑張りましょ〜🤩

 

コメント

タイトルとURLをコピーしました