4.3.2 セキュリティ定義ファイルの記述形式

ここでは,セキュリティ定義ファイルの記述形式について説明します。

セキュリティ定義ファイルは,次に示す二つのセクションと,各セクションに指定するエントリによって構成されます。

セクションとエントリの記述規則を次に示します。

記述形式を次に示します。

[<セクション名>]
<エントリ名>=<値>

以降,セキュリティ定義ファイルを構成する各セクションと,セクションごとに指定するエントリについて説明します。なお,エントリは,1行2,048バイト以内で指定してください。

<この項の構成>
(1) [Security]セクション
(2) [Entry0001]セクション

(1) [Security]セクション

[Security]セクションを構成するエントリは次のとおりです。

SecurityAdminエントリ
DocumentBrokerに登録されたオブジェクトやオブジェクトのアクセス権を保守するユーザ(セキュリティ管理者)を指定します。このエントリは,アクセス制御機能に対応するデータベーススキーマが構築されている場合,有効になります。セキュリティ管理者名には,ユーザ識別子を指定してください。ユーザ識別子は,「"」(引用符)で囲んで指定します。セキュリティ管理者を複数指定する場合は,「"」(引用符)で囲んだユーザ識別子を「,」(コンマ)で区切って指定します。セキュリティ管理者の人数に制限はありませんが,エントリの定義に従って1行2,048バイト以内で指定してください。セキュリティ管理者の指定例を次に示します。
セキュリティ管理者の指定例
SecurityAdmin="ユーザ識別子1","ユーザ識別子2"
ユーザ識別子については,「3.8.2 ユーザ情報の取得方法」を参照してください。なお,このエントリの指定は省略できません。

(2) [Entry0001]セクション

[Entry0001]セクションには,ユーザ権限定義ファイル名およびオブジェクトを新規に作成した場合に,そのオブジェクトに設定するACFlagのデフォルト値を定義します。[Entry0001]セクションを構成する各エントリは次のとおりです。

UserPermDefFileエントリ
文書空間のすべてのオブジェクトに対しての権限をユーザ,またはグループ単位で定義するユーザ権限定義ファイルの名称を指定します。このエントリは,アクセス制御機能に対応するデータベーススキーマが構築されている場合,有効になります。ファイル名は,実行環境ディレクトリ/etcからの相対パス指定として解釈されます。指定を省略した場合,すべてのユーザがオブジェクト作成権限を持ち,オブジェクト操作権限は持たないと仮定されます。
パスは印刷可能なASCIIコードで指定してください。
DefaultACFlagOwnerエントリ
オブジェクトの作成時にデフォルトで付加されるACFlagを指定します。オブジェクトの所有者に対するパーミッションを指定します。ACFlagは,表4-9および表4-10に示されるパーミッション文字列を「|」(ストローク)で結合して指定します。指定を省略した場合,フルコントロールが仮定されます。
DefaultACFlagGroupエントリ
オブジェクトの作成時にデフォルトで付加されるACFlagを指定します。グループに対するパーミッションを指定します。ACFlagは,表4-9および表4-10に示されるパーミッション文字列を「|」(ストローク)で結合して指定します。指定を省略した場合,フルコントロールが仮定されます。
DefaultACFlagEveryoneエントリ
オブジェクトの作成時にデフォルトで付加されるACFlagを指定します。すべてのユーザに対するパーミッションを指定します。ACFlagは,表4-9および表4-10に示されるパーミッション文字列を「|」(ストローク)で結合して指定します。指定を省略した場合,フルコントロールが仮定されます。

DefaultACFlagOwnerエントリ,DefaultACFlagGroupエントリ,およびDefaultACFlagEveryoneエントリに設定できるパーミッションには,基本パーミッション組み合わせパーミッションがあります。どちらのパーミッションも指定できます。また,この2種類のパーミッションを組み合わせて指定することもできます。したがって,各エントリの値には,次に示す表のパーミッション文字列を指定します。基本パーミッションと対応する文字列を表4-9に示します。また,組み合わせパーミッションと対応する文字列を表4-10に示します。

表4-9 基本パーミッションと対応する文字列

パーミッション文字列パーミッション意味
PRIM_READ_PROPS基本プロパティ参照権プロパティを参照する権限
PRIM_WRITE_PROPS基本プロパティ更新権プロパティを更新する権限
PRIM_READ_CONTENTS基本コンテント参照権文書の内容を参照する権限
PRIM_WRITE_CONTENTS基本コンテント更新権文書の内容を更新する権限
PRIM_LINK基本リンク権オブジェクト同士を関連づける権限
PRIM_VERSION基本バージョン管理権オブジェクトのバージョンに対する操作をする権限
PRIM_DELETE基本削除権オブジェクトを削除する権限

基本プロパティ参照権は,そのほかの基本パーミッションにも含まれます。したがって,基本プロパティ参照権以外の基本パーミッションを指定すると,各基本パーミッションで許可される操作に加えて,オブジェクトのプロパティの参照が許可されます。なお,基本パーミッションは,アクセス制御の対象となるオブジェクトごとに許可される操作の内容が異なります。詳細については,マニュアル「DocumentBroker Version 3 クラスライブラリ C++ 解説」またはマニュアル「DocumentBroker Version 3 クラスライブラリ Java 解説」を参照してください。

表4-10 組み合わせパーミッションと対応する文字列

パーミッション文字列パーミッション意味
READ_PROPSプロパティ参照権基本プロパティ参照権と同じ権限
READ参照権次の基本パーミッションを組み合わせた権限
  • 基本プロパティ参照権
  • 基本コンテント参照権
WRITE_PROPSプロパティ更新権次の基本パーミッションを組み合わせた権限
  • 基本プロパティ参照権
  • 基本プロパティ更新権
READ_WRITE参照更新権次の基本パーミッションを組み合わせた権限
  • 基本プロパティ参照権
  • 基本プロパティ更新権
  • 基本コンテント参照権
  • 基本コンテント更新権
DELETE削除権次の基本パーミッションを組み合わせた権限
  • 基本プロパティ参照権
  • 基本削除権
LINKリンク権次の基本パーミッションを組み合わせた権限
  • 基本プロパティ参照権
  • 基本リンク権
VERSIONバージョン権次の基本パーミッションを組み合わせた権限
  • 基本プロパティ参照権
  • 基本プロパティ更新権
  • 基本コンテント参照権
  • 基本コンテント更新権
  • 基本バージョン管理権
FULL_CONTROLフルコントロールすべての基本パーミッションを組み合わせた権限

なお,表4-9および表4-10に示したパーミッションのほかに,「NONE」が指定できます。NONEを指定すると,新規にオブジェクトを作成した場合に権限は設定されません。また「NONE」は,ほかのパーミッション文字列と一緒には指定できません。例えば,「DefaultACFlagEveryone=NONE|LINK」といった指定はできません。