Upgrade to Pro — share decks privately, control downloads, hide ads and more …

読者/作成者フィールド

Haruyuki Nakano
September 01, 2022

 読者/作成者フィールド

HCL Notes/Domino はデータへのアクセスにはちょっとうるさい製品ですが、とりわけ読者フィールド/作成者フィールドは開発者や管理者を泣かせてしまうほどの曲者(くせもの)です。
この資料では、文書にアイテムはあっても値が無い、文書に複数の読者/作成者フィールドがある、読者/作成者フィールドが存在しないといったありがちなケースについて挙動をまとめました。

2020年2月開催の「のの会 第21回」で使用した資料です。

Haruyuki Nakano

September 01, 2022
Tweet

More Decks by Haruyuki Nakano

Other Decks in Programming

Transcript

  1. セキュリティにもいろいろありますが.. • サーバー設置場所への入室 • コンソールへのログイン • Dominoサーバーのアクセス制御 (サーバー文書) • データベースの暗号化(主にローカ

    ルにあるもの) • データベースのアクセス制御(ACL) • 文書のアクセス制御(読者フィールド /作成者フィールド) • フィールドの暗号化 など
  2. 「DBの」アクセス制御と言えばACLですが 【アクセスレベル】 管理者 設計者 編集者 作成者 読者 投稿者 なし ACL

    (アクセス・コントロール・リスト) 【追加できるもの】 ユーザー サーバー グループ
  3. 許可する対象 読者フィールド • 文書の閲覧を許可 ユーザー サーバー グループ ロール *(ワイルドカード) 作成者フィールド

    • 文書の閲覧・編集を許可 ユーザー サーバー グループ ロール *(ワイルドカード)
  4. 影響するACLのアクセスレベル 読者フィールド • 文書の閲覧を許可 管理者 設計者 編集者 作成者 読者 作成者フィールド

    • 文書の閲覧・編集を許可 閲覧 編集 管理者 設計者 編集者 作成者 読者 作成者
  5. アクセス 作成 閲覧 更新 削除 管理者 可能 ※3 可能 ※2

    設計者 可能 ※3 可能 ※2 編集者 可能 ※3 可能 ※2 作成者 ※1 ※3 ※4 ※2 ※4 読者 ※3 投稿者 可能 なし 可能となる条件 ※1: ACLエントリに「文書の作成」のチェックがある ※2: ACLエントリに「文書の削除」のチェックがある ※3: 読者(または作成者)フィールドが文書に存在する場 合、自身が関連する値を含むか値が無い ※4: 作成者フィールドが文書に存在する場合、自身が関 連する値を含む 読者フィールドは、アクセス「管理者」~「読 者」まで影響する 作成者フィールドは、アクセス「作成者」のみ 影響する
  6. 作成者フィールドの効能 • アクセス「作成者」に次の権限を許可します • 文書の作成 ※別途オプションで「文書の作成」の許可が必要 • 文書の閲覧 • 文書の編集

    • 文書の削除 ※別途オプションで「文書の削除」の許可が必要 • アクセス「読者」以上に次の権限を許可します • 文書の閲覧 • フィールドのデフォルト値を指定しなければ、文書の作成者自身のアカ ウントを自動でセットします
  7. プログラムで作成した文書の権限が変 LotusScript等のプログラム言語で作成した文書の読者フィールドで IsReaders 属性を True にせず、皆が閲覧できてしまったり、同様に作成者 フィールドで IsAuthors 属性を True

    にせず、アクセス「作成者」のユーザー が文書を編集できない、といったことがあります。 HCL Master 御代様のブログ記事に記載のコードのサンプルが参考になりま す 作成者フィールドを変更する https://guylocke.blogspot.com/2008/09/blog-post_05.html 読者フィールドを変更する https://guylocke.blogspot.com/2009/01/isauthorsisreaders-cnxxxx-xxxxoyyyyxxxx.html