(57)【要約】【課題】企業内のファイルサーバに対するアクセス権をＡＣＬで制御する場合に、上位組織に属するユーザをアクセス可能とし、かつ、組織改変時のＡＣＬ変更が不要となるグループ階層を構成する。【解決手段】ディレクトリサービスデータベースを備えたディレクトリサーバと、このディレクトリサーバとＬＤＡＰを用いて通信する管理サーバとを備え、管理サーバでは、ＧＵＩを用いて組織階層を定義することで、組織階層と逆向きのグループ階層をディレクトリサービスデータベースに登録する。【選択図】      図６
2007257127.tif 000002
【特許請求の範囲】
【請求項１】
ディレクトリサービスデータベースを備えたディレクトリサーバと、
ＬＤＡＰを用いて前記ディレクトリサーバと通信する管理サーバと、
を備えた組織階層定義システムであって、
前記管理サーバは、
ＧＵＩを用いて組織階層を定義することで、前記組織階層と逆向きのグループ階層を前記ディレクトリサービスデータベースに登録する手段と、
前記グループ階層を前記組織階層としてツリー表示する手段と、
を備えることを特徴とする
組織階層定義システム。
【請求項２】
ディレクトリサービスデータベースを備えたディレクトリサーバと、
ＬＤＡＰを用いて前記ディレクトリサーバと通信する管理サーバと、
を備えた組織階層定義システムにおけるグループ階層の構成方法であって、
組織階層と逆向きのグループ階層を前記ディレクトリサービスデータベースへ登録するステップを含むことを特徴とする
グループ階層の構成方法。
【請求項３】
ディレクトリサービスデータベースを備えたディレクトリサーバと、
ＬＤＡＰを用いて前記ディレクトリサーバと通信する管理サーバと、
を備えた組織階層定義システムにおける組織階層の表示方法であって、
前記組織階層と逆向きに構成されたグループ階層を再帰的に処理してツリー表示するステップを含むことを特徴とする
組織階層の表示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、企業内のユーザ情報やネットワーク上にある資源を一元管理するディレクトリサービスを利用したシステムに関するものである。
【背景技術】
【０００２】
近年企業内には、人事システム、経理システムなどアプリケーションや、ファイルを共有するためのファイルサーバが数多く構築されている。従来、これらのアプリケーションやファイルサーバを利用するユーザの情報は個別に管理されてきたが、管理が煩雑であるという問題があった。
この問題を解決する手段として、ユーザ情報やネットワーク上にある資源を一元管理するディレクトリサービスが普及しつつある。また、ディレクトリサービスにアクセスするプロトコルもＬＤＡＰ（Lightweight Directory Access Protocol）という規格になっている。
【０００３】
また、ファイルサーバのフォルダやファイルへのアクセス権を制御する場合、フォルダやファイルに対してＡＣＬ(Access Control List)を設定する。ＡＣＬには、ディレクトリサービスで管理されているユーザやグループに対して、どのような操作を許可するかを指定する。
図１４は、ＡＣＬの設定例である。ディレクトリサービス１４０１には、Ａグループ１４０２とＢグループ１４０５とを登録している。Ａグループ１４０２には、Ｃユーザ１４０３とＤユーザ１４０４を追加しており、Ｂグループ１４０５には、Ｅユーザ１４０６とＦユーザ１４０７を追加している。このとき、フォルダ１４０８にはＡグループに対して、「読み込み」のアクセス権を指定している。これにより、フォルダ１４０８を参照できるユーザをＣユーザ１４０３とＤユーザ１４０４のみに制限できる（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２００５−３３８９３５号公報（段落番号０００８〜００１０、図１、図２）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ＡＣＬを設定して、企業内のファイルサーバに対するアクセス権を制御するケースを考える。
図１は企業の組織階層の例である。図１に示すように、組織階層の最上位に会社１０１があり、その組織には社長１１１が所属している。会社１０１の下には、設計部１０２と営業部１０５があり、それぞれの組織には、Ａ部長１１２とＢ部長１１７が所属している。さらに設計部１０２の下には、設計部第１グループ１０３と設計部第２グループ１０４があり、それぞれの組織には、Ｃ課長１１３、Ｄ社員１１４と、Ｅ課長１１５、Ｆ社員１１６が所属している。
【０００６】
図２は、図１に示した組織階層をディレクトリサービスのグループとユーザで表した図である。図２に示すように、図１で示した組織はディレクトリサービス上のグループとして表現される。また、組織の階層はグループの階層で表現することができる。これによると、グループ階層の最上位には会社２０１がある。
【０００７】
一方、ＡＣＬの設定について考えると、企業内のリソースという特性から、下位の組織が管理するファイルやフォルダに対して、上位の組織に所属する人がアクセスできるようにしたい場合が多い。具体的には、図１の設計部第１グループ１０３が管理するファイルやフォルダに対しては、Ａ部長１１２や社長１１１が読み込みのためのアクセスをできるようにしたい場合である。また、書き込みのためのアクセスに設定することもできる。
【０００８】
これを実現するためには、図３に示すようなＡＣＬを設定する。図３は、アクセス権をフォルダやファイルに対して設定するＡＣＬを示し、上位組織に属するユーザもアクセスできるように設定したＡＣＬを示した図である。つまり、図３に示すように、フォルダ３０１に対して、設計部第１グループのアクセス権３０４、Ａ部長のアクセス権３０３、社長のアクセス権３０２の３つのアクセス権を指定する必要がある。
【０００９】
この指定方法には従来２つの問題点があった。一つは、ＡＣＬを設定するときに、組織階層を意識して、上位組織に所属しているユーザを個別に指定しなければならないことである。図３の例では、上位組織に所属しているユーザを意識して、Ａ部長のアクセス権３０３と、社長のアクセス権３０２を個別にＡＣＬに設定しなければならない。
【００１０】
もう一つは、組織の変更に同期して、ファイルサーバなどのリソースに設定したＡＣＬを変更しなければならないことである。
企業では、人事異動や組織改変、退職や新人の採用等によって、組織に所属するユーザの情報や組織階層が頻繁に変更される。そのため、組織の変更に同期してファイルやフォルダに設定したＡＣＬを変更する必要がある。図３の例では、設計部の部長が異動した場合、ＡＣＬを変更する必要がある。
【００１１】
このように、ファイルやフォルダに設定したＡＣＬを組織の変更に同期させることは、ファイルの数が多い場合、非常に煩雑な作業となる。このため、ＡＣＬの変更漏れが発生したり、実際の組織とファイルに対するアクセス権が一致しない状態がたびたび発生したりしてしまう。
【００１２】
本発明は、前記問題を解決するために創案されたものであり、企業内のファイルサーバに対するアクセス権をＡＣＬで制御する場合に、上位組織に属するユーザをアクセス可能とし、かつ、組織改変時のＡＣＬ変更が不要となるグループ階層をディレクトリサービスデータベースに登録する組織階層定義システム、グループ階層の構成方法、及び組織階層の表示方法を提供することを課題とする。
【課題を解決するための手段】
【００１３】
上記課題を達成するために、本発明に係る組織階層定義システムは、ディレクトリサービスデータベースを備えたディレクトリサーバと、ＬＤＡＰを用いて前記ディレクトリサーバと通信する管理サーバとを備え、この管理サーバは、ＧＵＩを用いて組織階層を定義することで、前記組織階層と逆向きのグループ階層を前記ディレクトリサービスデータベースに登録する手段と、前記ディレクトリサービスデータベースに登録されたグループ階層を組織階層としてツリー表示する手段とを設けたものである。
【発明の効果】
【００１４】
本発明の組織階層定義システム、グループ階層の構成方法、及び組織階層の表示方法によれば、次のような効果がある。
企業内のファイルサーバに対するアクセス権を制御する場合に、上位組織に属するユーザをアクセス可能とし、かつ、組織改変時のＡＣＬ変更が不要となるグループ階層をディレクトリサービスデータベースに登録することができ、組織階層と逆向きに構成されたグループ階層を再帰的に処理してツリー表示することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を適用した組織階層定義システムの一実施の形態について、図面を参照して詳細に説明する。
図４は、本発明の実施形態の一例を示すシステム構成図である。図４に示すように、この組織階層定義システム４００は、ディレクトリサービスデータベース（ディレクトリサービスＤＢ）４０５を備えたディレクトリサーバ４０３と、このディレクトリサーバ４０３に対してアクセスする管理サーバ４０１を備えている。
【００１６】
また、管理サーバ４０１は、ディレクトリサーバ４０３に対してＬＤＡＰでアクセスし、組織階層をＧＵＩ（Graphical  User  Interface）で定義する組織階層定義部４０２を備えている。組織階層定義部４０２は、組織階層定義画面表示部４１１、ＧＵＩ入力部４１２、及びディレクトリサービス登録部４１３を備えている。
また、ディレクトリサーバ４０３は、ディレクトリサービス部４０４を備えている。
【００１７】
図５は、図４に示した組織階層定義部４０２の組織階層定義画面表示部４１１が表示する組織階層定義画面５０１の具体例である。組織階層定義画面５０１は、ＧＵＩ入力部４１２を介して組織階層を定義することで、組織階層に対応したグループ階層を、ディレクトリサービス登録部４１３を介してディレクトリサービスに登録する画面である。
図５に示すように、組織階層定義画面５０１は、組織階層を表示するツリービュー５０２と、組織階層で選択している組織５０５に属するユーザとグループを表示するリストビュー５０３とを備えている。リストビュー５０３の表示内容は、ツリービュー５０２で選択している組織に応じて変わる。図５の例では、ツリービュー５０２で設計部５０４を選択しているため、リストビュー５０３には、設計部５０４の下位組織である設計部第１グループ５０６と、設計部５０４に所属しているＡ部長５０７とを表示している。
【００１８】
図６は、組織階層定義画面に表示される組織階層と、ディレクトリサービス部４０４に定義されるグループ階層の関係を示した図である。
図６に示すように、組織階層定義画面６０１では、会社６０２の下位組織として、設計部６０３が定義されている。さらに、設計部６０３には下位組織として、設計部第１グループ６０４が定義されている。
【００１９】
このとき本システム（組織階層定義システム４００）のディレクトリサービス登録部４１３では、ディレクトリサービス６０６に、管理サーバ４０１における組織階層と逆向きのグループ階層を定義する。つまり、設計部第１グループ６０７に含まれるグループとして、設計部６０８を定義し、さらに、会社６０９を設計部６０８に含まれるグループとして定義する。これにより、上位組織が下位組織に含まれるグループ階層となるため、下位組織を表すグループのＡＣＬを設定するだけで、上位組織に属するユーザもアクセス可能となる。
【００２０】
図７は、組織階層に設計部第２グループを追加した後の組織階層定義画面を示した図である。図７に示すように、組織階層定義画面７０１では、ツリービュー７０２に示す設計部７０４の下位組織である、設計部第１グループと設計部第２グループ、さらに、設計部７０４に所属しているＡ部長をリストビュー７０３に表示している。
【００２１】
図８は、組織階層に設計部第２グループを追加した後のディレクトリサービス上のグループ階層を示した図である。図８に示すように、図６と比較すると、新たに設計部第２グループ８０４が追加され、さらに、設計部８０５が設計部第２グループ８０４に含まれるグループとして定義されている。なお、この図８では、設計部８０２と設計部８０５、会社８０３と会社８０６は同じオブジェクトを指している。このとき、設計部（８０２、８０５）と会社（８０３、８０６）の階層関係は変わらないので、会社８０６も間接的に設計部第２グループ８０４に含まれるグループになっている。
【００２２】
図９は、組織階層定義システムにおいて、組織を新規に作成する処理の概要を示すフローチャートである。組織階層定義画面で組織を新規に作成すると、図９に示すように、まず、組織に一対一で対応するグループをディレクトリサービス上に作成する（ステップ９０１）。図７と図８に示した例では設計部第２グループに対応するグループをディレクトリサービス上に作成することになる。
【００２３】
次に、作成する組織の上位組織に対応するグループを取得する（ステップ９０２）。図７と図８に示した例では設計部第２グループの上位組織である設計部に対応するグループがそれにあたる。
【００２４】
次に、組織の階層関係をグループの階層関係として定義する。具体的には、上位組織に対応するグループを、新規に作成するグループのmember属性に追加する（ステップ９０３）。member属性とは、ディレクトリサービス上のあるグループに所属するオブジェクトを示す属性であるが、本システム（組織階層定義システム４００）では、組織階層と逆向きのグループ階層を作成するため、member属性は、ある組織の上位組織を表していることになる。
図７と図８に示した例では設計部第２グループのmember属性に、設計部に対応するグループを追加することになる。
【００２５】
図１０はディレクトリサービスに格納されたグループ階層から組織階層をツリー表示する処理の概要を示すフローチャートである。図１０に示すように、はじめに最上位の組織に対応するグループを取得する（ステップ１００１）。図８に示した例では、会社（８０３および８０６）がそれにあたる。
つづいて最上位の組織、つまり会社（８０３および８０６）をツリービューに表示する（ステップ１００２）。会社（８０３および８０６）の下位の組織を表示する処理（ステップ１００３）は、図１１に示すフローチャートに示す再帰的な処理となる。
【００２６】
図１１は下位の組織階層を再帰的に表示する処理の概要を示すフローチャートである。図１１に示すように、まず、対象となるグループのmemberOf属性を取得する（ステップ１１０１）。MemberOf属性とは、ディレクトリサービス上のあるオブジェクトが所属するグループを示す属性であるが、本システムで作成したグループ階層は、組織階層と逆向きのツリーになっているため（図６参照）、memberOf属性は、ある組織の下位組織を表していることになる。
【００２７】
次に、対象となるグループのmemberOf属性があるかどうかを判定する（ステップ１１０２）。図８の例では、会社（８０３および８０６）が所属するグループ、つまり設計部（８０２および８０５）が取得されているため、次のステップへ進む。
以降の処理は、memberOf属性のグループ数を繰り返す（ステップ１１０３）。
まず、memberOf属性のグループを対象となるグループの下位組織として表示する（ステップ１１０４）。図８の例では、設計部（８０２および８０５）を会社（８０３および８０６）の下位組織として表示する。
【００２８】
次に、設計部（８０２および８０５）を対象グループとして、再帰的に処理を繰り返す。
つまり、設計部（８０２および８０５）のmemberOf属性を取得する（ステップ１１０１）。
設計部（８０２および８０５）は設計部第１グループ８０１および設計部第２グループ８０４に所属しているため、次のステップへ進む。
【００２９】
memberOf属性のグループを対象となるグループの下位組織として表示する（ステップ１１０４）。つまり、設計部第１グループ８０１および設計部第２グループ８０４を設計部（８０２および８０５）の下位組織として表示する。
さらに、設計部第１グループ８０１および設計部第２グループ８０４を対象グループとして、再帰的に処理を繰り返すが、それぞれのグループはどのグループにも所属していない、つまり、memberOf属性がないため、表示処理は終了する。
以上のステップにより、ディレクトリサービスに格納されたグループ階層から組織階層をツリー表示する。
【００３０】
図１２は、本システムで図１に示した組織階層を定義した時の、ディレクトリサービス上に登録されているグループとユーザを示した図である。
図１２には、図１に示した組織階層とは逆向きのグループ階層が構成されている。例えば、設計部（１２０２および１２０５）は、設計部第１グループ１２０１と設計部第２グループ１２０４に所属するグループになっている。また、会社（１２０３、１２０６および１２０８）は、設計部（１２０２および１２０５）と営業部１２０７の所属するグループになっている。
【００３１】
図１３は、図１２に示したグループを利用してＡＣＬを設定した例である。図１３に示すように、この例では、設計部第１グループに対して、「読み込み」のアクセス権１３０２を指定している。このようにＡＣＬを設定した場合、社長、Ａ部長、Ｃ課長、Ｄ社員の４人がアクセスできるフォルダ１３０１となる。すなわち、ＡＣＬを設定する際には、上位の組織階層を意識する必要はない。また、設計部の部長が変わった場合にも、ディレクトリサービス側で、設計部に所属するユーザを変更するだけで良く、フォルダに設定されたＡＣＬを変更する必要はない。
【００３２】
以上のように、本実施の形態の組織階層定義システム４００によれば、次のような効果がある。
（１）ＧＵＩを用いて組織階層を定義することで、組織階層と逆向きのグループ階層をディレクトリサービスデータベースに登録することができる。
（２）前項（１）で登録したグループをファイルやフォルダのＡＣＬに設定することで、上位組織に属するユーザを自動的にアクセス可能とすることができる。また、組織改変時には、ディレクトリサービス側でグループに所属するユーザを変更するだけで良く、ファイルやフォルダのＡＣＬを再設定する必要はない。
【００３３】
以上、好ましい実施の形態について説明したが、本発明は前記実施の形態に限定されるものではなく、本発明の要旨を逸脱することのない範囲内において適宜の変更が可能なものである。例えば、ディレクトリサービスにアクセスするプロトコルをＬＤＡＰとしたが、他のプロトコルであっても構わない。また、ＧＵＩを用いて組織階層を定義するとしたが、他のインターフェースであっても構わない。
【図面の簡単な説明】
【００３４】
【図１】組織階層の例を示した図である。
【図２】組織階層の例をディレクトリサービスのグループとユーザで表した図である。
【図３】上位組織に属するユーザもアクセスできるように設定したＡＣＬの例を示した図である。
【図４】本発明の一実施の形態を示すシステム構成図である。
【図５】組織階層定義部の例を示した図である。
【図６】組織階層とグループ階層の関係を示した図である。
【図７】組織階層に設計部第２グループを追加した後の組織階層定義画面を示した図である。
【図８】組織階層に設計部第２グループを追加した後のディレクトリサービス上のグループ階層を示した図である。
【図９】組織を新規に作成する処理の概要を示すフローチャートである。
【図１０】組織階層を表示する処理の概要を示すフローチャートである。
【図１１】下位の組織階層を再帰的に表示する処理の概要を示すフローチャートである。
【図１２】図１に示した組織階層を定義した場合に作成されるグループとユーザを示した図である。
【図１３】本システムで作成したグループをＡＣＬに設定した例を示した図である。
【図１４】従来例に係るＡＣＬの設定例を示した図である。
【符号の説明】
【００３５】
１０１，２０１，６０２，６０９，８０３，８０６，１２０３，１２０６，１２０８    会社
１０２，２１２，５０４，６０３，６０８，７０４，８０２，８０５，１２０２，１２０５    設計部
１０３，２２２，５０６，６０４，６０７，８０１，１２０１    設計部第１グループ
１０４，２２３，８０４，１２０４    設計部第２グループ
１０５，２１３，７０２，１２０７    営業部
１１１，２１１    社長
１１２，２２１，５０７    Ａ部長
１１３，２３１    Ｃ課長
１１４，２３２    Ｄ社員
１１５，２３３    Ｅ課長
１１６，２３４    Ｆ社員
２２４    Ｂ部長
３０１，１３０１    フォルダ
３０２，３０３，３０４，１３０２    アクセス権（読み込み）
４００    組織階層定義システム
４０１    管理サーバ
４０２    組織階層定義部
４０３    ディレクトリサーバ
４０４    ディレクトリサービス部
４０５    ディレクトリサービスデータベース（ディレクトリサービスＤＢ）
４１１    組織階層定義画面表示部
４１２    ＧＵＩ入力部
４１３    ディレクトリサービス登録部
５０１，６０１，７０１    組織階層定義画面
５０２    ツリービュー
５０３，７０３    リストビュー
５０５    組織
６０６    ディレクトリサービス
【図１】
2007257127.tif 000003
【図２】
2007257127.tif 000004
【図３】
2007257127.tif 000005
【図４】
2007257127.tif 000006
【図５】
2007257127.tif 000007
【図６】
2007257127.tif 000008
【図７】
2007257127.tif 000009
【図８】
2007257127.tif 000010
【図９】
2007257127.tif 000011
【図１０】
2007257127.tif 000012
【図１１】
2007257127.tif 000013
【図１２】
2007257127.tif 000014
【図１３】
2007257127.tif 000015
【図１４】
2007257127.tif 000016