JP5980421B2 - アクセス制御装置及びアクセス制御方法及びプログラム - Google Patents

アクセス制御装置及びアクセス制御方法及びプログラム Download PDF

Info

Publication number
JP5980421B2
JP5980421B2 JP2015518114A JP2015518114A JP5980421B2 JP 5980421 B2 JP5980421 B2 JP 5980421B2 JP 2015518114 A JP2015518114 A JP 2015518114A JP 2015518114 A JP2015518114 A JP 2015518114A JP 5980421 B2 JP5980421 B2 JP 5980421B2
Authority
JP
Japan
Prior art keywords
hierarchy
access
information
hierarchical
rank
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.)
Expired - Fee Related
Application number
JP2015518114A
Other languages
English (en)
Other versions
JPWO2014188743A1 (ja
Inventor
優 小杉
優 小杉
雅之 佐藤
雅之 佐藤
仁志 楓
仁志 楓
光義 山足
光義 山足
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP5980421B2 publication Critical patent/JP5980421B2/ja
Publication of JPWO2014188743A1 publication Critical patent/JPWO2014188743A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Description

本発明は、階層構造を用いたアクセス制御に関する。
クラウドサービスやSaaS(Software as a Service)を実現するための基盤技術として、一つのアプリケーションプログラム(以下、アプリケーションという)を複数の企業(テナント)で共用させる「マルチテナント管理技術」がある。
マルチテナント管理技術の目的として、複数企業によるアプリケーション共用によってハードウェア(H/W)リソース及びソフトウェア(S/W)リソースを削減し、コストを削減することが挙げられる。
従来技術では、ユーザの属性をアクセス権限と対応付けることにより柔軟なアクセス権限の設定を可能にしている(例えば、特許文献1)。
特許文献1では、「ユーザ情報表」で、ユーザだけでなくテナント・部門等の属性を管理しており、「アクセス権限割当表」で、アクセス制御を行う権限ごとに、どのような属性をもつユーザがアプリケーションを利用可能かを管理している。
特開2012−69087号公報
マルチテナントアプリケーションでは、新規にシステムを開発するだけでなく、開発コストを削減するために従来単一のテナントで利用していたアプリケーションを最大限有効活用してマルチテナントで利用可能にすることがある。
また、元々あるビルで利用していたアプリケーションを、サービス範囲を拡大するために他のビルや他のビルに属するテナントも利用可能にすることがある。
つまり、ビルに属しているあるテナントが、別のビルにも入居したため、ビルを跨ってテナントにアクセス制御を設定する必要がある。
そのため、ビル、テナント、会社内の総務部、営業部といった組織という順序の階層構造から、ある時点で、テナント、ビル、組織という階層構造に変更する必要が出てくる。
特許文献1では、履歴管理に関する言及がなされていない上に、組織階層構造に対する言及もなされていない。
仮に、特許文献1の技術を元に、上記要求を実現しようとする場合、組織階層構造が変更になった場合に、組織階層構造が変更になった時点で設定されているアクセス権限割当を全て見直す必要がある。
本発明はこのような課題を解決することを主な目的としており、階層構造の定義が変更された場合にも、変更に伴うデータ改修作業の作業量を最小限にとどめることを主な目的とする。
本発明に係るアクセス制御装置は、
複数の階層で構成される階層構造における階層間の順位が示される階層順位情報を記憶する階層順位情報記憶部と、
階層を構成する要素である階層要素の対であって、異なる二つの階層に属する互いに関連する階層要素の対が、階層の組合せごとに示される階層要素情報を記憶する階層要素情報記憶部と、
アクセスが制限されるアクセス制限リソースへのアクセスを許可する条件であるアクセス許可条件が特定の階層要素に対応付けて示されるアクセス許可条件情報を記憶するアクセス許可条件情報記憶部と、
いずれかの階層要素と対応付けられているユーザからの、アクセス制限リソースへのアクセスを要求するアクセス要求を受信するアクセス要求受信部と、
前記ユーザと対応付けられている階層要素を判別するとともに、前記階層順位情報に示される階層間の順位に基づき、判別した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出し、抽出した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出する動作を特定の階層に到達するまで繰り返す階層要素抽出部と、
前記階層要素抽出部により判別された階層要素及び抽出された階層要素と前記アクセス許可条件に示される前記特定の階層要素とを照合して、前記アクセス要求に対して前記アクセス制限リソースへのアクセスを許可するか否かを判定するアクセス許否判定部とを有することを特徴とする。
本発明では、階層間の順位が示される階層順位情報を記憶し、また、異なる二つの階層に属する互いに関連する階層要素の対が、階層の組合せごとに示される階層要素情報を記憶し、アクセス要求があった時点で、アクセス要求を行ったユーザに対応付けられている階層要素を起点にして階層順位情報と階層要素情報に基づいて階層構造を構築する。
このように、本発明では、階層間の上下関係が定義されるのみで階層要素間の上下関係は定義されていないので、階層構造に変更があった場合でも階層順位情報の改修ですみ、改修作業の作業量を最小限にとどめることができる。
実施の形態1に係るシステム構成例を示す図。 実施の形態1に係るアクセス制御装置の構成例を示す図。 実施の形態1に係る操作要求の構成例を示す図。 実施の形態1に係るユーザ情報管理部で管理されているユーザ情報の例を示す図。 実施の形態1に係るアクセス権限管理部で管理されているアクセス権限情報の例を示す図。 実施の形態1に係るロール割当管理部で管理されているロール割当情報の例を示す図。 実施の形態1に係る階層定義管理部で管理されている階層定義情報の例を示す図。 実施の形態1に係る組織情報管理部で管理されている情報の例を示す図。 実施の形態1に係る業務ロジック部の構成例を示す図。 実施の形態1に係る業務ロジック情報管理部の構成例を示す図。 実施の形態1に係る処理受付部の動作例を示すフローチャート図。 実施の形態1に係るF−RBAC部の動作例を示すフローチャート図。 実施の形態1に係る業務ロジック部の動作例を示すフローチャート図。 実施の形態1に係る階層構造変更要求の例を示す図。 実施の形態1に係るF−RBAC部の動作例を示すフローチャート図。 実施の形態1に係る階層定義管理部で管理されている階層順位変更後の階層定義情報の例を示す図。 実施の形態2に係る階層定義管理部で管理されている階層定義情報の例を示す図。 実施の形態2に係る業務ロジック情報管理部の構成例を示す図。 実施の形態1に係るユーザと所属組織と所属ビルと所属テナントとの関係を示す図。 実施の形態1に係るアクセス制御装置のハードウェア構成例を示す図。
実施の形態1.
本実施の形態では、様々な利用者に対し同一アプリケーションを共用可能にするために、マルチテナント型アプリケーションでのデータへのアクセス権やアプリケーションの利用権(以下、アクセス権限)を効率よく管理するための構成を説明する。
より具体的には、本実施の形態では、階層構造の定義が変更された場合にも、変更に伴うデータ改修作業の作業量を最小限にとどめる構成を説明する。
また、本実施の形態では、保持する操作履歴の情報を最小限にとどめる構成を説明する。
企業等においては、内部統制の関係から、アプリケーション操作に対する操作履歴を管理し、履歴の追跡を実施する必要がある。
そのため、過去の時刻における階層構造を再現する必要がある。
特許文献1の技術では、操作履歴として保持しなければならないデータも膨大になってしまうが、本実施の形態によれば、保持する操作履歴の情報を最小限にすることができる。
図1は、本実施の形態に係るシステム構成例を示す。
図1において、端末001、端末002は、サービスを利用するテナント企業に配置されている端末装置であり、パーソナルコンピュータ、モバイル端末等を想定している。
端末001、端末002内にはWebブラウザ001a、002aがインストールされている。
なお、端末001、002を操作するユーザは別のテナント企業の従業員を想定している。
また、同一テナント企業内で複数の端末を設置したり、同一のアプリケーションを3テナント企業以上で利用したりすることも可能である。
端末000は、図1に示すシステムを管理するシステム管理者、運用者が利用する端末装置であり、パーソナルコンピュータ、モバイル端末等を想定している。
端末000内にはWebブラウザ000aがインストールされている。
ネットワーク003は、端末001、002がアクセス制御装置004を利用する際に用いる通信路であり、インターネットおよびLAN(Local Area Network)であってもよい。
アクセス制御装置004は、アクセスが制限されるアクセス制限リソースへのアクセスを許可するか否かを判定する。
なお、以下では、特定の組織に属するユーザ、特定の属性を有するユーザにのみアクセスが許可される業務ロジック(アプリケーション)をアクセス制限リソースの例として用いる。
アクセス制御装置004は、図2に示すように、処理受付部005、フレキシブルロールベースアクセスコントロール部(Flexible Role−based Access Control部;以下、F−RBAC部とする)006、業務ロジック部007、業務ロジック情報管理部008、ユーザ情報管理部009、アクセス権限管理部010、ロール割当管理部011、階層定義管理部012、組織情報管理部013を有する。
アクセス制御装置004において、処理受付部005は、端末001、002から発信されたリクエストを受信し、後述する処理を実施する。
処理受付部005は、例えば、端末001、002から、アクセス制限リソースへのアクセスを要求するリクエストである操作要求(アクセス要求)を受信する。
処理受付部005は、アクセス要求受信部の例に相当する。
F−RBAC部006は、端末001、002のリクエスト内容とアクセス制御装置004内で管理している情報を元に、アクセス権限の有無を判定する。
F−RBAC部006は、階層要素抽出部、アクセス許否判定部、階層順位変更部の例に相当する。
業務ロジック部007は、就業管理や経理処理といった業務用処理を実施する。
業務ロジック情報管理部008は、業務ロジック部007で利用する情報を管理する。
ユーザ情報管理部009は、アプリケーション操作が可能なユーザの情報を管理する。
アクセス権限管理部010は、業務ロジックのアクセス権限を管理する。
ロール割当管理部011は、業務ロジックへアクセス可能な組織をアクセス権限情報と組織情報の対応関係によって管理する。
ロール割当管理部011は、アクセス許可条件情報記憶部の例に相当する。
階層定義管理部012は、システムで利用する組織階層構造の定義を管理する。
階層定義管理部012は、階層順位情報記憶部の例に相当する。
組織情報管理部013は、アプリケーションを利用する組織の情報を管理する。
組織情報管理部013は、階層要素情報記憶部の例に相当する。
なお、図2内の各要素を複数存在させ、冗長構造を持たせることが可能である。
図3の操作要求201は、端末001、002から送信されるリクエスト内容の一例である。
操作要求201は、操作要求201の発行元のユーザのユーザID、パスワード等の認証情報、業務ロジック部007への操作内容、通信を行う上で必要なヘッダ情報を含む。
なお、本実施の形態ではHTTP(HyperText Transfer Protocol)形式を利用するものとしているが、プロトコルに関してFTP(File Transfer Protocol)、JMS(Java(登録商標) Message
Service)等であっても上記内容を持たせることが可能であれば代用可能である。
操作要求201は、通信ヘッダ202、認証情報203、操作内容204を有する。
通信ヘッダ202は、端末001とアクセス制御装置004との間で通信を行う上で必要なヘッダ情報であり、リクエスト送信元、リクエスト送信先の情報を有する。
認証情報203は、リクエスト送信元ユーザの認証情報を示し、例としてユーザのユーザID、パスワードを有する。
操作内容204は、リクエスト送信元ユーザの業務ロジック部007への操作要求内容を示し、例として業務ロジックの種類、操作内容(データの参照、データの更新等)を有する。
図4は、ユーザ情報管理部009で管理されるユーザ情報301の例を示す。
ユーザ情報301は、アクセス制御装置004を利用するユーザの情報を保持しており、ユーザIDにより各ユーザを一意に識別可能であるものとする。
なお、ユーザ情報301は、ユーザID以外に、ユーザ名称や、ユーザの属する組織の組織ID、ユーザの認証に必要なパスワードを有する。
図5は、アクセス権限管理部010で管理されるアクセス権限情報401の例を示す。
アクセス権限情報401は、アクセス制御装置004で管理する業務ロジック部007の操作権限範囲やアクセス制御装置004自体の操作権限範囲の情報を保持している。
例えば、業務ロジックAに対する操作可否や、アクセス権限の操作可否が操作可能内容として保持されている。
なお、操作可否については参照のみ可能等、一部制限をつけることが可能とする。
図6は、ロール割当管理部011で管理されるロール割当情報501の例を示す。
ロール割当情報501は、アクセス権限情報401と組織情報との対応関係を管理し、どの組織がその操作を実施することが可能かの情報を保持している。
なお、権限の割当対象は、組織だけでなくビル全体、テナント全体といった設定も可能である。
さらに、組織の配下(指定した組織の子組織以下も該当する場合)や、直下(指定した組織の子組織は含まず)といった指定も可能とする。
なお、ロール割当情報はロール自体の情報と、ロールと組織との対応関係を表す情報に分割することも可能である。
図6に示すように、ロール割当情報501には、アクセス制限リソース(テナントA業務ロジック、ビルA業務ロジック)へのアクセス(操作、参照)を許可する条件であるアクセス許可条件が特定の階層要素(T001配下、B001配下)に対応付けて示さている。
なお、T001とB001は、図8に示すように、それぞれテナントのIDとビルのIDである。
ロール割当情報501は、アクセス許可条件情報の例に相当し、ロール割当管理部011は、前述したように、アクセス許可条件情報記憶部の例に相当する。
図7は、階層定義管理部012で管理される階層定義情報601を示す。
階層定義情報601は、アクセス制御装置004を利用するビル、テナント、組織等のエンティティ間の順位、及び階層構造が有効である期間を示す有効期限を有する。
例えば、図7中の階層ID:ST001は、階層構造の頂点にビルを配し、ビルの下にテナント、テナントの下に組織を配する構造を定義している。
なお、図7では、階層の例としてビル、テナント、組織を挙げているが、例えばビルの上位階層に地域というエンティティを定義したり、テナントの下に支社というエンティティを定義したりすることも可能である。
図7に示すように、階層定義情報601には、階層構造における階層間の順位が示されており、階層順位情報の例に相当する。
そして、階層定義管理部012は、階層順位情報記憶部の例に相当する。
図8は、組織情報管理部013で管理される情報を示す。
組織情報管理部013は、ビル情報701、テナント情報702、組織情報703、ビル・テナント対応情報704、テナント・組織対応情報705、ビル・組織対応情報706を有する。
ビル情報701は、アクセス制御装置004を利用するビルの情報を保持する。
各ビルは、ビルIDにより識別可能である。
また、ビルID以外にビル名称、ビルの所在地といった属性情報を保持することも可能である。
テナント情報702は、アクセス制御装置004を利用するテナントの情報を保持する。
各テナントは、テナントIDにより識別可能である。
また、テナントID以外にテナント名称、テナントの契約内容といった属性情報を保持することも可能である。
組織情報703は、アクセス制御装置004を利用する組織の情報を保持する。
各組織は、組織IDにより識別可能である。
また、組織ID以外に組織名称、組織における責任者(組織長)といった属性情報を保持することも可能である。
なお、組織については部の配下に課が置かれるケースのように組織間での階層構造も考えられるため、組織の上位階層に当たる組織(親組織)についても情報として有する。
ビル・テナント対応情報704は、ビル情報701で管理するビルと、テナント情報702で管理するテナントとの対応関係を示す。
ビル・テナント対応情報704は、ビルID・テナントIDのようにビルとテナントとを一意に特定できる属性を保持している。
また、ビル・テナントの対応関係に有効期限がある場合は、属性として有効期限を保持する。
テナント・組織対応情報705は、テナント情報702で管理するテナントと組織情報703で管理する組織との対応関係を示す。
テナント・組織対応情報705は、テナントID・組織IDのようにテナントと組織とを一意に特定できる属性を保持している。
また、テナント・組織の対応関係に有効期限がある場合は、属性として有効期限を保持する。
ビル・組織対応情報706は、ビル情報701で管理するビルと組織情報703で管理する組織との対応関係を示す。
ビル・組織対応情報706は、ビルID・組織IDのようにビルと組織とを一意に特定できる属性を保持している。
また、ビル・組織の対応関係に有効期限がある場合は、属性として有効期限を保持する。
ビル・テナント対応情報704、テナント・組織対応情報705、ビル・組織対応情報706では、階層を構成する要素である階層要素の対であって、異なる二つの階層に属する互いに関連する階層要素の対が、階層の組合せごとに示されている。
具体的には、ビル階層とテナント階層については、ビル・テナント対応情報704において、ビル階層の階層要素であるB001とテナント階層の階層要素であるT001との対、ビル階層の階層要素であるB001とテナント階層の階層要素であるT002との対が記述されている。
また、テナント階層と組織階層については、テナント・組織対応情報705において、テナント階層の階層要素であるT001と組織階層の階層要素であるORGT001との対、テナント階層の階層要素であるT001と組織階層の階層要素であるORGT002との対等が記述されている。
また、ビル階層と組織階層については、ビル・組織対応情報706において、ビル階層の階層要素であるB001と組織階層の階層要素であるORGT001との対、ビル階層の階層要素であるB001と組織階層の階層要素であるORGT002との対等が記述されている。
ビル・テナント対応情報704、テナント・組織対応情報705、ビル・組織対応情報706は、階層要素情報の例に相当する。
そして、組織情報管理部013は、前述したように、階層要素情報記憶部の例に相当する。
図9は、業務ロジック部007の内部構成を示している。
業務ロジック部007は内部に業務ロジック部A801、業務ロジック部B802、業務ロジック部C803を有しており、それぞれ担当する業務ロジックが異なる。
例えば、業務ロジック部A801では就業管理、業務ロジック部B802では経理管理、業務ロジック部C803では入退室管理といったように別々の業務を担当する。
なお、業務ロジック部007内にあるロジックの数は任意でありアクセス制御装置004で扱う業務ロジックの増減にあわせて、内部の業務ロジックの数も増減可能とする。
図10は、業務ロジック情報管理部008の内部構成を示す。
業務ロジック情報管理部008では、業務ロジックA情報管理部901、業務ロジックB情報管理部902、業務ロジックC情報管理部903を有している。
それぞれ、業務ロジックA情報管理部901は業務ロジック部A801、業務ロジックB情報管理部902は業務ロジック部B802、業務ロジックC情報管理部903は業務ロジック部C803で扱う情報を管理している。
例えば業務ロジックA情報管理部901では就業管理ロジックで利用する社員名簿、勤怠記録、出勤日のカレンダー等を有する。
なお、業務ロジック部007と同様に内部で持つ情報の数も増減可能である。
また、各情報管理部で共通に利用する情報がある場合、共用することも可能である。
次に、アクセス制御装置004を利用するユーザが自身の端末から業務ロジック操作要求を出す場合の、動作について説明する。
テナントAに所属するユーザAがアクセス制御装置004内の業務ロジックAの操作を行う場合、ユーザAは、端末001のWebブラウザ001aを用いてアクセス制御装置004に対し自身の認証情報及び業務ロジックの操作内容を操作要求201の形式で要求を出す。
アクセス制御装置004では、端末から操作要求を受信した際の、リクエストの管理及びレスポンスの生成を一元的に処理受付部005で実施する。
図11のフローチャートを参照して、処理受付部005の動作について述べる。
なお、以下では、図3に示す操作要求201が受信された場合を例にして説明を進める。
図3では、ユーザID:U001のユーザが端末001を利用して送信した操作要求201であって、業務ロジックA(業務ID:L001)のデータ参照を要求する操作要求201が示されている。
なお、図19に示すように、ユーザAは、組織ID:ORG001の組織に属し、組織ID:ORG001の組織は、テナントID:T001のテナントに属し、テナントID:T001のテナントは、ビルID:B001のビルに属している。
しかしながら、アクセス制御装置004では、図19に示すような階層要素間の上下関係が予め定義した情報は保持しておらず、操作要求201を受信した際に、後述するように、F−RBAC部006が、図7及び図8に示す情報を用いて、階層要素間の上下関係を分析する。
処理受付部005は、受信した操作要求201から認証情報203、操作内容204を取得し、認証情報203、操作内容204をF−RBAC部006に出力し、要求元のユーザの業務ロジックへの操作可否をF−RBAC部006に問い合わせる(S101)。
次に、処理受付部005は、F−RBAC部006の問い合わせ結果からユーザの操作可否を判定する(S102)。
S102の結果が操作可能であった場合(S102でYES)、処理受付部005は、操作要求201の操作内容204を業務ロジック部007へ受け渡す(S103)。
そして、処理受付部005は、業務ロジック部007への操作要求結果を端末001aにレスポンスとして返却する(S104)。
一方、S102の結果が操作不可であった場合(S102でNO)は、処理受付部005は、操作不可であることをレスポンスとして端末001aにレスポンスとして返却する(S105)。
次に、図12のフローチャートを参照して、F−RBAC部006のユーザの操作可否の判定処理の動作を説明する。
F−RBAC部006は、処理受付部005から受信した認証情報203からユーザID及びパスワード等の認証に必要な情報を取得する(S201)。
次に、F−RBAC部006は、ユーザ情報管理部009に対し、認証情報203から取得したユーザIDを持つユーザの情報を問い合わせる(S202)。
次に、F−RBAC部006は、ユーザ認証に成功したかどうかを検証する(S203)。
具体的には、F−RBAC部006は以下の手順により検証する。
F−RBAC部006は、ユーザ情報管理部009のレスポンスより、S201で取得したユーザIDを持つユーザが存在するかどうか確認する。
該当するユーザが存在しない場合は認証不可とする。
また、該当するユーザが存在する場合、認証情報203から取得したパスワードが、ユーザ情報管理部009で管理されているパスワードと一致するかどうかを判定する。
パスワードが一致した場合は認証成功、一致しない場合は認証失敗とする。
F−RBAC部006は、S203において認証成功であった場合(S203でYES)は、処理受付部005から受信した操作内容204からユーザの操作対象となる業務ロジックの業務IDを取得し、アクセス権限管理部010に当該業務IDのロジックが紐付いているアクセス権限の一覧を取得する(S204)。
F−RBAC部006は、図3の操作内容204であれば、業務ID:L001に基づき、図5の権限ID:A001のレコードと、権限ID:A002のレコードを取得する。
次に、F−RBAC部006は、階層定義管理部012から現時点における階層順位の情報を取得する(S205)。
図7の例では、「ビル>テナント>組織」が記述された階層順位の情報を取得する。
F−RBAC部006は、ユーザ情報管理部009より取得したユーザ情報内のユーザの所属する組織の組織IDの情報を元に、組織情報管理部013からユーザの所属する組織の情報を取得する(S206)。
図3の操作要求201の場合は、ユーザID:U001であるため、図4から、対象となるユーザAが所属する組織は、組織ID:ORG001の組織である。
次に、F−RBAC部006は、階層定義管理部012より取得した階層順位の情報と、組織情報管理部013から取得した組織の情報とを元に、より上位の階層に属するビル、テナント、組織の情報の取得を、上位階層の組織が存在しなくなるまで繰り返す(S207)。
S205で取得した階層順位が「ビル>テナント>組織」であるため、F−RBAC部006は、まず、組織の一つ上の階層であるテナント階層で組織ID:ORG001と対になっている階層要素を探す。
具体的には、F−RBAC部006は、図8のテナント・組織対応情報705を検索して、組織ID:ORG001と対になっているテナントID:T001を抽出する。
次に、F−RBAC部006は、階層順位「ビル>テナント>組織」より、テナントの1つの上の階層であるビル階層でテナントID:T001と対になっている階層要素を探す。
具体的には、F−RBAC部006は、図8のビル・テナント対応情報704を検索して、テナントID:T001と対になっているビルID:B001を抽出する。
次に、F−RBAC部006は、ロール割当管理部011から、S204で取得したアクセス権限とS206、S207で取得した組織、テナント、ビルと合致するロール割当情報を取得する(S208)。
図6の例では、F−RBAC部006は、ロール割当ID:R001のレコードと、ロール割当ID:R002のレコードを取得する。
次に、F−RBAC部006は、S208において取得したロール割当が存在するかどうか判定する(S209)。
なお、組織については上位階層から順に割当があるかどうか確認を行う。
F−RBAC部006は、S209で割当が存在していた場合、認証成功と判断し処理受付部005に対して成功のレスポンスを返す(S210)。
図3の操作要求201では、データ参照が要求されているため、図6の「ロール名称:ビル業務ロジックA参照のみ可能」に合致し、F−RBAC部006は、処理受付部005に成功のレスポンスを返す。
S203で認証失敗もしくはS209でロールの割当が存在しなかった場合は、F−RBAC部006は、認証失敗と判断し、処理受付部005に失敗のレスポンスを返す(S211)。
図13のフローチャートを参照して、業務ロジック部007の動作を説明する。
業務ロジック部007は、処理受付部005から受信した操作内容204から、業務ロジック部007内のどの業務ロジック内の操作が指定されているかを判定し、内部の業務ロジックへ操作内容を受け渡す(S301)。
なお、以下では、図9の業務ロジック部A801が指定されたものとして動作を説明する。
業務ロジック部A801は、S301で業務ロジック部007より受信した操作内容を元に業務ロジック情報管理部008内の業務ロジックA情報管理部901で扱う情報を参照・更新しながら操作を行う(S302)。
業務ロジック部A801は、S302を実施した結果について業務ロジック部007経由で処理受付部005へレスポンスを返却する(S303)。
次に、アクセス制御装置の管理者(以下、システムユーザ)が、アクセス制御装置004の階層構造を変更する際の動作について説明する。
図14は、アクセス制御装置004の階層構造を変更する際に、システムユーザが端末000を用いてアクセス制御装置004に対して送信するリクエストである階層構造変更要求の一例を示す。
アクセス制御装置004を管理するシステムユーザは、端末000のWebブラウザ000aを用いてアクセス制御装置004に階層構造変更要求1301を送信する。
階層構造変更要求1301は、図7の階層定義情報601内の階層順位を変更することを要求するリクエストである。
アクセス制御装置004では、処理受付部005が階層構造変更要求1301を受信し、F−RBAC部006がシステムユーザの認証を実施した後に、F−RBAC部006は階層定義情報601内の階層順位を変更する。
なお、処理受付部005の動作、F−RBAC部006の認証までの動作は前述のS101〜S105、S201〜S203と同様である。
階層順位の変更後、処理受付部005が端末000に対してレスポンスを返却する。
図15のフローチャートを参照して、階層構造定義変更の際のF−RBAC部006の動作を説明する。
F−RBAC部006は、処理受付部005より受信した階層構造変更要求1301から、階層構造の変更情報が記載されている操作内容1304を取得する(S401)。
次に、F−RBAC部006は、S401で取得した操作内容1304について、階層定義管理部012へ階層構造定義の変更要求を出す(S402)。
階層定義管理部012は、S402で受け取った要求に沿って、例えば図7の階層定義情報601を図16の階層定義情報602に変更する。
図16では、新たな階層順位として「テナント>ビル>組織」が定義されている。
また、変更前の階層順位「ビル>テナント>組織」は、有効期限とともに階層定義情報602に保持される。
F−RBAC部006は、階層定義管理部012の処理が完了した後に、処理受付部005に対し操作結果を返却する(S403)。
また、以上の手順により階層定義情報の階層順位が変更された後に操作要求201を受信した場合は、F−RBAC部006は、変更後の階層順位に基づいて図12の処理を行う。
以上の動作により、システム内で管理する組織の階層構造が時間の経過とともに変更する場合でも、有効期限を持つ階層構造定義を持つことにより、階層構造の定義の変更に合わせて、階層構造定義のみを変更することが可能である。
また、階層構造が有効期限を持つことにより、指定した時刻での階層構造を再現することが可能である。
また、アクセス権限の割当情報の更新が不要となりシステムで管理するデータの変更を最小限にとどめ、かつシステムで保持する過去のログ情報も含めたデータ量を最小限にとどめることができる。
なお、図11の説明では、上位階層に向かう方向で階層要素を検索した(S207)が、これに代えて、下位階層に向かう方向で階層要素を検索するようにしてもよい。
以上、本実施の形態では、
ロールと、複数の個人及び組織とロールとの対応関係を示すロール割当情報を管理するロール割当管理部と、
組織階層の構造及び階層構造の有効期間を管理する階層定義管理部と、
ロール割当管理部と階層定義管理部が持つ階層構造定義を元に組織階層構造を解釈しながら上位から順に階層を辿っていき、ロール割当対象とシステムを利用するユーザの所属する組織階層位置とを比較し、システムで管理する情報へのアクセス権限やシステムの利用権限が保持されているかどうかを判定するアクセス制御部を備えたテナントアクセス制御装置、方式、及びプログラムを説明した。
また、本実施の形態では、
組織の階層構造を任意時刻に変更する際に、階層構造の有効期限を変更することで、システム内の階層構造の変更を実現するアクセス制御部を備えたテナントアクセス制御装置、方式、及びプログラムを説明した。
また、本実施の形態では、
システム内のアプリケーションごとのアクセス可否を管理するアクセス権限管理部を備え、
個人がシステム内のアプリケーションを利用する際に、アクセス権限管理部のアクセス可否の情報を元にアクセス可否を判断するアクセス制御部を備えた、テナントアクセス制御装置、方式、及びプログラムを説明した。
実施の形態2.
本実施の形態では、実施の形態1との相違点を述べる。
以下で説明している以外の動作、構成は、実施の形態1と同じである。
図17は、本実施の形態に係る階層定義管理部012の階層定義情報610を示す。
図17の階層定義情報610では、図7の階層定義情報601と比較して、属性として業務IDのように業務ロジックに対応する情報が付加されている。
本実施の形態では、図17に示すように、業務ロジックごとに階層構造を変更できるようにしている。
つまり、本実施の形態に係る階層定義情報610では、業務ロジック(アクセス制限リソース)ごとに、階層順位が定義されている。
図18は、本実施の形態に係る業務ロジック情報管理部008の業務ロジック定義910を示す。
図10と異なり、図18では、業務ロジックごとに業務IDを割り振っている。
ユーザが端末を用いて業務ロジックの操作要求201を送信した場合に、図12のS205において、階層順位を取得する際に、F−RBAC部006は、操作要求201中から業務IDを取得し、取得した業務IDに対応する階層順位を取得し、取得した階層順位を、以後のアクセス権限有無の判定に用いる。
このような構成にすることで、実施の形態1と同様の効果が得られると同時に、アプリケーションごとに用いる階層構造定義を切り替えることができる。
このため、様々なアプリケーションを一つのシステムに集約しつつ、共通のロジックが利用できるため、集約度が高くなる効果が得られる。
以上、本実施の形態では、
システム内のアプリケーションごとの組織の階層構造を持つ階層定義管理部を備え、
個人がシステム内のアプリケーションを利用する際に階層定義管理部によりアプリケーションごとに組織階層構造を切り替えてアクセス可否を判断するアクセス制御部を備えたテナントアクセス制御装置、方式、及びプログラムを説明した。
最後に、実施の形態1及び2に示したアクセス制御装置004のハードウェア構成例を図20を参照して説明する。
アクセス制御装置004はコンピュータであり、アクセス制御装置004の各要素をプログラムで実現することができる。
アクセス制御装置004のハードウェア構成としては、バスに、演算装置1901、外部記憶装置1902、主記憶装置1903、通信装置1904、入出力装置1905が接続されている。
演算装置1901は、プログラムを実行するCPU(Central Processing Unit)である。
外部記憶装置1902は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置1903は、RAM(Random Access Memory)である。
図2に示した「〜管理部」は、外部記憶装置1902又は主記憶装置1903により実現される。
通信装置1904は、処理受付部005の物理層に対応する。
入出力装置1905は、例えばマウス、キーボード、ディスプレイ装置等である。
プログラムは、通常は外部記憶装置1902に記憶されており、主記憶装置1903にロードされた状態で、順次演算装置1901に読み込まれ、実行される。
プログラムは、図2に示す「〜部」(但し、「〜管理部」を除く。以下も同様)として説明している機能を実現するプログラムである。
更に、外部記憶装置1902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置1903にロードされ、演算装置1901はOSを実行しながら、図に示す「〜部」の機能を実現するプログラムを実行する。
また、実施の形態1及び2の説明において、「〜の判断」、「〜の判定」、「〜の判別」、「〜の抽出」、「〜の照合」、「〜の取得」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の生成」、「〜の受信」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置1903にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置1903にファイルとして記憶されてもよい。
なお、図20の構成は、あくまでもアクセス制御装置004のハードウェア構成の一例を示すものであり、アクセス制御装置004のハードウェア構成は図20に記載の構成に限らず、他の構成であってもよい。
また、実施の形態1及び2に示す手順により、本発明に係るアクセス制御方法を実現可能である。
000 端末、001 端末、002 端末、003 ネットワーク、004 アクセス制御装置、005 処理受付部、006 F−RBAC部、007 業務ロジック部、008 業務ロジック情報管理部、009 ユーザ情報管理部、010 アクセス権限管理部、011 ロール割当管理部、012 階層定義管理部、013 組織情報管理部。

Claims (8)

  1. 複数の階層で構成される階層構造における階層間の順位が示される階層順位情報を記憶する階層順位情報記憶部と、
    階層を構成する要素である階層要素の対であって、異なる二つの階層に属する互いに関連する階層要素の対が、階層の組合せごとに示される階層要素情報を記憶する階層要素情報記憶部と、
    アクセスが制限されるアクセス制限リソースへのアクセスを許可する条件であるアクセス許可条件が特定の階層要素に対応付けて示されるアクセス許可条件情報を記憶するアクセス許可条件情報記憶部と、
    いずれかの階層要素と対応付けられているユーザからの、アクセス制限リソースへのアクセスを要求するアクセス要求を受信するアクセス要求受信部と、
    前記ユーザと対応付けられている階層要素を判別するとともに、前記階層順位情報に示される階層間の順位に基づき、判別した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出し、抽出した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出する動作を特定の階層に到達するまで繰り返す階層要素抽出部と、
    前記階層要素抽出部により判別された階層要素及び抽出された階層要素と前記アクセス許可条件情報に示される前記特定の階層要素とを照合して、前記アクセス要求に対して前記アクセス制限リソースへのアクセスを許可するか否かを判定するアクセス許否判定部とを有することを特徴とするアクセス制御装置。
  2. 前記階層要素情報記憶部は、
    異なる二つの階層に属する上下関係にある階層要素の対が、いずれの階層要素が上位でいずれの階層要素が下位であるかの定義を含まずに、階層の組合せごとに示される階層要素情報を記憶していることを特徴とする請求項1に記載のアクセス制御装置。
  3. 前記アクセス制御装置は、更に、
    前記階層順位情報の階層間の順位を変更する階層順位変更部を有し、
    前記階層要素抽出部は、
    前記階層順位変更部により前記階層順位情報の階層間の順位が変更された後に受信されたアクセス要求に対しては、変更後の階層間の順位に基づき、階層要素を抽出することを特徴とする請求項1に記載のアクセス制御装置。
  4. 前記階層順位変更部は、
    前記階層順位情報の階層間の順位を変更する場合に、変更前の階層間の順位を、有効期限とともに前記階層順位情報記憶部に保持させておくことを特徴とする請求項3に記載のアクセス制御装置。
  5. 前記アクセス許可条件情報記憶部は、
    アクセス許可条件が特定のユーザに対応付けて示されるアクセス許可条件情報を記憶し、
    前記アクセス許否判定部は、
    前記アクセス要求の送信元のユーザが、前記アクセス許可条件情報に示される前記特定のユーザに該当するか否かを判断して、前記アクセス要求に対して前記アクセス制限リソースへのアクセスを許可するか否かを判定することを特徴とする請求項1に記載のアクセス制御装置。
  6. 前記アクセス制御装置は、
    複数のアクセス制限リソースについてのアクセス制御を行っており、
    前記階層順位情報記憶部は、
    各アクセス制限リソースに対して、階層順位情報を記憶しており、
    前記アクセス要求受信部は、
    いずれかのアクセス制限リソースへのアクセスを要求するアクセス要求を受信し、
    前記階層要素抽出部は、
    前記アクセス要求でアクセスが要求されているアクセス制限リソースに対する階層順位情報に示される階層間の順位に基づき、階層要素を抽出することを特徴とする請求項1に記載のアクセス制御装置。
  7. 複数の階層で構成される階層構造における階層間の順位が示される階層順位情報を、コンピュータが記憶領域から読み出し、
    階層を構成する要素である階層要素の対であって、異なる二つの階層に属する互いに関連する階層要素の対が、階層の組合せごとに示される階層要素情報を、前記コンピュータが前記記憶領域から読み出し、
    アクセスが制限されるアクセス制限リソースへのアクセスを許可する条件であるアクセス許可条件が特定の階層要素に対応付けて示されるアクセス許可条件情報を、前記コンピュータが前記記憶領域から読み出し、
    いずれかの階層要素と対応付けられているユーザからの、アクセス制限リソースへのアクセスを要求するアクセス要求を前記コンピュータが受信し、
    前記コンピュータが、前記ユーザと対応付けられている階層要素を判別するとともに、前記階層順位情報に示される階層間の順位に基づき、判別した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出し、抽出した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出する動作を特定の階層に到達するまで繰り返し、
    前記コンピュータが、判別された階層要素及び抽出された階層要素と前記アクセス許可条件情報に示される前記特定の階層要素とを照合して、前記アクセス要求に対して前記アクセス制限リソースへのアクセスを許可するか否かを判定することを特徴とするアクセス制御方法。
  8. 複数の階層で構成される階層構造における階層間の順位が示される階層順位情報を、記憶領域から読み出す階層順位情報読み出し処理と、
    階層を構成する要素である階層要素の対であって、異なる二つの階層に属する互いに関連する階層要素の対が、階層の組合せごとに示される階層要素情報を、前記記憶領域から読み出す階層要素情報読み出し処理と、
    アクセスが制限されるアクセス制限リソースへのアクセスを許可する条件であるアクセス許可条件が特定の階層要素に対応付けて示されるアクセス許可条件情報を、前記記憶領域から読み出すアクセス許可条件情報読み出し処理と、
    いずれかの階層要素と対応付けられているユーザからの、アクセス制限リソースへのアクセスを要求するアクセス要求を受信するアクセス要求受信処理と、
    前記ユーザと対応付けられている階層要素を判別するとともに、前記階層順位情報に示される階層間の順位に基づき、判別した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出し、抽出した階層要素と対になっている一つ上の階層の階層要素又は一つ下の階層の階層要素を前記階層要素情報から抽出する動作を特定の階層に到達するまで繰り返す階層要素抽出処理と、
    前記階層要素抽出処理により判別された階層要素及び抽出された階層要素と前記アクセス許可条件情報に示される前記特定の階層要素とを照合して、前記アクセス要求に対して前記アクセス制限リソースへのアクセスを許可するか否かを判定するアクセス許否判定処理とをコンピュータに実行させることを特徴とするプログラム。
JP2015518114A 2013-05-23 2014-02-07 アクセス制御装置及びアクセス制御方法及びプログラム Expired - Fee Related JP5980421B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013108925 2013-05-23
JP2013108925 2013-05-23
PCT/JP2014/052851 WO2014188743A1 (ja) 2013-05-23 2014-02-07 アクセス制御装置及びアクセス制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP5980421B2 true JP5980421B2 (ja) 2016-08-31
JPWO2014188743A1 JPWO2014188743A1 (ja) 2017-02-23

Family

ID=51933310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015518114A Expired - Fee Related JP5980421B2 (ja) 2013-05-23 2014-02-07 アクセス制御装置及びアクセス制御方法及びプログラム

Country Status (3)

Country Link
JP (1) JP5980421B2 (ja)
CN (1) CN105229662B (ja)
WO (1) WO2014188743A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7107745B2 (ja) * 2018-05-24 2022-07-27 清水建設株式会社 設備利用状況公開システム、設備利用状況公開方法およびプログラム
CN111988173B (zh) * 2020-08-19 2023-09-12 北京安瑞志远科技有限公司 基于多层父子结构租户的租户管理平台和租户管理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007172154A (ja) * 2005-12-20 2007-07-05 Mitsubishi Space Software Kk アクセス制御装置及びアクセス制御方法及びアクセス制御プログラム
JP2008210376A (ja) * 2007-02-01 2008-09-11 Hitachi Software Eng Co Ltd 組織階層定義システム、グループ階層の構成方法、及び組織階層の表示方法
JP2011076569A (ja) * 2009-10-02 2011-04-14 Ariel Networks Co Ltd アクセス権管理装置およびアクセス権管理プログラム
US20110213789A1 (en) * 2010-02-26 2011-09-01 Salesforce.Com, Inc. System, method and computer program product for determining an amount of access to data, based on a role

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3956149B2 (ja) * 2005-12-19 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション リソース・コンテンツのアクセス制御方法、システム、およびプログラム
US8990900B2 (en) * 2010-06-23 2015-03-24 Hewlett-Packard Development Company, L.P. Authorization control

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007172154A (ja) * 2005-12-20 2007-07-05 Mitsubishi Space Software Kk アクセス制御装置及びアクセス制御方法及びアクセス制御プログラム
JP2008210376A (ja) * 2007-02-01 2008-09-11 Hitachi Software Eng Co Ltd 組織階層定義システム、グループ階層の構成方法、及び組織階層の表示方法
JP2011076569A (ja) * 2009-10-02 2011-04-14 Ariel Networks Co Ltd アクセス権管理装置およびアクセス権管理プログラム
US20110213789A1 (en) * 2010-02-26 2011-09-01 Salesforce.Com, Inc. System, method and computer program product for determining an amount of access to data, based on a role

Also Published As

Publication number Publication date
CN105229662B (zh) 2018-02-02
CN105229662A (zh) 2016-01-06
JPWO2014188743A1 (ja) 2017-02-23
WO2014188743A1 (ja) 2014-11-27

Similar Documents

Publication Publication Date Title
US10855790B2 (en) Servicing asset requests via proxy
CN115335827B (zh) 用于实现基于角色的访问控制聚类机器学习模型执行模块的方法和装置
CA2998685C (en) Transmission of tags and policies with data objects
US9514324B1 (en) Approaches for restricting access to data
Ananthakrishnan et al. Globus platform‐as‐a‐service for collaborative science applications
JP5623271B2 (ja) 情報処理装置、権限管理方法、プログラムおよび記録媒体
US20220058285A1 (en) Systems and methods for computer-implemented data trusts
Chard et al. Globus Nexus: A platform-as-a-service provider of research identity, profile, and group management
EP2715971B1 (en) Automating cloud service reconnections
US11539707B2 (en) Dynamic security policy consolidation
Jin et al. Role and attribute based collaborative administration of intra-tenant cloud iaas
US11233787B2 (en) Automated on call and ad hoc access to restricted resources
CA3224565A1 (en) Multi-platform application integration & data synchronization
JP5980421B2 (ja) アクセス制御装置及びアクセス制御方法及びプログラム
JP2012137995A (ja) リソース提供システム、アクセス制御プログラム及びアクセス制御方法
WO2015045048A1 (ja) アプリデータ記憶領域生成方法,アプリデータ記憶領域生成装置,及びアプリデータ記憶領域生成プログラム
Costa et al. Attribute based access control in federated clouds: A case study in bionformatics
JP6690186B2 (ja) サービス提供システム、サービス提供方法、情報処理装置及びプログラム
US20240168972A1 (en) Data Distribution and Access within a Multi-Zone Computing Platform
Wang et al. Research on WAN Data Management System Based on Internet of Things
JP2021051461A (ja) システム実行支援方法および装置
CN116414811A (zh) 通过和围绕数据目录到已注册数据源的受管理的数据库连通性(gdbc)
Raja et al. Comprehensive and Coordinated Security of Knox gateway in Big Data
Sood et al. A REVIEW ON ANALYSIS OF DIFFERENT CLOUD SERVERS ON THE BASIS OF A SOPHISTICATED JOB SCHEDULING APPROACH
Copeland et al. Azure Real-World Scenarios

Legal Events

Date Code Title Description
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: 20160628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160726

R150 Certificate of patent or registration of utility model

Ref document number: 5980421

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

LAPS Cancellation because of no payment of annual fees