uCosminexus DocumentBroker Version 3 クラスライブラリ Java 解説
![[目次]](figure/content.gif)
![[用語]](figure/gloss.gif)
![[索引]](figure/index.gif)
![[前へ]](figure/front.gif)
アクセス制御モデルでは,ユーザがログインした際に生成されるユーザ情報からログインユーザを識別したり,DocumentBrokerサーバで定義されているログインユーザが保持するユーザ権限の情報を取得したりできます。ユーザ情報には,次のものがあります。
- ユーザ識別子
- 所属グループ
- 所属するグループの数
- 所属するグループのグループ識別子の一覧
- 特権
- ユーザ権限
各情報の詳細については,「3.10.1(1) ユーザ情報」を参照してください。それぞれのユーザ情報には,プロパティの名前が付けられています。ユーザ情報を表すプロパティの一覧を次の表に示します。
表3-15 ユーザ情報を表すプロパティの一覧
個々の文書空間オブジェクトにアクセス制御情報を設定するためのプロパティを次の表に示します。なお,VARRAY型のプロパティについては,構成要素のプロパティを「VARRAY型のプロパティの名前:構成要素のプロパティの名前」と表記します。
表3-16 アクセス制御情報を設定するためのプロパティの一覧
(凡例) −:該当しないことを示します。
- 注※1
- nは,ユーザ識別子の最大長になります。通常,ユーザ識別子の最大長は254バイトですが,次に示すコマンドでユーザ識別子の最大長を拡張できます。
- メタ情報の初期設定コマンド(EDMInitMeta)
この場合,-nオプションの指定値がユーザ識別子の最大長になります。
- 文書空間の定義コマンド(EDMCDefDocSpace)
この場合,-sオプションに指定する文書空間情報ファイル中のUserIDMaxLengthエントリの指定値がユーザ識別子の最大長になります。
- メタ情報の初期設定コマンド(EDMInitMeta)および文書空間の定義コマンド(EDMCDefDocSpace)については,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
- 注※2
- nは,グループ識別子の最大長になります。通常,グループ識別子の最大長は254バイトですが,次に示すコマンドでグループ識別子の最大長を拡張できます。
- メタ情報の初期設定コマンド(EDMInitMeta)
この場合,-gオプションの指定値がグループ識別子の最大長になります。
- 文書空間の定義コマンド(EDMCDefDocSpace)
この場合,-sオプションに指定する文書空間情報ファイル中のGroupIDMaxLengthエントリの指定値がグループ識別子の最大長になります。
- メタ情報の初期設定コマンド(EDMInitMeta)および文書空間の定義コマンド(EDMCDefDocSpace)については,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
- 注※3
- 値を更新する場合,基本プロパティ更新権は必要ありません。ただし,値を参照する場合は,基本プロパティ参照権が必要です。
- 注※4
- セキュリティACLでアクセス制御情報変更権(DbjDef.PERM_CHANGE_PERM)を与えられているユーザを示します。
- 注※5
- パーミッションを表す定数を指定します。パーミッションに指定する値については,「3.10.2 アクセス制御情報に設定できるパーミッションの種類」を参照してください。
- 注※6
- 読み取り専用のプロパティです。
- 注※7
- 一つの文書空間オブジェクトにバインドできるパブリックACLは10個までになります。また,個々のパブリックACLで設定できるACEは64個までになります。
各プロパティの詳細について説明します。
- 所有者のユーザ識別子(dbrProp_OwnerId)
- 文書空間オブジェクト作成時に,作成したユーザのユーザ識別子が設定されるプロパティです。このプロパティに設定されているユーザ識別子のユーザには,所有者として,ACFlagでアクセス権を与えることができます。また,所有者は,基本プロパティ更新権の有無に関係なく,その文書空間オブジェクトのアクセス制御情報およびアクセス制御情報変更権を設定・更新できます。ただし,値を参照する場合は,基本プロパティ参照権が必要です。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。また,属性検索条件にも指定できます。例えば,「Aさんが所有する文書を検索する」という条件で検索できます。ただし,検索条件に指定する場合は,「edmProp_OwnerId」という名前で指定してください。
- このプロパティの値を更新できるのは,所有者およびセキュリティ管理者だけです。所有者およびセキュリティ管理者以外のユーザは,基本プロパティ更新権があっても,このプロパティの値を更新できません。
- プライマリグループのグループ識別子(dbrProp_PrimaryGroupId)
- ACFlagでアクセス権を与えるグループのグループ識別子を設定するプロパティです。設定できるグループは一つだけです。このプロパティに設定されているグループ識別子のグループは,その文書空間オブジェクトに対して「ACFlagのプライマリグループのパーミッション」で設定された範囲のアクセス権を保持します。ユーザ管理システムがLDAP対応のディレクトリサービスの場合は,オブジェクトを作成したあとに,その文書空間オブジェクトの所有者またはセキュリティ管理者がユーザ情報のグループ識別子の中から一つ選択して,設定してください。UNIXのパスワードファイルの場合は,文書空間オブジェクトを作成するときにUNIXのパスワードファイルに記述されているグループ識別子が設定されます。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。また,属性検索条件にも指定できます。例えば,「プライマリグループがAグループの文書を検索する」という条件で検索できます。ただし,検索条件に指定する場合は,「edmProp_PrimaryGroupId」という名前で指定してください。
- このプロパティの値を更新できるのは,所有者およびセキュリティ管理者だけです。所有者およびセキュリティ管理者以外のユーザは,基本プロパティ更新権があっても,このプロパティの値を更新できません。
- ACFlagの所有者のパーミッション(dbrProp_OwnerPermission)
- 「所有者のユーザ識別子」に設定されているユーザに対して与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。文書空間オブジェクト作成時には,セキュリティ定義ファイルに設定されているデフォルトのパーミッションが設定されます。セキュリティ定義ファイルについては,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。ただし,属性検索条件には指定できません。
- このプロパティの値を更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,このプロパティの値を更新できません。
- ACFlagのプライマリグループのパーミッション(dbrProp_PrimaryGroupPermission)
- 「プライマリグループのグループ識別子」に設定されているグループに対して与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。文書空間オブジェクト作成時には,セキュリティ定義ファイルに設定されているデフォルトのパーミッションが設定されます。セキュリティ定義ファイルについては,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
- 「プライマリグループのグループ識別子」が設定されていない場合は,このプロパティに値を設定しても無視されます。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。ただし,属性検索条件には指定できません。
- このプロパティの値を更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,このプロパティの値を更新できません。
- ACFlagのすべてのユーザのパーミッション(dbrProp_EveryonePermission)
- すべてのユーザに対して与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。文書空間オブジェクト作成時には,セキュリティ定義ファイルに設定されているデフォルトのパーミッションが設定されます。セキュリティ定義ファイルについては,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。ただし,属性検索条件には指定できません。
- このプロパティの値を更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,このプロパティの値を更新できません。
- ローカルACL(dbrProp_ACL)
- ローカルACLを設定するプロパティです。ローカルACLは「サブジェクト」,「サブジェクト種別」および「パーミッション」という三つの要素を持つACEを複数管理するVARRAY型のプロパティです。ローカルACLの構成要素であるACEのプロパティについて説明します。
- サブジェクト(dbrProp_ACL:dbrProp_Subject)
- ローカルACLのACEでアクセス権を与えるユーザの識別子,グループの識別子またはシステムサブジェクトを表す定数を設定するプロパティです。
- サブジェクト種別(dbrProp_ACL:dbrProp_SubjectType)
- ローカルACLのACEでアクセス権を与えるユーザまたはグループの種別を設定するプロパティです。
- パーミッション(dbrProp_ACL:dbrProp_Permission)
- 「サブジェクト」に設定したユーザまたはグループに与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。
- これらのプロパティに設定する値の詳細については,「(3) アクセス制御情報の構成要素のプロパティ」を参照してください。
- 基本プロパティ参照権を持つユーザは,これらのプロパティの値を参照できます。ただし,属性検索条件には指定できません。また,これらのプロパティの値を設定・更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,これらのプロパティの値を更新できません。
- セキュリティACL(dbrProp_SACL)
- セキュリティACLを設定するプロパティです。セキュリティACLは「サブジェクト」,「サブジェクト種別」および「パーミッション」という三つの要素を持つACEを複数管理するVARRAY型のプロパティです。セキュリティACLの構成要素であるACEのプロパティについて説明します。
- サブジェクト(dbrProp_SACL:dbrProp_Subject)
- セキュリティACLのACEでアクセス制御情報変更権のパーミッションを設定してアクセス制御情報へのアクセス権を与えるユーザの識別子,グループの識別子またはシステムサブジェクトを表す定数を設定するプロパティです。
- サブジェクト種別(dbrProp_SACL:dbrProp_SubjectType)
- セキュリティACLのACEでアクセス制御情報変更権のパーミッションを設定してアクセス制御情報へのアクセス権を与えるユーザまたはグループの種別を設定するプロパティです。
- パーミッション(dbrProp_SACL:dbrProp_Permission)
- 「サブジェクト」に指定したユーザまたはグループに与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。このプロパティに設定できる値は,アクセス制御情報変更権を表す定数「DbjDef.PERM_CHANGE_PERM」です。
- 「サブジェクト」および「サブジェクト種別」に設定する値の詳細については「(3) アクセス制御情報の構成要素のプロパティ」を参照してください。
- 基本プロパティ参照権を持つユーザは,これらのプロパティの値を参照できます。ただし,属性検索条件には指定できません。また,これらのプロパティの値を設定・更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,これらのプロパティの値を更新できません。
- バインドしているパブリックACLの個数(dbrProp_PublicACLCount)
- 文書空間オブジェクトがバインドしているパブリックACLの個数が設定されるプロパティです。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。ただし,属性検索条件には指定できません。
- バインドしているパブリックACLのOIIDのリスト(dbrProp_PublicACLIds)
- 文書空間オブジェクトがバインドしているパブリックACLのOIIDのリストを表すVARRAY型のプロパティです。構成要素であるパブリックACLのOIIDのプロパティについて説明します。
- バインドしているパブリックACLのOIID(dbrProp_PublicACLIds:dbrProp_ACLIdElem)
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。ただし,属性検索条件には指定できません。
- このプロパティの値を設定・更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,このプロパティの値を更新できません。
- ログインユーザのパーミッション(dbrProp_UserPermission)
- 文書空間オブジェクトに対するログインユーザのアクセス権の範囲を定めるパーミッションが設定されるプロパティです。文書空間オブジェクトのACFlag,ローカルACLおよびバインドしているパブリックACLのアクセス制御情報から,文書空間オブジェクトに操作要求を出したログインユーザまたはログインユーザが所属するグループに与えられているアクセス権の範囲を定めるパーミッションの論理和が求められて設定されます。
ここでは,アクセス制御情報のうち,ACLの構成要素であるACEのプロパティについて説明します。
ACEのプロパティを次の表に示します。
表3-17 ACEのプロパティ
| 意味 |
プロパティの名前 |
データ型 |
制限値 |
| サブジェクト |
dbrProp_Subject |
STR型 |
サブジェクト種別に応じて制限値が異なります。
- ユーザ識別子の場合
1〜ユーザ識別子の最大長※(単位はバイト)。
- グループ識別子の場合
1〜グループ識別子の最大長※(単位はバイト)。
- システムサブジェクトの場合
1〜254バイト
|
| サブジェクト種別 |
dbrProp_SubjectType |
INT型 |
4バイト |
| パーミッション |
dbrProp_Permission |
INT型 |
4バイト |
- 注※
- 通常,ユーザ識別子およびグループ識別子の最大長は254バイトですが,次に示すコマンドでユーザ識別子とグループ識別子の最大長を拡張できます。
- メタ情報の初期設定コマンド(EDMInitMeta)
この場合,-nオプションの指定値がユーザ識別子の最大長に,-gオプションの指定値がグループ識別子の最大長になります。
- 文書空間の定義コマンド(EDMCDefDocSpace)
この場合,-sオプションに指定する文書空間情報ファイル中のUserIDMaxLengthエントリの指定値がユーザ識別子の最大長に,GroupIDMaxLengthエントリの指定値がグループ識別子の最大長になります。
- メタ情報の初期設定コマンド(EDMInitMeta)および文書空間の定義コマンド(EDMCDefDocSpace)については,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
(a) サブジェクト(dbrProp_Subject)
次のどれかを指定します。
- ユーザ識別子
ユーザ単位でパーミッションを設定する場合に指定します。
- グループ識別子
グループ単位でパーミッションを設定する場合に指定します。
- システムサブジェクトを表す定数
システムサブジェクトに対してパーミッションを設定する場合に指定します。
システムサブジェクトは,DocumentBrokerによって設定された情報に対してパーミッションを設定する場合に指定します。このサブジェクトは,主にパブリックACLに指定して使用します。
システムサブジェクトの定数と意味を次の表に示します。
表3-18 システムサブジェクトの定数と意味
| 定 数 |
意 味 |
| DbjDef.SYSSUBJECT_SELF |
対象の文書空間オブジェクトの所有者を表すサブジェクトです。
- パブリックACLのACLに設定した場合,そのパブリックACLをバインドしている文書やフォルダを表す文書空間オブジェクトの所有者を示します。
- 文書やフォルダを表す文書空間オブジェクトのローカルACLおよびセキュリティACLに設定した場合は,その文書空間オブジェクトの所有者を示します。
- パブリックACLのセキュリティACLに設定した場合は,パブリックACLの所有者を示します。
|
| DbjDef.SYSSUBJECT_EVERYONE |
すべてのユーザを表すサブジェクトです。 |
(b) サブジェクト種別(dbrProp_SubjectType)
「サブジェクト」に指定した内容に応じて,種別を示す定数を指定します。
- ユーザ識別子を指定した場合
定数「DbjDef.SUBJECTTYPE_USR」を指定します。
- グループ識別子を指定した場合
定数「DbjDef.SUBJECTTYPE_GRP」を指定します。
- システムサブジェクトを表す定数を指定した場合
定数「DbjDef.SUBJECTTYPE_SYS」を指定します。
(c) パーミッション(dbrProp_Permission)
「サブジェクト」に指定したユーザまたはグループに対するパーミッションを表す定数を指定します。
パーミッションに指定する値については,「3.10.2 アクセス制御情報に設定できるパーミッションの種類」を参照してください。
パブリックACLのプロパティを次の表に示します。なお,VARRAY型のプロパティについては,構成要素のプロパティを「VARRAY型のプロパティの名前:構成要素のプロパティの名前」と表記します。
表3-19 パブリックACLのプロパティの一覧
(凡例) −:該当しないことを示します。
- 注※1
- 読み取り専用のプロパティです。
- 注※2
- nは,ユーザ識別子の最大長になります。通常,ユーザ識別子の最大長は254バイトですが,次に示すコマンドでユーザ識別子の最大長を拡張できます。
- メタ情報の初期設定コマンド(EDMInitMeta)
この場合,-nオプションの指定値がユーザ識別子の最大長になります。
- 文書空間の定義コマンド(EDMCDefDocSpace)
この場合,-sオプションに指定する文書空間情報ファイル中のUserIDMaxLengthエントリの指定値がユーザ識別子の最大長になります。
- メタ情報の初期設定コマンド(EDMInitMeta)および文書空間の定義コマンド(EDMCDefDocSpace)については,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
- 注※3
- セキュリティACLでアクセス制御情報変更権(DbjDef.PERM_CHANGE_PERM)を与えられているユーザを示します。
各プロパティの詳細について説明します。
- オブジェクトの識別子(dmaProp_OIID)
- パブリックACLを識別するためのOIID文字列が設定されるプロパティです。パブリックACL作成時に,DocumentBrokerサーバが値を設定します。このOIIDを使用して,パブリックACLをほかの文書空間オブジェクトからバインドさせたり,すでに作成されているパブリックACLを指定してプロパティの値を設定・参照したりできます。また,属性検索条件にも指定できます。
- 所有者のユーザ識別子(dbrProp_OwnerId)
- パブリックACLを作成したユーザのユーザ識別子が設定されるプロパティです。このプロパティにユーザ識別子が設定されているユーザは,アクセス権の有無に関係なく,次の操作ができます。
- パブリックACLのアクセス制御情報の設定・更新
- アクセス制御情報変更権の設定・更新
- ユーザ定義プロパティの設定・更新
- パブリックACLの削除
- このプロパティの値は,属性検索条件にも指定できます。例えば,「Aさんが所有するパブリックACLを検索する」という条件で検索できます。ただし,検索条件に指定する場合は,「edmProp_OwnerId」という名前で指定してください。
- このプロパティの値を設定・更新できるのは,所有者およびセキュリティ管理者だけです。
- ローカルACL(dbrProp_ACL)
- 複数の文書空間オブジェクト間で共有したいアクセス制御情報を設定するプロパティです。ローカルACLは「サブジェクト」,「サブジェクト種別」および「パーミッション」という三つの要素を持つACEを複数管理するVARRAY型のプロパティです。ローカルACLの構成要素であるACEのプロパティについて説明します。
- サブジェクト(dbrProp_ACL:dbrProp_Subject)
- アクセス権を与えるユーザの識別子,グループの識別子またはシステムサブジェクトを表す定数を設定するプロパティです。
- サブジェクト種別(dbrProp_ACL:dbrProp_SubjectType)
- アクセス権を与えるユーザまたはグループの種別を設定するプロパティです。
- パーミッション(dbrProp_ACL:dbrProp_Permission)
- 「サブジェクト」に指定したユーザまたはグループに与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。
- これらのプロパティに設定する値の詳細については,「(3) アクセス制御情報の構成要素のプロパティ」を参照してください。
- 基本プロパティ参照権を持つユーザは,これらのプロパティの値を参照できます。ただし,属性検索条件には指定できません。また,これらのプロパティの値を設定・更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,これらのプロパティの値を更新できません。
- セキュリティACL(dbrProp_SACL)
- パブリックACLのローカルACLおよびユーザ定義プロパティの値を更新する権利を設定するプロパティです。このプロパティでアクセス制御情報変更権を与えられたユーザまたはグループは,パブリックACL内のローカルACLの設定・更新およびユーザ定義プロパティの設定・更新ができます。
- セキュリティACLは「サブジェクト」,「サブジェクト種別」および「パーミッション」という三つの要素を持つACEを複数管理するVARRAY型のプロパティです。セキュリティACLの構成要素であるACEのプロパティについて説明します。
- サブジェクト(dbrProp_SACL:dbrProp_Subject)
- パブリックACLのローカルACLおよびユーザ定義プロパティの値を更新する権利を与えるユーザの識別子,グループの識別子またはシステムサブジェクトを表す定数を設定するプロパティです。
- サブジェクト種別(dbrProp_SACL:dbrProp_SubjectType)
- パブリックACLを更新する権利を与えるユーザまたはグループの種別を設定するプロパティです。
- パーミッション(dbrProp_SACL:dbrProp_Permission)
- 「サブジェクト」に指定したユーザまたはグループに与えるアクセス権の範囲を定めるパーミッションを設定するプロパティです。このプロパティに設定できる値は,アクセス制御情報変更権を表す定数「DbjDef.PERM_CHANGE_PERM」です。アクセス制御情報変更権を設定されたユーザまたはグループは,パブリックACLのローカルACLの設定・更新およびユーザ定義プロパティの設定・更新ができます。
- 「サブジェクト」および「サブジェクト種別」に設定する値の詳細については,「(3) アクセス制御情報の構成要素のプロパティ」を参照してください。
- 基本プロパティ参照権を持つユーザは,これらのプロパティの値を参照できます。ただし,属性検索条件には指定できません。また,これらのプロパティの値を設定・更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザ以外のユーザは,基本プロパティ更新権があっても,これらのプロパティの値を更新できません。
- パブリックACLをバインドしている文書空間オブジェクトの個数(dbrProp_BindObjectCount)
- パブリックACLをバインドしている文書空間オブジェクトの個数が設定されるプロパティです。
- 基本プロパティ参照権を持つユーザは,このプロパティの値を参照できます。ただし,属性検索条件には指定できません。
- ログインユーザのパーミッション(dbrProp_UserPermission)
- パブリックACLに対するログインユーザのアクセス権の範囲を定めるパーミッションが設定されるプロパティです。セキュリティACLから,パブリックACLに操作要求を出したログインユーザまたはログインユーザが所属するグループに与えられているアクセス権の範囲を定めるパーミッションの論理和が求められて設定されます。
- ユーザ定義プロパティ
- パブリックACLクラスには,ユーザ定義プロパティを追加定義できます。
- ユーザ定義プロパティは,属性検索条件としても指定できます。
- ユーザ定義プロパティの値を設定・更新できるのは,所有者,セキュリティ管理者およびセキュリティACLでアクセス制御情報変更権を設定されているユーザです。
All Rights Reserved. Copyright (C) 2006, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2006, 2013, Hitachi Solutions, Ltd.