メインコンテンツまでスキップ
バージョン: v18

概要

クライアントサーバーアーキテクチャーや Webインターフェースなど、複数のユーザーがデータベースを使用する場合は、アクセスを制御したり、接続ユーザーに応じて異なる機能を提供したりする必要が生じます。 機密性の高いデータを保護することは重要です。 ユーザーにパスワードを割り当て、データやデータベース操作へのアクセスレベルが異なるアクセスグループを作成することで、これらのデータを保護することができます。

4Dのセキュリティ機能の概要については、4D Security guide をご覧ください。

権限を割り当てる

4D のパスワードアクセスシステムは、ユーザーとグループに基づいています。 ユーザーを作成してパスワードを割り当てたり、ユーザーをグループに入れて、各グループに対しデータベースの適切な部分へのアクセス権を割り当てます。

グループには、アクセス可能なメソッドや、HTTPサーバー、SQLサーバーなど、任意の機能へのアクセス権が割り当てられます。

次の図は、デザインおよびランタイムエクスプローラーアクセス権を "Devs" グループに割り当てている様子を表しています (データベース設定の "セキュリティ" タブ):

アクセスシステムを起動する

クライアントサーバーにおいて、4D のパスワードアクセスシステムを起動するには、デザイナー (Designer) にパスワードを割り当て ます。

ユーザー&グループを作成したとしても、デザイナーにパスワードが指定されるまでは、すべてのデータベースアクセスがデザイナーアクセス権でおこなわれます (データベースを開く際に ID を求められません)。 つまり、4Dデータベースのあらゆる部分を開くことができます。

デザイナーにパスワードが指定されると、すべてのアクセス権が有効になります。 リモートユーザーがデータベースを開くには、パスワードを入力しなければなりません。

パスワードアクセスシステムを無効にするには、デザイナーのパスワードを削除します。

プロジェクトアーキテクチャーにおけるユーザー&グループ

プロジェクトデータベース (.4DProject および .4dz ファイル) では、シングルユーザーおよびクライアントサーバー環境の両方でユーザーとグループを設定することができます。 ただし、アクセスシステムは 4D Server データベースにおいてのみ有効です。 次の表は、主なユーザーとグループの機能と、それらが利用かどうかを一覧に示します:

4D Developer (シングルユーザー)4D Server
ユーザーとグループの追加/編集
ユーザー/グループにサーバーアクセスを割り振る
ユーザー認証× (すべてのユーザーがデザイナーです)
デザイナーへのパスワード設定によるアクセスシステムの起動× (すべてのアクセスがデザイナーです)

ツールボックス

ユーザーとグループのエディターは 4Dのツールボックスにあります。 ユーザーとグループを作成し、ユーザーにパスワードを設定し、ユーザーをグループに所属させるといった操作はこのエディターにて可能です。

ランタイムにおいてユーザーとグループのエディターを表示させるには EDIT ACCESS コマンドを使用します。

Directory.json ファイル

ユーザー、グループ、およびそれらのアクセス権は、directory.json という名称の専用データベースファイルに保存されます。

このフォルダーは次の場所に保存することができます:

  • ユーザーデータベース設定フォルダー (つまり "Project" フォルダーと同階層にある "Settings" フォルダー) 内。 これらの設定はデータベースによりデフォルトで使用されます。
  • データ設定フォルダー (つまり "Data" フォルダーの中の "Settings" フォルダー) 内。 directory.json ファイルがこの場所に保存されている場合、ユーザーデータベース設定フォルダーのファイルよりも優先されます。 この機能により、カスタム/ローカルなユーザー&グループ設定を定義することができます。 データベースをアップグレードしても、カスタム設定はそのままです。

ユーザーとグループの管理が有効化されていない場合、directory.json ファイルは生成されません。