JP2013182295A - 処理実行装置及びコンピュータプログラム及び処理実行方法 - Google Patents
処理実行装置及びコンピュータプログラム及び処理実行方法 Download PDFInfo
- Publication number
- JP2013182295A JP2013182295A JP2012043727A JP2012043727A JP2013182295A JP 2013182295 A JP2013182295 A JP 2013182295A JP 2012043727 A JP2012043727 A JP 2012043727A JP 2012043727 A JP2012043727 A JP 2012043727A JP 2013182295 A JP2013182295 A JP 2013182295A
- Authority
- JP
- Japan
- Prior art keywords
- role
- authority
- user
- tenant
- inter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 144
- 238000000034 method Methods 0.000 title claims description 170
- 238000004590 computer program Methods 0.000 title claims description 6
- 238000012546 transfer Methods 0.000 abstract description 23
- 238000007726 management method Methods 0.000 description 90
- 238000010586 diagram Methods 0.000 description 19
- 239000003795 chemical substances by application Substances 0.000 description 11
- 239000000284 extract Substances 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Abstract
【解決手段】ユーザ認証部145(利用者認証部)は、ユーザを認証する。権限判定部144(利用者ロール判定部)は、ユーザ認証部145が認証したユーザに対応づけられた利用者ロールを判定する。テナント間権限判定部111(権限ロール判定部)は、権限判定部144が判定した利用者ロールに対応づけられた他のテナントの権限ロールを判定する。権限判定部144(実行権限判定部)は、テナント間権限判定部111が判定した権限ロールに対応づけられた権限(実行権限)を判定する。
【選択図】図4
Description
上記利用者ロール記憶部は、上記記憶装置を用いて、複数のグループのうちのいずれかに属する利用者と、上記利用者が属するグループと同じグループに属する利用者ロールとの対応関係を表わす利用者ロールデータを記憶し、
上記権限ロール記憶部は、上記記憶装置を用いて、上記複数のグループのうちのいずれかに属する処理を実行する実行権限と、上記処理が属するグループと同じグループに属する権限ロールとの対応関係を表わす権限ロールデータを記憶し、
上記ロール間対応記憶部は、上記記憶装置を用いて、上記利用者ロールと、上記利用者ロールにかかるグループと異なるグループにかかる権限ロールとの対応関係を表わすロール間対応データを記憶し、
上記利用者認証部は、上記処理装置を用いて、利用者を認証し、
上記利用者ロール判定部は、上記処理装置を用いて、上記利用者ロール記憶部が記憶した利用者ロールデータに基づいて、上記利用者認証部が認証した利用者に対応づけられた利用者ロールを判定し、
上記権限ロール判定部は、上記処理装置を用いて、上記ロール間対応記憶部が記憶したロール間対応データに基づいて、上記利用者ロール判定部が判定した利用者ロールに対応づけられた権限ロールを判定し、
上記実行権限判定部は、上記処理装置を用いて、上記権限ロール記憶部が記憶した権限ロールデータに基づいて、上記権限ロール判定部が判定した権限ロールに対応づけられた実行権限を判定し、
上記実行部は、上記処理装置を用いて、上記実行権限判定部が判定した実行権限に基づいて、上記利用者認証部が認証した利用者が実行権限を有する処理を実行することを特徴とする。
実施の形態1について、図1〜図16を用いて説明する。
なお、同様の要素が複数ある場合、符号の後ろにアルファベットを付加して区別する場合がある。
テナント180(グループの一例。)は、実行環境システム100が提供するアプリケーションを利用する。それぞれのテナント180は、1つ以上のクライアント端末装置181〜182(端末装置の一例。)を有する。
クライアント端末装置181は、インターネットなどの広域網やローカルエリアネットワークなどのネットワーク105を介して、実行環境システム100に接続している。クライアント端末装置181は、ユーザによる操作にしたがって、実行環境システム100に処理の実行を要求し、実行結果を受け取って、ユーザに通知する。
APサーバ装置101は、マルチテナントアプリケーションを実行するサーバ装置である。マルチテナントアプリケーションは、複数のテナント180から利用可能なアプリケーションである。
DBサーバ装置102は、マルチテナントデータベースを構成するサーバ装置である。マルチテナントデータベースは、複数のテナント180のデータを混在して管理するデータベースである。
コンピュータ910は、例えば、処理装置911と、入力装置912と、出力装置913と、記憶装置914とを有する。
記憶装置914は、処理装置911が実行するコンピュータプログラムや、処理装置911が処理するデータなどを記憶する。記憶装置914は、例えば、揮発性メモリや不揮発性メモリなどの内部記憶装置を有する。あるいは、記憶装置914は、フラッシュメモリなどの半導体メモリや、磁気ディスクや光学ディスクなどの記憶媒体を用いた外部記憶装置を有する。
処理装置911は、記憶装置914が記憶したコンピュータプログラムを実行することにより、記憶装置914が記憶したデータを処理し、コンピュータ910全体を制御する。
入力装置912は、コンピュータ910の外部から信号や情報を入力して、処理装置911が処理できるデータに変換する。入力装置912が変換したデータは、処理装置911が直接処理してもよいし、記憶装置914が一時的に記憶してもよい。入力装置912は、例えば、キーボードやマウスなどユーザの操作を入力する操作入力装置を有する。あるいは、入力装置912は、カメラやスキャナ装置など静止画像や動画像を入力する画像入力装置である。あるいは、入力装置912は、マイクなど音声を入力する音声入力装置である。あるいは、入力装置912は、温度センサや圧力センサなど物理量を測定するセンサ装置である。あるいは、入力装置912は、アナログ信号をデジタルデータに変換するアナログデジタル変換装置である。あるいは、入力装置912は、他の装置が送信した信号を受信する受信装置である。
出力装置913は、処理装置911が処理したデータや記憶装置914が記憶したデータを信号などに変換してコンピュータ910の外部へ出力する。出力装置913は、例えば、液晶ディスプレイ装置など文字や画像を表示する表示装置である。あるいは、出力装置913は、レーザプリンタ装置など文字や画像を印刷する印刷装置である。あるいは、出力装置913は、スピーカなど音声を出力する音声出力装置である。あるいは、出力装置913は、デジタルデータをアナログ信号に変換するデジタルアナログ変換装置である。あるいは、出力装置913は、他の装置に対して信号を送信する送信装置である。
APサーバ装置101などの機能ブロックは、例えば、記憶装置914が記憶したコンピュータプログラムを処理装置911が実行することにより実現される。なお、APサーバ装置101などの機能ブロックは、他の構成により実現する構成であってもよい。例えば、デジタル回路やアナログ回路などの電気的構成や、機械的構成などを用いて、APサーバ装置101などの機能ブロックを実現する構成であってもよい。
例えば、テナント情報記憶部170は、テナント180ごとに異なるテーブル、スキーマ、データベースインスタンスなどを用いて、テナント180ごとにデータを分離する。
あるいは、テナント情報記憶部170は、複数のテナント180で同一のテーブルを共有する構成であってもよい。その場合、あるレコードにかかるデータがどのテナント180のものであるかを区別するため、例えば、各テーブルに、テナントIDなどテナント180を識別するテナント識別情報を格納するカラムを設ける。
テナント間委譲定義情報には、例えば、委譲される権限に関連付けられた役割を表わす役割識別情報、委譲元のテナント180を表わすテナント識別情報(以下「委譲元識別情報」と呼ぶ。)、委譲先のテナント180を表わすテナント識別情報(以下「委譲先識別情報」と呼ぶ。)などがある。
ユーザ認証部145(利用者認証部の一例。)は、ログイン時などのユーザの認証をする。ユーザ認証部145は、処理装置911を用いて、ユーザのログイン処理をする。例えば、ユーザ認証部145は、入力装置912を用いて、ユーザのユーザIDやパスワードなどを入力する。ユーザ認証部145は、ユーザ情報記憶部173が記憶したユーザ情報に基づいて、入力したユーザIDやパスワードなどを検証することにより、ユーザを認証する。
権限判定部144(利用者ロール判定部及び実行権限判定部の一例。)は、ユーザの権限を判定する。権限判定部144は、処理装置911を用いて、ユーザ認証部145が認証したユーザが有する権限を判定する。例えば、権限判定部144は、ユーザロール定義情報記憶部175が記憶したユーザロール情報に基づいて、ユーザ認証部145が認証したユーザに関連付けられた役割を判定する。権限判定部144は、権限ロール定義情報記憶部174が記憶した権限ロール定義情報に基づいて、判定した役割に関連付けられた権限を判定する。
(1)その役割が関連付けられたユーザと同じテナント180のデータに対する処理をする権限に関連付けられた役割。
(2)権限委譲により、その役割が関連づけられたユーザと異なるテナント180のデータに対する処理をする権限に関連付けられた役割。
以下、(1)を「通常ロール」、(2)を「テナントロール」と呼ぶ。
ロールタイプ判定部146は、処理装置911を用いて、ユーザの指示に関わる役割が通常ロールであるかテナントロールであるかを判定し、テナントロールである場合、ユーザロールであるか権限ロールであるかを判定する。
例えば、ユーザロール定義情報の追加をユーザが指示した場合、ロールタイプ判定部146は、ユーザロール定義情報によって関連付けようとしている役割が通常ロールであるかユーザロールであるか権限ロールであるかを判定する。通常ロールあるいはユーザロールであるとロールタイプ判定部146が判定した場合、ロール管理部143は、ユーザの指示にしたがって、ユーザロール定義情報を追加する。しかし、権限ロールであるとロールタイプ判定部146が判定した場合、ロール管理部143は、ユーザロール定義情報を追加しない。
あるいは、権限ロール定義情報の追加をユーザが指示した場合、ロールタイプ判定部146は、ユーザロール定義情報によって関連付けようとしている役割が通常ロールであるかユーザロールであるか権限ロールであるかを判定する。通常ロールあるいは権限ロールであるとロールタイプ判定部146が判定した場合、ロール管理部143は、ユーザの指示にしたがって、権限ロール定義情報を追加する。しかし、ユーザロールであるとロールタイプ判定部146が判定した場合、ロール管理部143は、権限ロール定義情報を追加しない。
テナントID310は、テナント識別情報(グループ識別データ)の一例である。テナントID310は、その権限が属するテナント180を表わす。
権限ID311は、権限識別情報(権限識別データ)の一例である。権限ID311は、少なくとも同じテナント180に属する権限のなかで一意である。権限情報は、権限ID311、あるいは、テナントID310と権限ID311との組み合わせによって、一意に識別される。
対象システム312は、処理識別情報(処理識別データ)の一例である。対象システム312は、処理を実行するアプリケーションを表わす。対象システム312は、例えば、処理を実行するアプリケーションの名前や、そのアプリケーションによって操作される外部機器の名前などである。
権限内容313は、処理識別情報の一例である。権限内容313は、対象システム312によって表わされるアプリケーションが実行する処理のうち、その権限によって実行させることができる処理の範囲を表わす。
テナントID320は、テナント識別情報の一例である。テナントID320は、その役割が属するテナント180を表わす。
ロールID321は、役割識別情報(ロール識別データ)の一例である。ロールID321は、少なくとも同じテナント180のなかで一意である。ロール情報は、ロールID321、あるいは、テナント180とロールID321との組み合わせによって、一意に識別される。
ロールタイプ322は、その役割が、通常ロールであるか、権限ロールであるか、ユーザロールであるかを表わす。
ユーザ情報記憶部173は、1つ以上のユーザ情報を記憶する。それぞれのユーザ情報は、例えば、テナントID330と、ユーザID331と、ユーザ名332と、パスワード333とを含む。
テナントID330は、テナント識別情報の一例である。テナントID330は、そのユーザが属するテナント180を表わす。
ユーザID331は、ユーザ識別情報(利用者識別データ)の一例である。ユーザID331は、少なくとも同じテナント180のなかで一意である。ユーザ情報は、ユーザID331、あるいは、テナントID330とユーザID331との組み合わせによって、一意に識別される。
ユーザ名332は、ユーザ属性情報(利用者属性データ)の一例である。ユーザ名332は、そのユーザの氏名を表わす。
パスワード333は、ユーザ認証情報(利用者認証データ)の一例である。例えば、ユーザ認証部145は、ユーザがログインするときに入力したパスワードと、パスワード333とを比較し、一致した場合に、そのユーザを認証する。
権限ロール定義情報記憶部174は、1つ以上の権限ロール定義情報を記憶する。それぞれの権限ロール定義情報は、例えば、テナントID340と、ロールID341と、権限ID342とを含む。
テナントID340は、テナント識別情報の一例である。テナントID340は、その権限ロール定義情報が属するテナント180を表わす。
ロールID341は、役割識別情報の一例である。権限ID342は、権限識別情報の一例である。権限ロール定義情報は、ロールID341(あるいはテナントID340とロールID341との組み合わせ)によって識別されるロール情報と、権限ID342(あるいはテナントID340と権限ID342との組み合わせ)によって識別される権限情報とを関連付ける。これにより、ロール情報によって表わされる役割に、そのロール情報に関連付けられた権限情報によって表わされる権限が与えられる。
ユーザロール定義情報記憶部175は、1つ以上のユーザロール定義情報を記憶する。それぞれのユーザロール定義情報は、例えば、テナントID350と、ロールID351と、ユーザID352とを含む。
テナントID350は、テナント識別情報の一例である。テナントID350は、そのユーザロール定義情報が属するテナント180を表わす。
ロールID351は、役割識別情報の一例である。ユーザID352は、ユーザ識別情報の一例である。ユーザロール定義情報は、ロールID351(あるいはテナントID350とロールID351との組み合わせ)によって識別されるロール情報と、ユーザID352(あるいはテナントID350とユーザID352との組み合わせ)によって識別されるユーザ情報とを関連付ける。これにより、ユーザ情報によって表わされるユーザに、そのユーザ情報に関連付けられたロール情報によって表わされる役割が与えられ、更に、そのロール情報に関連付けられた権限情報によって表わされる権限が与えられる。
テナント間委譲定義情報記憶部161は、1つ以上のテナント間委譲定義情報を記憶する。それぞれのテナント間委譲定義情報は、例えば、委譲元テナントID301と、委譲先テナントID302と、委譲状態303と、ロールID304とを含む。
委譲元テナントID301は、委譲元識別情報(委譲元識別データ)の一例である。委譲元テナントID301は、委譲される権限によって実行される処理の対象となるデータが属するテナント180を表わす。
委譲先テナントID302は、委譲先識別情報(委譲先識別データ)の一例である。委譲先テナントID302は、委譲された権限に基づいて処理を実行させるユーザが属するテナント180を表わす。
委譲状態303は、権限委譲の有無を表わす。例えば、委譲状態303が「委譲中」である場合、委譲先のテナント180に属するユーザが、委譲された権限に基づいて、委譲元のテナント180に属するデータに対する処理を実行できる。委譲状態303が「未委譲」である場合、委譲先のテナント180に属するユーザは、委譲元のテナント180に属するデータに対する処理を実行できない。
ロールID304は、役割識別情報の一例である。この例では、委譲元のテナント180において、委譲される権限に関連付けられる役割(権限ロール)を表わすロール情報と、委譲先のテナント180において、委譲された処理を実行させるユーザに関連付けられる役割(ユーザロール)を表わすロール情報とで、同一のロールID321を用いることにより、権限ロールとユーザロールとを関連付ける。テナント間委譲定義情報は、委譲元テナントID301とロールID304との組み合わせによって識別されるロール情報と、委譲先テナントID302とロールID304との組み合わせによって識別されるロール情報とを関連付ける。これにより、委譲元のロール情報によって表わされる権限ロールと、委譲先のロール情報によって表わされるユーザロールとが関連付けられる。委譲先のテナント180においてそのユーザロールに関連付けられたユーザ情報によって表わされるユーザに、委譲元のテナント180においてその権限ロールに関連付けられた権限情報によって表わされる処理を実行する権限が与えられる。
委譲元のテナント180は、委譲先のテナント180でその権限を使うユーザが誰であるかなどの情報を知る必要はない。したがって、委譲先のテナント180に関する情報は、委譲元のテナント180から完全に保護される。
また、委譲先のテナント180は、委譲された権限の範囲でのみ、委譲元のテナント180のデータにアクセスすることができる。委譲元のテナント180に関して委譲された権限の範囲を超える情報は、委譲先のテナント180から完全に保護される。
パスワードが一致した場合、ユーザ認証部145は、認証に成功したと判定し、作業選択処理S02へ処理を進める。
パスワードが一致しない場合、ユーザ認証部145は、認証に失敗したと判定し、マルチテナント型アプリケーション実行処理S00を終了する。
ユーザが作業を終了しログアウトすることを選択した場合、APサーバ装置101は、マルチテナント型アプリケーション実行処理S00を終了する。
ユーザが作業を選択した場合、APサーバ装置101は、作業実行処理S03へ処理を進める。
作業終了後、APサーバ装置101は、作業選択処理S02に処理を戻し、次の作業を入力する。
一般作業には、例えば、ユーザ自身が属するテナント180のデータを対象とする通常作業、委譲された権限に基づいて他のテナント180のデータを対象とする代行作業などがある。
管理作業には、例えば、ユーザ情報を設定するユーザ設定作業、ロール情報を設定する役割設定作業、権限情報を設定する権限設定作業、ユーザと役割とを関連付けるユーザ役割設定作業、権限と役割とを関連付ける権限役割設定作業、権限を委譲する権限委譲作業、ユーザと役割との関連付けを解除するユーザ役割解除作業、権限と役割との関連付けを解除する権限役割解除作業、権限委譲を解除する委譲解除作業などがある。
例えば、権限判定部144は、ユーザロール定義情報記憶部175が記憶したユーザロール定義情報のなかから、テナントID350が、そのユーザが属するテナント180のテナントIDと一致し、ユーザID352が、そのユーザのユーザIDと一致するユーザロール定義情報を抽出する。権限判定部144は、抽出したユーザロール定義情報から、ロールID351を取得する。権限判定部144は、権限ロール定義情報記憶部174が記憶した権限ロール定義情報のなかから、テナントID340が、そのユーザが属するテナント180のテナントIDと一致し、ロールID341が、取得したロールID351のいずれかと一致する権限ロール定義情報を抽出する。権限判定部144は、抽出した権限ロール定義情報から、権限ID342を取得する。権限判定部144は、権限情報記憶部171が記憶した権限情報のなかから、テナントID310が、そのユーザが属するテナント180のテナントIDと一致し、権限ID311が、取得した権限ID342のいずれかと一致する権限情報を抽出する。権限判定部144は、抽出した権限情報に含まれる対象システム312及び権限内容313によって表わされる処理のなかに、そのテナント180に対する権限委譲処理が含まれるか否かを判定する。
権限委譲をする権限がそのユーザにあると判定した場合、権限判定部144は、委譲定義生成工程S13へ処理を進める。
権限委譲をする権限がそのユーザにないと判定した場合、権限判定部144は、権限委譲処理S10を終了する。
テナントロール管理部112は、生成するテナント間委譲定義情報の委譲元テナントID301に、委譲先入力工程S11で操作を入力したユーザが属するテナント180のテナントIDを設定する。
テナントロール管理部112は、生成するテナント間委譲定義情報の委譲先テナントID302に、委譲先入力工程S11で入力した委譲先のテナント180のテナントIDを設定する。
テナントロール管理部112は、所定の規則にしたがって、あるいは、ランダムに、ロールIDを決定する。ロールIDには、委譲元のテナント180に属するいずれの役割情報のロールID321とも、委譲先のテナント180に属するいずれの役割情報のロールID321とも異なるものが選択される。例えば、テナントロール管理部112は、所定の固定文字列(例えば「ロール」)と、委譲元のテナント180を表わす文字列(例えば「A」)と、委譲先のテナント180を表わす文字列(例えば「B」)とを結合して、ロールID(例えば「ロールAB」)とする。なお、一つの委譲元のテナント180が、同じ委譲先のテナント180に対して複数の権限を委譲してもよい。その場合、テナントロール管理部112は、例えば、更に数字を付加するなど(例えば「ロールAB1」「ロールAB2」など)して、他のロールID321と異なるロールIDを生成する。
テナントロール管理部112は、生成するテナント間委譲定義情報のロールID304に、決定したロールIDを設定する。
また、テナントロール管理部112は、生成するテナント間委譲定義情報の委譲状態303に、「委譲中」を設定する。
テナント間委譲定義情報記憶部161は、記憶装置914を用いて、テナントロール管理部112が生成したテナント間委譲定義情報を記憶する。
テナントロール管理部112は、生成するロール情報のテナントID320に、委譲先入力工程S11で操作を入力したユーザが属するテナント180のテナントIDを設定する。
テナントロール管理部112は、生成するロール情報のロールID321に、委譲定義生成工程S13で決定したロールIDを設定する。
テナントロール管理部112は、生成するロール情報のロールタイプ322に、「権限ロール」を設定する。
ロール情報記憶部172は、記憶装置914を用いて、テナントロール管理部112が生成したロール情報を記憶する。
テナントロール管理部112は、生成するロール情報のテナントID320に、委譲先入力工程S11で入力した委譲先のテナント180のテナントIDを設定する。
テナントロール管理部112は、生成するロール情報のロールID321に、委譲定義生成工程S13で決定したロールIDを設定する。
テナントロール管理部112は、生成するロール情報のロールタイプ322に、「ユーザロール」を設定する。
ロール情報記憶部172は、記憶装置914を用いて、テナントロール管理部112が生成したロール情報を記憶する。
ロールタイプがユーザロールである場合、権限と関連付けることはできない。ロールタイプ判定部146は、権限役割設定処理S20を終了する。
ロールタイプが通常ロールや権限ロールである場合、権限と関連付けることができる。ロールタイプ判定部146は、権限判定工程S24へ処理を進める。
ユーザに権限があると判定した場合、権限判定部144は、権限ロール定義生成工程S25へ処理を進める。
ユーザに権限がないと判定した場合、権限判定部144は、権限役割設定処理S20を終了する。
ロール管理部143は、生成する権限ロール定義情報のテナントID340に、操作を入力したユーザが属するテナント180のテナントIDを設定する。
ロール管理部143は、生成する権限ロール定義情報のロールID341に、役割入力工程S22で入力した役割を識別するロールIDを設定する。
ロール管理部143は、生成する権限ロール定義情報の権限ID342に、権限入力工程S21で入力した権限を識別する権限IDを設定する。
権限ロール定義情報記憶部174は、記憶装置914を用いて、ロール管理部143が生成した権限ロール定義情報を記憶する。
ロールタイプが権限ロールである場合、ユーザと関連付けることはできない。ロールタイプ判定部146は、ユーザ役割設定処理S30を終了する。
ロールタイプが通常ロールやユーザロールである場合、ユーザと関連付けることができる。ロールタイプ判定部146は、権限判定工程S34へ処理を進める。
ユーザに権限があると判定した場合、権限判定部144は、ユーザロール定義生成工程S35へ処理を進める。
ユーザに権限がないと判定した場合、権限判定部144は、ユーザ役割設定処理S30を終了する。
ロール管理部143は、生成するユーザロール定義情報のテナントID350に、操作を入力したユーザが属するテナント180のテナントIDを設定する。
ロール管理部143は、生成するユーザロール定義情報のロールID351に、役割入力工程S32で入力した役割を識別するロールIDを設定する。
ロール管理部143は、生成するユーザロール定義情報のユーザID352に、ユーザ入力工程S31で入力したユーザを識別するユーザIDを設定する。
ユーザロール定義情報記憶部175は、記憶装置914を用いて、ロール管理部143が生成したユーザロール定義情報を記憶する。
例えば、権限判定部144は、ユーザロール定義情報記憶部175が記憶したユーザロール定義情報のなかから、テナントID350が、そのユーザが属するテナント180のテナントIDと一致し、ユーザID352が、そのユーザのユーザIDと一致するユーザロール定義情報を抽出する。権限判定部144は、抽出したユーザロール定義情報から、ロールID351を取得する。
テナント間権限判定部111は、ロール情報記憶部172が記憶したロール情報のなかから、テナントID320が、そのユーザが属するテナント180のテナントIDと一致し、ロールID321が、権限判定部144が取得したロールID351のいずれかと一致し、ロールタイプ322が「ユーザロール」であるロール情報を抽出する。抽出したロール情報がない場合、テナント間権限判定部111は、そのユーザに代行処理の権限がないと判定する。
抽出したロール情報がある場合、テナント間権限判定部111は、抽出したロール情報から、ロールID321を取得する。テナント間権限判定部111は、テナント間委譲定義情報記憶部161が記憶したテナント間委譲定義情報のなかから、委譲元テナントID301が、テナント入力工程S41でテナント切替制御部131が入力したテナント180のテナントIDと一致し、委譲先テナントID302が、そのユーザが属するテナント180のテナントIDと一致し、委譲状態303が「委譲中」であり、ロールID304が、取得したロールID321のいずれかと一致するテナント間委譲定義情報を抽出する。抽出したテナント間委譲定義情報がない場合、テナント間権限判定部111は、そのユーザに代行処理の権限がないと判定する。
抽出したテナント間委譲定義情報がある場合、テナント間権限判定部111は、抽出したテナント間委譲定義情報から、ロールID304を取得する。
権限判定部144は、権限ロール定義情報記憶部174が記憶した権限ロール定義情報のなかから、テナントID340が、テナント入力工程S41でテナント切替制御部131が入力したテナント180のテナントIDと一致し、ロールID341が、テナント間権限判定部111が取得したロールID304と一致する権限ロール定義情報を抽出する。権限判定部144は、抽出した権限ロール定義情報から、権限ID342を取得する。権限判定部144は、権限情報記憶部171が記憶した権限情報のなかから、テナントID310が、テナント入力工程S41でテナント切替制御部131が入力したテナント180のテナントIDと一致し、権限ID311が、取得した権限ID342と一致する権限情報を抽出する。権限判定部144は、抽出した権限情報に含まれる対象システム312及び権限内容313によって表わされる処理のなかに、処理入力工程S42でアプリケーション切替制御部132が入力した処理が含まれるか否かを判定する。
代行処理の権限がそのユーザにあると判定した場合、権限判定部144は、処理実行工程S44へ処理を進める。
代行処理の権限がそのユーザにないと判定した場合、権限判定部144は、代行処理S40を終了する。
解除権限がそのユーザにあると判定した場合、権限判定部144は、委譲定義更新工程S54へ処理を進める。
解除権限がそのユーザにないと判定した場合、権限判定部144は、委譲解除処理S50を終了する。
例えば、テナントロール管理部112は、テナント間委譲定義情報記憶部161が記憶したテナント間委譲定義情報のなかから、委譲元テナントID301が、ユーザが属するテナント180のテナントIDと一致し、委譲先テナントID302が、委譲先入力工程S51で入力したテナント180のテナントIDと一致し、ロールID304が、役割入力工程S52で入力した役割のロールIDと一致するテナント間委譲定義情報を抽出する。テナントロール管理部112は、抽出したテナント間委譲定義情報の委譲状態303に、「未委譲」を設定する。テナント間委譲定義情報記憶部161は、テナントロール管理部112が抽出したテナント間委譲定義情報を、テナントロール管理部112が変更したテナント間委譲定義情報で置き換えて記憶する。
権限管理方式は、ユーザとロールの関係付けを管理する。
権限管理方式は、ロールと権限の関係付けを管理する。
権限管理方式は、前記2つの関係情報からロールを介して、権限を判定する上で、ロールを、
(1)ユーザと関係付けることのできるロール(ユーザロール)と、
(2)権限のみと関係付けることのできるロール(権限ロール)と
に分割し、その前記2つのロールを関係付けて管理することにより、ユーザの有する権限を判定する。
マルチテナントアプリケーション上の他のテナントに権限を委譲するため、
(1)他テナントに、ユーザと関係付けることのできるロール(ユーザロール)を、
(2)自身のテナントに、権限と関係付けることのできるロール(権限ロール)を
それぞれ作成し、前記2つのロールを関係付けて管理することにより、他のテナントのユーザに対して自テナントの権限を委譲する。
実施の形態2について、図17を用いて説明する。
なお、実施の形態1と共通する部分については、同一の符号を付し、説明を省略する。
なお、テナントロール管理部112は、委譲先テナントID302に、委譲先入力工程S11で入力した複数の委譲先のテナント180それぞれのテナントIDを設定した複数のテナント間委譲定義情報を生成する構成であってもよい。
マルチテナントアプリケーション上で、複数のテナントに対して一括で権限を委譲するため、
(1)複数のテナントに、ユーザとの割当てを定義できるロール(ユーザロール)を、
(2)自身のテナントに、権限との割当てを定義できるロール(権限ロール)を
それぞれ作成し、前記2つのロールを1対多で関係付けて管理することにより、複数のテナントのユーザに対して自テナントの権限を一括で委譲する。
上記利用者ロール記憶部は、上記記憶装置を用いて、複数のグループ(テナント180)のうちのいずれかに属する利用者(ユーザ)と、上記利用者が属するグループと同じグループに属する利用者ロール(ユーザロール)との対応関係を表わす利用者ロールデータ(ユーザロール定義情報)を記憶する。
上記権限ロール記憶部は、上記記憶装置を用いて、上記複数のグループのうちのいずれかに属する処理を実行する実行権限と、上記処理が属するグループと同じグループに属する権限ロールとの対応関係を表わす権限ロールデータ(権限ロール定義情報)を記憶する。
上記ロール間対応記憶部は、上記記憶装置を用いて、上記利用者ロールと、上記利用者ロールにかかるグループと異なるグループにかかる権限ロールとの対応関係を表わすロール間対応データ(テナント間委譲定義情報)を記憶する。
上記利用者認証部は、上記処理装置を用いて、利用者を認証する。
上記利用者ロール判定部は、上記処理装置を用いて、上記利用者ロール記憶部が記憶した利用者ロールデータに基づいて、上記利用者認証部が認証した利用者に対応づけられた利用者ロールを判定する。
上記権限ロール判定部は、上記処理装置を用いて、上記ロール間対応記憶部が記憶したロール間対応データに基づいて、上記利用者ロール判定部が判定した利用者ロールに対応づけられた権限ロールを判定する。
上記実行権限判定部は、上記処理装置を用いて、上記権限ロール記憶部が記憶した権限ロールデータに基づいて、上記権限ロール判定部が判定した権限ロールに対応づけられた実行権限を判定する。
上記実行部は、上記処理装置を用いて、上記実行権限判定部が判定した実行権限に基づいて、上記利用者認証部が認証した利用者が実行権限を有する処理を実行する。
上記ロール間対応変更部は、上記処理装置(911)を用いて、上記ロール間対応記憶部(テナント間委譲定義情報記憶部161)が記憶したロール間対応データ(テナント間委譲定義情報)について、上記ロール間対応データにかかる権限ロールが属するグループ(委譲元のテナント180)と、上記利用者認証部(ユーザ認証部145)が認証した利用者が属するグループ(テナント180)とが一致する場合に、上記ロール間対応データを変更するロール間対応変更処理を実行する。
上記権限ロール記憶部(権限ロール定義情報記憶部174)が記憶する権限ロールデータ(権限ロール定義情報)は、上記権限ロールを識別するロール識別データ(ロールID)を含む。
上記ロール間対応記憶部(テナント間委譲定義情報記憶部161)が記憶するロール間対応データ(テナント間委譲定義情報)は、上記利用者ロールと、上記利用者ロールを識別するロール識別データと同じロール識別データによって識別される権限ロールとが、対応づけられているか否かを表わす。
Claims (5)
- データを記憶する記憶装置と、データを処理する処理装置と、利用者ロール記憶部と、権限ロール記憶部と、ロール間対応記憶部と、利用者認証部と、利用者ロール判定部と、権限ロール判定部と、実行権限判定部と、実行部とを有し、
上記利用者ロール記憶部は、上記記憶装置を用いて、複数のグループのうちのいずれかに属する利用者と、上記利用者が属するグループと同じグループに属する利用者ロールとの対応関係を表わす利用者ロールデータを記憶し、
上記権限ロール記憶部は、上記記憶装置を用いて、上記複数のグループのうちのいずれかに属する処理を実行する実行権限と、上記処理が属するグループと同じグループに属する権限ロールとの対応関係を表わす権限ロールデータを記憶し、
上記ロール間対応記憶部は、上記記憶装置を用いて、上記利用者ロールと、上記利用者ロールにかかるグループと異なるグループにかかる権限ロールとの対応関係を表わすロール間対応データを記憶し、
上記利用者認証部は、上記処理装置を用いて、利用者を認証し、
上記利用者ロール判定部は、上記処理装置を用いて、上記利用者ロール記憶部が記憶した利用者ロールデータに基づいて、上記利用者認証部が認証した利用者に対応づけられた利用者ロールを判定し、
上記権限ロール判定部は、上記処理装置を用いて、上記ロール間対応記憶部が記憶したロール間対応データに基づいて、上記利用者ロール判定部が判定した利用者ロールに対応づけられた権限ロールを判定し、
上記実行権限判定部は、上記処理装置を用いて、上記権限ロール記憶部が記憶した権限ロールデータに基づいて、上記権限ロール判定部が判定した権限ロールに対応づけられた実行権限を判定し、
上記実行部は、上記処理装置を用いて、上記実行権限判定部が判定した実行権限に基づいて、上記利用者認証部が認証した利用者が実行権限を有する処理を実行する
ことを特徴とする処理実行装置。 - 上記実行部は、更に、ロール間対応変更部を有し、
上記ロール間対応変更部は、上記処理装置を用いて、上記ロール間対応記憶部が記憶したロール間対応データについて、上記ロール間対応データにかかる権限ロールが属するグループと、上記利用者認証部が認証した利用者が属するグループとが一致する場合に、上記ロール間対応データを変更するロール間対応変更処理を実行する
ことを特徴とする請求項1に記載の処理実行装置。 - 上記利用者ロール記憶部が記憶する利用者ロールデータは、上記利用者ロールを識別するロール識別データを含み、
上記権限ロール記憶部が記憶する権限ロールデータは、上記権限ロールを識別するロール識別データを含み、
上記ロール間対応記憶部が記憶するロール間対応データは、上記利用者ロールと、上記利用者ロールを識別するロール識別データと同じロール識別データによって識別される権限ロールとが対応づけられているか否かを表わす
ことを特徴とする請求項1または請求項2に記載の処理実行装置。 - データを記憶する記憶装置と、データを処理する処理装置と
を有するコンピュータが実行するコンピュータプログラムであって、上記コンピュータを請求項1乃至請求項3に記載の処理実行装置として機能させることを特徴とするコンピュータプログラム。 - データを記憶する記憶装置と、データを処理する処理装置とを有する処理実行装置が、処理を実行する処理実行方法において、
上記記憶装置が、複数のグループのうちのいずれかに属する利用者と、上記利用者が属するグループと同じグループに属する利用者ロールとの対応関係を表わす利用者ロールデータを記憶し、
上記記憶装置が、上記複数のグループのうちのいずれかに属する処理を実行する実行権限と、上記処理が属するグループと同じグループに属する権限ロールとの対応関係を表わす権限ロールデータを記憶し、
上記記憶装置が、上記利用者ロールと、上記利用者ロールにかかるグループと異なるグループにかかる権限ロールとの対応関係を表わすロール間対応データを記憶し、
上記処理装置が、利用者を認証し、
上記処理装置が、上記記憶装置が記憶した利用者ロールデータに基づいて、上記処理装置が認証した利用者に対応づけられた利用者ロールを判定し、
上記処理装置が、上記記憶装置が記憶したロール間対応データに基づいて、上記処理装置が判定した利用者ロールに対応づけられた権限ロールを判定し、
上記処理装置が、上記記憶装置が記憶した権限ロールデータに基づいて、上記処理装置が判定した権限ロールに対応づけられた実行権限を判定し、
上記処理装置が、上記処理装置が判定した実行権限に基づいて、上記処理装置が認証した利用者が実行権限を有する処理を実行する
ことを特徴とする処理実行方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012043727A JP5868221B2 (ja) | 2012-02-29 | 2012-02-29 | 処理実行装置及びコンピュータプログラム及び処理実行方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012043727A JP5868221B2 (ja) | 2012-02-29 | 2012-02-29 | 処理実行装置及びコンピュータプログラム及び処理実行方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013182295A true JP2013182295A (ja) | 2013-09-12 |
JP5868221B2 JP5868221B2 (ja) | 2016-02-24 |
Family
ID=49272928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012043727A Active JP5868221B2 (ja) | 2012-02-29 | 2012-02-29 | 処理実行装置及びコンピュータプログラム及び処理実行方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5868221B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104717651A (zh) * | 2013-12-13 | 2015-06-17 | 华为技术有限公司 | 租户切换方法及装置 |
JP2017027459A (ja) * | 2015-07-24 | 2017-02-02 | キヤノン株式会社 | 権限委譲システム、その制御方法、認可サーバおよびプログラム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000132625A (ja) * | 1998-10-23 | 2000-05-12 | Ntt Communicationware Corp | ワークフロー管理システム |
JP2011128994A (ja) * | 2009-12-18 | 2011-06-30 | Canon It Solutions Inc | 情報処理装置、情報処理方法、及びコンピュータプログラム |
-
2012
- 2012-02-29 JP JP2012043727A patent/JP5868221B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000132625A (ja) * | 1998-10-23 | 2000-05-12 | Ntt Communicationware Corp | ワークフロー管理システム |
JP2011128994A (ja) * | 2009-12-18 | 2011-06-30 | Canon It Solutions Inc | 情報処理装置、情報処理方法、及びコンピュータプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104717651A (zh) * | 2013-12-13 | 2015-06-17 | 华为技术有限公司 | 租户切换方法及装置 |
JP2017027459A (ja) * | 2015-07-24 | 2017-02-02 | キヤノン株式会社 | 権限委譲システム、その制御方法、認可サーバおよびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP5868221B2 (ja) | 2016-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11777739B2 (en) | Virtual network system, control apparatus, control method, and control program | |
US9418217B2 (en) | Information processing system and information processing method | |
US11792182B2 (en) | Virtual network system, virtual network control method, orchestration apparatus, control apparatus, and control method and control program of control apparatus | |
US20180048523A1 (en) | Virtual network system, virtual network control method, virtual network function database, orchestration apparatus, control apparatus, and control method and control program of control apparatus | |
JP2019074994A (ja) | 情報処理装置、情報処理システム及びプログラム | |
JP5868221B2 (ja) | 処理実行装置及びコンピュータプログラム及び処理実行方法 | |
JP5987021B2 (ja) | 分散情報連携システム | |
JP6184316B2 (ja) | ログイン中継サーバ装置、ログイン中継方法、及びプログラム | |
JP2015153260A (ja) | 情報処理装置及び情報処理方法及びプログラム | |
JP5447005B2 (ja) | 情報処理装置および情報処理システム | |
JP2019113996A (ja) | 管理装置及び管理方法 | |
JP6413628B2 (ja) | 情報処理システム、情報処理装置、情報処理方法、及びプログラム | |
CN105659554A (zh) | 基于普遍度的信誉 | |
US10530812B2 (en) | Methods and apparatuses for providing configurable security models | |
JP2006324994A (ja) | ネットワークアクセス制御システム | |
JP2003323410A (ja) | オペレータ権限管理システム | |
JP2018042165A (ja) | 管理装置及び共用ネットワークシステム | |
JP2009053804A (ja) | コミュニティ管理装置 | |
JP2008299467A (ja) | ユーザ認証情報管理装置及びユーザ認証プログラム | |
JP2004295711A (ja) | パスワード管理方法 | |
JP2017068415A (ja) | システム、及び、システムの制御方法 | |
JPH09305540A (ja) | コンピュータシステムにおける利用者管理方式 | |
JP2024060071A (ja) | デバイス管理装置の制御方法及びプログラム | |
JP2021019330A (ja) | 情報処理装置、ネットワーク管理方法及びプログラム | |
JP2023041471A (ja) | 情報処理装置、情報処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141003 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150430 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150602 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150717 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150825 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151014 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160105 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5868221 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |