JP2021149479A - サービス提供システム、情報処理システム、及び、ユーザー作成方法 - Google Patents

サービス提供システム、情報処理システム、及び、ユーザー作成方法 Download PDF

Info

Publication number
JP2021149479A
JP2021149479A JP2020048477A JP2020048477A JP2021149479A JP 2021149479 A JP2021149479 A JP 2021149479A JP 2020048477 A JP2020048477 A JP 2020048477A JP 2020048477 A JP2020048477 A JP 2020048477A JP 2021149479 A JP2021149479 A JP 2021149479A
Authority
JP
Japan
Prior art keywords
tenant
user
terminal device
unit
information processing
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
Application number
JP2020048477A
Other languages
English (en)
Other versions
JP7456217B2 (ja
Inventor
康治 福田
Koji Fukuda
康治 福田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2020048477A priority Critical patent/JP7456217B2/ja
Priority to EP21160303.0A priority patent/EP3882770A1/en
Priority to US17/193,297 priority patent/US11330082B2/en
Publication of JP2021149479A publication Critical patent/JP2021149479A/ja
Application granted granted Critical
Publication of JP7456217B2 publication Critical patent/JP7456217B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • 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/604Tools and structures for managing or administering access control systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】第二のテナントに所属する第二のユーザーを作成することができる情報処理システムを提供する。【解決手段】テナントに所属するユーザーにサービスを提供するサービス提供システム1において、情報処理システムは、システム第一のユーザーが所属する第一のテナントとは異なる第二のテナントの管理を端末装置から要求された場合、第二のテナントに所属する第二のユーザーを作成し、第一のユーザーが操作する端末装置が第二のテナントと通信することを許可する。【選択図】図2

Description

本発明は、サービス提供システム、情報処理システム、及び、ユーザー作成方法に関する。
アプリケーションを使ったサービスをネットワーク経由でユーザーに提供する情報処理システムが知られている。ユーザーはPC(パーソナルコンピュータ)などの端末装置や電子機器と、これらで動作するWebブラウザなど、一定の環境を用意することで、端末装置や電子機器から情報処理システムが提供するWebアプリなどで提供されるサービスを利用することができる。
このような情報処理システムが提供するサービスを、企業などが組織として契約し、組織の所属者等がユーザーとしてサービスを利用する場合がある。サービスを契約した組織等は、テナントと呼ばれる単位で管理される。ユーザー(企業等の社員)がサービスを利用するにはテナントに登録される必要があり、例えばテナント管理者がユーザーをテナントに登録する場合がある。
したがって複数のテナントが契約内容に応じて情報処理システムから種々のサービスの提供を受けることができる。このようなシステムをマルチテナントシステムという。各テナントは基本的に独立しているが、一方のテナントを管理する管理者が、他方のテナントを管理する技術が考案されている(例えば、特許文献1参照。)。特許文献1には、ユーザーの属する第一のテナントのライセンスの種別と、ユーザーの権限とに基づいて、ユーザーによる第二のテナントに関するデータの変更の可否を判断するマルチテナントシステムが開示されている。
しかしながら、従来のシステムでは、第二のテナントに所属する第二のユーザーを作成することが容易でないという問題があった。まず、情報処理システムは、テナント間のアクセス制御を利用しなければ、第一のテナントのユーザーの第二のテナントへのアクセスを制御できない。テナント間のアクセス制御を利用する方法の1つとして例えば、第一のテナントが第二のテナントに対して優位にあるという情報を利用する方法がある。しかし、テナント間のアクセス制御の仕組みを採用すると開発が複雑になるという不都合がある。
また、従来のシステムでは、第一のテナントのユーザーが第二のテナントにアクセスできたとしても、このユーザーが第二のテナントで利用できるアプリケーションを利用できるとは限らないという問題があった。すなわち、第二のテナントで利用できるアプリケーションの利用権限を、通常、第一のテナントのユーザーは保持していない。このため、第一のテナントのユーザーが第二のテナントで利用できるアプリケーションを利用するには、アプリケーション側が第一のテナントのユーザーによる利用を許可する機能や仕組みを持っている必要がある。このような機能や仕組みはアプリケーションの開発コストを増大させるという不都合がある。
本発明は、上記課題に鑑み、第二のテナントに所属する第二のユーザーを作成することができる情報処理システムを提供することを目的とする。
上記課題に鑑み、本発明は、テナントに所属するユーザーにサービスを提供するサービス提供システムであって、第一のユーザーが所属する第一のテナントとは異なる第二のテナントの管理を端末装置から要求された場合、前記第二のテナントに所属する第二のユーザーを作成するユーザー作成部を有する、ことを特徴とする。
第二のテナントに所属する第二のユーザーを作成することができる情報処理システムを提供することができる。
テナント間を跨いでユーザーがアプリケーションを利用する利用方法を説明する図である。 本実施形態に係るサービス提供システムの一例の構成図である。 コンピュータの一例のハードウェア構成図である。 画像形成装置の一例のハードウェア構成図である。 第一の端末装置、第三の端末装置、電子機器、及び、情報処理システムの機能をブロック状に分けて説明する機能ブロック図の一例である。 テナントデータ記憶部、ユーザーデータ記憶部、セッションデータ記憶部、アプリデータ記憶部、Webブラウザが保持している情報の一例を示す図である。 業務担当者のログイン、仮想ユーザーの作成、及び、アプリ等の設定の処理を説明するシーケンス図の一例である。 第三の端末装置が表示するログイン画面の一例を示す図である。 第三の端末装置が表示するテナント管理画面の一例を示す図である。 アプリ設定画面の一例を示す図である。 アクセス制御部の判断部が、仮想ユーザーの作成を許可するかどうかを判断する処理を説明するフローチャート図の一例である。 仮想ユーザーに関する情報をアクセス制御部が削除する手順を示すシーケンス図の一例である。
以下、本発明を実施するための形態の一例として、サービス提供システムとサービス提供システムが行うユーザー作成方法について説明する。
<文字列の修正の概略>
まず、本実施形態を説明するにあたって、参考になる比較例と共に説明する。なお、比較例は従来技術や公知技術とは限らないことに注意されたい。
図1は、テナント間を跨いでユーザーがアプリケーションを利用する利用方法を説明する図である。図1(a)は比較例を示し、図1(b)は本実施形態の利用方法を示す。まず、テナント間を跨いでユーザーがアプリケーションを利用する状況の一例を説明する。テナント間を跨ぐとは、独立しているテナント間において、一方のテナントのユーザーが他方のテナントにアクセスすることをいう。
例えば、テナントAが顧客にサービスを提供する業務担当者G(第一のユーザーの一例)が所属するテナントであり、テナントBが一般の顧客のユーザーが所属するテナントであるとする。テナントBにはテナント管理者がいるが、テナントBの管理(アプリケーション等に関する設定等)をテナントAの業務担当者Gが行えれば、テナントBのテナント管理者の負担が低減される。したがって、テナントAの業務担当者GがテナントBのテナント管理者と同等の権限でテナントBにアクセスできれば便利である。業務担当者Gがテナント管理者の代わりに行う管理としては、テナント作成、初期設定、又は、アプリケーション等の設定等がある。このように業務担当者Gがテナント管理者の代わりに設定等を行うことを代行という。
比較例について説明する。業務担当者GはテナントAに所属しており、テナントAにはログインできるが、テナントBにログインする権限を有していない。このため、業務担当者GがテナントBで利用できるアプリを利用するためには、上記のように、テナントAがテナントBよりも優位であることを利用したテナント間のアクセス制御を利用する。そして、更に、テナントBで利用できるアプリケーションも他のテナントAのユーザーによる利用が可能な機能や仕組みを有していなければならなかった。
次に、本実施形態におけるテナント間を跨いだアプリケーションの利用方法を説明する。本実施形態では、テナントAにログインした業務担当者Gに権限があれば、情報処理システムがテナントB内にテナントBを管理できる(アプリケーションも利用できる)仮想ユーザーVを作成する。仮想ユーザーV(第二のユーザーの一例)はテナントBのユーザーとして登録されるので、仮想ユーザーVはテナントBで利用できるアプリケーションを利用できる。
このような方法では、テナント間のアクセス制御が不要であり、アプリケーションも従来通り、同一テナント(この場合はテナントB)からのアクセスだけを許可すればよい。業務担当者GがテナントBのアプリケーションを操作する時点では、テナントBのユーザーとしてログインした状態となるので、テナント間のアクセス制御やアプリケーションが他のテナントのユーザーによる利用に対応していなくても、テナントを跨いたアプリケーションの操作が可能になる。
なお、図1ではテナントAが、業務担当者Gが所属するテナントであると説明したが、テナントAは一般の顧客が所属するテナントであっても、仮想ユーザーを作成できてよい。
<用語について>
テナントとは、複数の顧客で同じソフトウェアを共有する顧客、即ち、顧客の集合である企業等を示す情報のことを意味する。企業等はサービス提供者とサービスの提供に関して契約することでテナントになる。
テナント管理者はテナントに所属するユーザーのロールの1つである。例えば、企業内のシステム管理者が兼ねることができる。テナント管理者はテナントに所属するユーザーを登録することができ、アプリケーションの利用権限を各ユーザーに割り当てること等、各種の設定を行うことができる。
ロールとは、テナント内における役割である。ロールにはロールに応じた権限が認められる。例えばテナント管理者がユーザーの職種、役職、アプリをどのように利用するかなどを考慮して決定する。
アプリケーションとは、ユーザーがサービスを受けるために端末装置と情報処理システムとが実行するプログラムである。端末装置と情報処理装置が協調して実行するプログラムをWebアプリともいう。アプリケーションは、例えば一連の処理を順番に実行するワークフローアプリの場合がある。アプリケーションは、テナント管理者等がコンポーネントを組み合わせて構築できる。例えば、原稿の読み取りコンポーネント、クラウドへの送信コンポーネント、などを組み合わせて、電子機器10が読み取った原稿をクラウド上のストレージにアップロードして保存するアプリケーションを構築できる。本実施形態では、アプリケーションを単にアプリという場合がある。
業務担当者は、サービス提供者側のユーザーであり、テナントにサービス提供システムの販売を行った者、又は、販売後に管理等を行う者である。営業担当者やディーラーと称してもよい。
<システム構成例>
図2は本実施形態に係るサービス提供システム1の一例の構成図である。図2のサービス提供システム1は、顧客環境8とサービス提供者環境7がインターネットなどのネットワークN1を介して情報処理システム50と接続されている。ネットワークN1には携帯電話網などの電話回線も含まれる。
顧客は情報処理システム50によって提供されるサービスの顧客であって、企業、団体、教育機関、行政機関や部署などの組織が含まれる。これら顧客と何らかの雇用関係にあるものが、テナントにおけるユーザーとなりうる。顧客環境8には1台以上の電子機器10と、第一の端末装置20と、第二の端末装置30と、ファイヤウォール16と、がLANなどのネットワークN2を介して接続されている。また、情報処理システム50はネットワークN1に接続されている1台以上の情報処理装置49を有する。サービス提供者は顧客にサービスを提供する業者である。サービス提供者環境7には第三の端末装置40が存在する。
電子機器10は、例えば画像形成装置10aであるが、画像形成装置10aにはレーザプリンタ、複合機(マルチファンクションプリンタ)、MFP(Multi−function Peripheral/Product/Printer)なども含まれる。また、電子機器10としては電子黒板10bも挙げられる。この他、電子機器10は、例えば、PJ(Projector:プロジェクタ)、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車(Connected Car)、ノートPC、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC又はデスクトップPC等であってもよい。
本実施形態の電子機器10は、情報処理システム50に登録されたユーザーがサービスを利用する端末となる。ユーザーは、電子機器10から情報処理システム50にログインして、ユーザーに利用権限が認められているアプリ(アプリケーションソフト)を選択して、情報処理システム50が提供するサービスを受ける。このように、サービスはアプリ単位で提供される。
第一の端末装置20は、テナント管理者が利用するスマートフォンや携帯電話、タブレットPC、デスクトップPC、ノートPC、等の情報処理装置である。第一の端末装置20には、Webブラウザなどの画面表示機能を有するプログラムが搭載されている。このプログラムは情報処理装置から受信した画面情報を画面として表示する機能を有していればよくWebブラウザに限られない。情報処理システム50に専用のプログラムでもよい。
第二の端末装置30は、ユーザーが利用するスマートフォンや携帯電話、タブレットPC、デスクトップPC、ノートPC、等の情報処理装置である。第二の端末装置30には、Webブラウザなどの画面表示機能を有するプログラムが搭載されている。このプログラムは情報処理装置から受信した画面情報を画面として表示する機能を有していればよくWebブラウザに限られない。情報処理システム50に専用のプログラムでもよい。
第三の端末装置40は、業務担当者Gが利用するスマートフォンや携帯電話、タブレットPC、デスクトップPC、ノートPC、等の情報処理装置である。第三の端末装置40には、Webブラウザなどの画面表示機能を有するプログラムが搭載されている。このプログラムは情報処理装置から受信した画面情報を画面として表示する機能を有していればよくWebブラウザに限られない。情報処理システム50に専用のプログラムでもよい。
ファイヤウォール16は顧客環境8への外部からの侵入を防ぐための装置であり、顧客環境8からの全ての通信はファイヤウォール16により監視される。ただし、第一の端末装置20、第二の端末装置30又は第三の端末装置40が携帯電話網などの電話回線を介して情報処理システム50と通信する場合はこの限りでない。
情報処理システム50は、各種のサービスを電子機器10及び第二の端末装置30等に提供する。サービスは電子機器10の種類によって様々であるが、画像形成装置10aの場合は、読み取った原稿をクラウド上のストレージにアップロードして保存するサービス、クラウド上のストレージの画像データをダウンロードして印刷するサービスなどがあるが、これらに限られない。電子黒板10bの場合は、例えばリアルタイムに音声認識して議事録の作成するサービス、手書きデータをテキスト化するサービスなどがある。第二の端末装置30の場合は、例えばWebページのリアルタイム翻訳サービスなどがある。
情報処理システム50では、テナントとユーザーが対応づけられている。ユーザーのロールに応じて使用できるサービス(アプリ)が決まっており、ユーザーは自分が使用できるアプリを電子機器10や第二の端末装置30から使用する。また、テナント、テナント管理者及びユーザーには以下のような関係がある。
・1顧客→1テナント(テナント管理者とユーザーが1つのテナントに所属する)
・1顧客→複数テナント(テナント管理者はテナントに所属するとは限らず、各テナントと所属するユーザーを管理する。ユーザーは1つ以上のテナントに所属する)
いずれの場合も情報処理システム50に登録されたユーザーはいずれかのテナントに所属するので、登録後はユーザーが特定されれば所属するテナントも特定される。1顧客→1テナントの場合、テナント管理者はテナントにログインすればテナントも自動的に定まる(テナントを指定しなくてよい)。1顧客→複数テナントの場合、テナント管理者がログイン時にテナントを指定するとよい(又はテナントごとに異なるアカウントを持っている)。
情報処理システム50は、第一の端末装置20、第二の端末装置30、第三の端末装置40、又は、電子機器10に表示させるWebページの画面情報を作成し、これらに送信する。例えば、後述する、ログイン画面、テナント管理画面、及び、アプリ設定画面等を表示させる。
画面情報は、HTML、XML、CSS(Cascade Style Sheet)、及びJavaScript(登録商標)等により作成される。WebページはWebアプリにより提供されてよい。Webアプリとは、Webブラウザ上で動作するプログラミング言語(たとえばJavaScript(登録商標))によるプログラムとWebサーバ側のプログラムが協調することによって動作し、Webブラウザ上で実行されるソフトウェア又はその仕組みを言う。WebアプリによりWebページを動的に変更できる。
なお、情報処理システム50は、クラウドコンピューティングに対応していてよい。クラウドコンピューティングとは、特定ハードウェア資源が意識されずにネットワーク上のリソースが利用される利用形態をいう。クラウドコンピューティングに対応した情報処理システム50をクラウドシステムという場合がある。クラウドシステムはインターネット上にあってもオンプレミスにあってもよい。
また、図2に示すサービス提供システム1の構成は一例であって、顧客環境と、情報処理装置との間に1つ以上のサーバ装置(プロキシサーバやゲートウェイサーバなど)が介在していてもよい。また、第一の端末装置20と第二の端末装置30は、顧客環境以外にあってもよく、例えばネットワークN1に接続されていてもよい。第三の端末装置40は、サービス提供者環境以外にあってもよく、例えばネットワークN1に接続されていてもよい。
情報処理システム50は、1台の情報処理装置49で実現してもよいし、複数台の情報処理装置49に分散して実現してもよい。例えば、サービスごとにこれを提供する情報処理装置49が存在してもよいし、1台の情報処理装置49が複数のサービスを提供してもよいし、複数の情報処理装置49で1つのサービスを提供してもよい。
また、図2の情報処理システム50は情報処理装置が顧客環境の外側のインターネットなどのネットワークN1に接続されている。言い換えれば図2の情報処理システム50は、情報処理システム50がクラウド環境に備えられた例である。しかし、情報処理システム50は顧客環境の内側(オンプレミス環境)に備えられていてもよい。
<ハードウェア構成例>
<<コンピュータ>>
図2の第一の端末装置20、第二の端末装置30、第三の端末装置40、又は、情報処理システム50は例えば図3に示すハードウェア構成のコンピュータにより実現される。図3はコンピュータの一例のハードウェア構成図である。図3のコンピュータ500はコンピュータによって構築されており、図3に示されているように、CPU501、ROM502、RAM503、HD504、HDDコントローラ505(Hard Disk Drive)、ディスプレイ506、外部機器接続I/F508(Interface)、ネットワークI/F509、バスライン510、キーボード511、ポインティングデバイス512、DVD−RWドライブ514(Digital Versatile Disk Rewritable)、メディアI/F516を備えている。
これらのうち、CPU501は、コンピュータ全体の動作を制御する。ROM502は、IPL等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F508は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F509は、通信ネットワークを利用してデータ通信をするためのインターフェースである。バスライン510は、図3に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
また、キーボード511は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。DVD−RWドライブ514は、着脱可能な記録媒体の一例としてのDVD−RW513に対する各種データの読み出し又は書き込みを制御する。なお、DVD−RWに限らず、DVD−R等であってもよい。メディアI/F516は、フラッシュメモリ等の記録メディア515に対するデータの読み出し又は書き込み(記憶)を制御する。
<<画像形成装置>>
図4は、画像形成装置10aの一例のハードウェア構成図である。図4に示されているように、画像形成装置10aは、コントローラ910、近距離通信回路920、エンジン制御部930、操作パネル940、ネットワークI/F950を備えている。
これらのうち、コントローラ910は、コンピュータの主要部であるCPU901、システムメモリ902(MEM−P)、ノースブリッジ903(NB)、サウスブリッジ904(SB)、ASIC906(Application Specific Integrated Circuit)、記憶部であるローカルメモリ907(MEM−C)、HDDコントローラ908、及び、記憶部であるHD909を有し、NB903とASIC906との間をAGPバス921(Accelerated Graphics Port)で接続した構成となっている。
これらのうち、CPU901は、画像形成装置10aの全体制御を行う制御部である。NB903は、CPU901と、MEM−P902、SB904、及びAGPバス921とを接続するためのブリッジであり、MEM−P902に対する読み書きなどを制御するメモリコントローラと、PCI(Peripheral Component Interconnect)マスタ及びAGPターゲットとを有する。
MEM−P902は、コントローラ910の各機能を実現させるプログラムやデータの格納用メモリであるROM902a、プログラムやデータの展開、及びメモリ印刷時の描画用メモリなどとして用いるRAM902bとからなる。なお、RAM902bに記憶されているプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、CD−R、DVD等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
SB904は、NB903とPCIデバイス、周辺デバイスとを接続するためのブリッジである。ASIC906は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGPバス921、PCIバス922、HDDコントローラ908及びMEM−C907をそれぞれ接続するブリッジの役割を有する。このASIC906は、PCIターゲット及びAGPマスタ、ASIC906の中核をなすアービタ(ARB)、MEM−C907を制御するメモリコントローラ、ハードウェアロジックなどにより画像データの回転などを行う複数のDMAC(Direct Memory Access Controller)、並びに、スキャナ部931及びプリンタ部932との間でPCIバス922を介したデータ転送を行うPCIユニットとからなる。なお、ASIC906には、USB(Universal Serial Bus)のインターフェースや、IEEE1394(Institute of Electrical and Electronics Engineers 1394)のインターフェースを接続するようにしてもよい。
MEM−C907は、コピー用画像バッファ及び符号バッファとして用いるローカルメモリである。HD909は、画像データの蓄積、印刷時に用いるフォントデータの蓄積、フォームの蓄積を行うためのストレージである。HD909は、CPU901の制御にしたがってHD909に対するデータの読出又は書込を制御する。AGPバス921は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレータカード用のバスインタフェースであり、MEM−P902に高スループットで直接アクセスすることにより、グラフィックスアクセラレータカードを高速にすることができる。
また、近距離通信回路920には、近距離通信回路アンテナ920aが備わっている。近距離通信回路920は、NFC、Bluetooth(登録商標)等の通信回路である。
更に、エンジン制御部930は、スキャナ部931及びプリンタ部932によって構成されている。また、操作パネル940は、現在の設定値や選択画面等を表示させ、操作者からの入力を受け付けるタッチパネル等のパネル表示部940a、並びに、濃度の設定条件などの画像形成に関する条件の設定値を受け付けるテンキー及びコピー開始指示を受け付けるスタートキー等からなるハードキー940bを備えている。コントローラ910は、画像形成装置10a全体の制御を行い、例えば、描画、通信、操作パネル940からの入力等を制御する。スキャナ部931又はプリンタ部932には、誤差拡散やガンマ変換などの画像処理部分が含まれている。
なお、画像形成装置10aは、操作パネル940のアプリケーション切り替えキーにより、ドキュメントボックス機能、コピー機能、プリンタ機能、及びファクシミリ機能を順次に切り替えて選択することが可能となる。ドキュメントボックス機能の選択時にはドキュメントボックスモードとなり、コピー機能の選択時にはコピーモードとなり、プリンタ機能の選択時にはプリンタモードとなり、ファクシミリモードの選択時にはファクシミリモードとなる。
また、ネットワークI/F950は、通信ネットワークを利用してデータ通信をするためのインターフェースである。近距離通信回路920及びネットワークI/F950は、PCIバス922を介して、ASIC906に電気的に接続されている。
<機能について>
本実施形態に係るサービス提供システム1が有する各装置の機能は例えば図5に示す機能ブロックにより実現される。図5は、第一の端末装置20、第三の端末装置40、電子機器10、及び、情報処理システム50の機能をブロック状に分けて説明する機能ブロック図の一例である。なお、第二の端末装置30の機能は第一の端末装置20又は第三の端末装置40と同様であるため省略した。
<<第一の端末装置>>
第一の端末装置20は第一通信部22、表示制御部23、操作受付部24、及び、記憶部25を有している。第一の端末装置20はプログラム(例えばWebブラウザ21)を実行することで、図5に示すような機能ブロックを実現する。
第一通信部22は情報処理システム50と通信して、種々の情報を送受信する。例えば、第一の端末装置20が表示するための画面情報を受信し、テナント管理者が画面に入力した情報を情報処理システム50に送信する。
表示制御部23は情報処理システム50から受信した画面の画面情報を解析してディスプレイ506に表示する。操作受付部24は第一の端末装置20に対するテナント管理者の操作を受け付ける。記憶部25は第一の端末装置20がデータを保存したり取得したりできる記憶手段である。例えばWebブラウザ21がアクセスできる記憶手段としてクッキーやローカルストレージが知られている。
<<第三の端末装置>>
第三の端末装置40は第三通信部42、表示制御部43、操作受付部44、及び、記憶部45を有している。第三の端末装置40はプログラム(例えばWebブラウザ31)を実行することで、図5に示すような機能ブロックを実現する。
第三通信部42は情報処理システム50と通信して、後述するログイン画面、テナント管理画面、及び、アプリ設定画面等を第三の端末装置40が表示するための画面情報を受信する。また、業務担当者Gがログイン画面、テナント管理画面、及び、アプリ設定画面に入力した情報を情報処理システム50に送信する。
表示制御部43は情報処理システム50から受信した画面の画面情報を解析してディスプレイ506に例えばログイン画面、テナント管理画面、及び、アプリ設定画面等を表示する。操作受付部34は第三の端末装置40に対する業務担当者Gの操作を受け付ける。記憶部45は第三の端末装置40がデータを保存したり取得したりできる記憶手段である。例えばWebブラウザ41がアクセスできる記憶手段としてクッキーやローカルストレージが知られている。
<<電子機器>>
電子機器10は第四通信部12、表示制御部13、操作受付部14、及び、記憶部15を有している。電子機器10はプログラム(例えばWebブラウザ11)を実行することで、図5に示すような機能ブロックを実現する。
第四通信部12は情報処理システム50と通信して、待ち受け画面、ランチャー画面、ログイン画面、及び、アプリ画面等を電子機器10が表示するための画面情報を受信する。また、ユーザーが待ち受け画面、ランチャー画面、ログイン画面、及び、アプリ画面に入力した情報を情報処理システム50に送信する。
表示制御部13は情報処理システム50から受信した画面の画面情報を解析して操作パネル940に例えば待ち受け画面、ランチャー画面、ログイン画面、及び、アプリ画面を表示する。操作受付部14は電子機器10に対するユーザーの操作(例えば、ランチャーの起動、認証情報の入力、アプリの選択、アプリに対する操作等)を受け付ける。記憶部15は電子機器10がデータを保存したり取得したりできる記憶手段である。例えばWebブラウザ11がアクセスできる記憶手段としてクッキーやローカルストレージが知られている。
<<情報処理システム>>
情報処理システム50は、共通機能部50a、アクセス制御部50b、業務管理部50c、及び、アプリ部50dを有している。それぞれは第五通信部52を介して第一の端末装置20、第三の端末装置40又は電子機器10と通信する。このように情報処理システム50は機能の実装の都合上、4つに構成が分けられている。したがって、それぞれが別々の情報処理装置49に実現されてもよいし、図5に示すように1つの情報処理装置49により実現されてもよい。
情報処理システム50が有する図示する機能は、図3に示したコンピュータ500が有するCPU501が、HD504からRAM503に展開されたプログラムを実行することで実現される機能又は手段である。また、情報処理システム50が有するテナントデータ記憶部63、ユーザーデータ記憶部64、セッションデータ記憶部65、及び、アプリデータ記憶部66は、図3に示したコンピュータ500が有するHD504からRAM503に構築される。
共通機能部50aは、アクセス制御部50b、業務管理部50c、及び、アプリ部50dから共通に利用されうるデータを管理している。共通機能部50aは、例えば、データ管理部53、テナントデータ記憶部63及びユーザーデータ記憶部64を有している。テナントデータ記憶部63及びユーザーデータ記憶部64については後述する。データ管理部53は保持している記憶部の全体又は一部を他のアクセス制御部50b、業務管理部50c、及び、アプリ部50dに提供する。
アクセス制御部50bは、ユーザーの認証、各種のID(識別情報)の管理、及び、これらを利用したユーザーのテナントへのアクセス制御を行う。なお、このユーザーには一般ユーザー、テナント管理者、及び、業務担当者Gが含まれる。
アクセス制御部50bは、認証部54、ユーザー作成部55、判断部56、及び、画面生成部57を有している。認証部54は、ユーザーIDとパスワードなどによりユーザーを認証する。認証とは認証要求した者が正当な権限者か否かを判断することをいう。本実施例の場合は、情報処理システム50を使用する権限があるかどうかであり、更に、後述するロールも判断できるようになっている。なお、認証の成功とは、業務担当者G、ユーザー又はテナント管理者が情報処理システム50にログインすることを許可することをいう。ログインとは、コンピュータやインターネット上の様々なサービスを利用する際に、予め登録しておいたアカウント情報を用いてシステムのリソースにアクセスする認証行為をいう。アカウント情報は、ユーザーIDとパスワード、ICカードの番号、又は、生体認証情報などである。
ユーザー作成部55は仮想ユーザーVを作成し、また、削除する。判断部56は各種の判断を行うものであり、例えば、仮想ユーザーVの作成を許可するか否かを判断する。画面生成部57は、第一の端末装置20、第三の端末装置40、又は、電子機器10に表示させるWebページの画面情報を作成する。
アクセス制御部50bは、テナントデータ記憶部63、ユーザーデータ記憶部64、及び、セッションデータ記憶部65を有している。テナントデータ記憶部63及びユーザーデータ記憶部64は共通機能部50aから取得したものである。セッションデータ記憶部65については後述する。
業務管理部50cは、業務担当者Gが行う業務に関するツールを提供する。このツールとは業務担当者Gが操作するWebページやWebアプリである。業務管理部50cは顧客情報管理部58と画面生成部59を有している。顧客情報管理部58はアクセス制御部50bからテナントデータ記憶部63、ユーザーデータ記憶部64、及び、セッションデータ記憶部65に記憶されている情報を取得する。画面生成部59は、アクセス制御部50bの画面生成部57と同様に、顧客情報管理部58が取得した情報を表示する画面情報を生成する。また、この画面に対し入力された情報があれば、顧客情報管理部58がアクセス制御部50bに送信してテナントデータ記憶部63、ユーザーデータ記憶部64及びセッションデータ記憶部65のデータを更新する。
アプリ部50dは、テナントに所属するユーザーやテナント管理者が使用するアプリケーションを管理している。アプリ部50dはアプリ制御部61と画面生成部62を有している。アプリ制御部61は、アプリデータ記憶部66からテナントに所属するユーザーが利用権限を有するアプリのリストを画面生成部62に提供する。また、ユーザーが選択したアプリをアプリデータ記憶部66から取得してアプリの実行を制御する。画面生成部62はアプリの選択画面や実行時にアプリが表示する画面の画面情報を生成する。
アプリ部50dはアプリデータ記憶部66を有している。アプリデータ記憶部66については後述する。
<各記憶部について>
続いて、図6を参照して、テナントデータ記憶部63、ユーザーデータ記憶部64、セッションデータ記憶部65、及び、アプリデータ記憶部66が保持している情報について説明する。
図6(a)はテナントデータ記憶部63が保持するテナントデータの一例を示す。テナントデータは、テナントIDに対応付けられたテナント名、親テナント、及び、代行依頼の項目を有している。
テナントID:テナントを識別する識別情報である。
テナント名:テナントの一般的な名称である。例えば、企業名、会社名、ブランド名である。
親テナント:まず、業務担当者Gが作るテナントが、顧客が所属するテナントである。このテナントを区別のため、「子テナント」という。一方、テナントを作成した業務担当者Gの所属するテナントを「親テナント」という。図6(a)ではtenantAの親テナントはParentAであり、tenantBの親テナントはParentBである。一方、ParentAとParentBは業務担当者Gが所属するテナント(業者A,業者B)なので、親テナントは存在しない。
代行依頼:業務担当者Gによる子テナントの管理(アプリケーションの設定等)を子テナントが許可しているか否かが登録される。本来、テナント内のアプリケーションの設定はテナント管理者が行うが、代行依頼が「依頼する」の場合は、業務担当者Gがテナント管理者を代行して子テナントを管理できる。なお、業務担当者Gが所属する親テナントについては親テナントが存在しないので、代行依頼の項目には何も設定されない。
図6(b)はユーザーデータ記憶部64に記憶されているユーザーデータの一例を示す。ユーザーデータは、ユーザーIDに対応付けられたテナントID、ロール、及び、仮想ユーザーVの項目を有している。
テナントID:テナントデータ記憶部63のテナントIDと同じものである。ユーザーが所属するテナントを示す。
ユーザーID:テナント内でユーザーを一意に識別するユーザーの識別情報である。
ロール:役割という意味であるが、テナント内におけるユーザーの権限を示す。例えば、Admin(テナント管理者)、User(一般ユーザー)等がある。なお、仮想ユーザーVのロールはAdminとなっている。これは、仮想ユーザーVはテナントの各種設定を行うので管理者権限を有することが好ましいためである。
仮想ユーザーV:そのユーザーがテナントに所属するユーザーなのか、業務担当者Gが子テナントを管理するために(アプリケーションの設定等をおこなうために)登録した一時的なユーザーなのかを示す。業務担当者Gが子テナントに一時的に所属した場合のユーザーを仮想ユーザーVと称している。表6(b)では、ユーザーID=a_virtual_001、b_virtual_001のユーザーは、仮想ユーザーVである。仮想ユーザーは、親テナントのユーザーが仮想ユーザーとしてログインしている間のみ有効なユーザーである。仮想ユーザーのログアウトにより削除される。
図6(c)はセッションデータ記憶部65に記憶されているセッションデータの一例を示す。セッションデータは、セッションIDに対応付けられたユーザーIDの項目を有している。
セッションID:セッションとは、ユーザー(一般ユーザー、テナント、業務担当者G)が情報処理システム50にログインし、ユーザーが使用する第一の端末装置20、第二の端末装置30、第三の端末装置40,又は、電子機器10との間で通信が確立した状態をいう。したがって、セッションIDは、情報処理システム50が通信を識別するための識別情報である。セッションIDは認証成功により重複しないように採番される。
ユーザーID:このセッションを開始したユーザーの識別情報である。
図6(d)はアプリデータ記憶部66に記憶されているアプリデータの一例を示す。アプリデータは、1つのアプリケーションについて各テナントで設定されているパラメータである。アプリデータは、テナントIDに対応付けられた印刷設定と外部ストレージの項目を有している。このアプリは外部ストレージから電子機器10が取得したファイルを印刷するというアプリである。このため、テナントごとに印刷設定や外部ストレージの設定が可能になっている。本実施形態では、仮想ユーザーVが例えば印刷設定や外部ストレージを代行して設定できる。なお、アプリデータはユーザーIDに対応付けられていてもよい(ユーザーごとに設定可能でもよい)。
図6(e)は第三の端末装置40が実行するWebブラウザが保持する端末側セッションデータを示す。図5に示したように、Webブラウザは専用の記憶部15、25、35,45を有している。例えば、クッキーやローカルストレージである。記憶部15、25、35、45には端末側セッションデータが記憶されている。端末側セッションデータは、セッションキーに対応付けられたセッションIDの項目を有している。セッションキーはセッションの種類の名称であり、セッションの種類は例えばどのテナントとのセッションであるかが分かるようになっている。業務担当者Gは親テナントにログインする場合と子テナントの仮想ユーザーVとなる場合があり、第三の端末装置40はそれぞれのセッションキーを情報処理システム50に送信できる。なお、図6(e)ではWebブラウザの記憶部45が、複数のセッションIDを記憶しているが、セッションIDを1つだけ保存する(2つ目以降は上書きされる)場合もある。
<ログイン、仮想ユーザーV作成、アプリ等の設定、までの処理)
続いて、図7を参照して、業務担当者Gによる仮想ユーザーVの作成等について説明する。図7は、業務担当者Gのログイン、仮想ユーザーVの作成、及び、アプリ等の設定の処理を説明するシーケンス図の一例である。
S1:業務担当者Gが第三の端末装置40を操作してログインするための操作を入力する。業務担当者Gは自分が所属する親テナントにおけるユーザーIDとパスワードを入力する。第三の端末装置40の操作受付部44が入力を受け付ける。第三の端末装置40の第三通信部42はユーザーIDとパスワードを指定してログイン要求を情報処理システム50の業務管理部50cに送信する。なお、業務担当者Gは日常的な業務を行う場合、業務管理部50cに接続する。ログイン画面の一例を図8に示す。
S2:業務管理部50cは第五通信部52を介してログイン要求を受信する。業務管理部50cはログイン要求なので認証を行うアクセス制御部50bにログイン要求を転送する。
S3:アクセス制御部50bはログイン要求を受信し、認証部54がユーザーIDとパスワードで業務担当者Gを認証する。ここでは認証が成功したものとする。認証が成功すると認証部54は業務担当者Gとの通信に対しセッションIDを採番する。認証部54はセッションIDと業務担当者GのユーザーIDをセッションデータ記憶部65に登録する。そして、アクセス制御部50bは、親テナントに関するセッションIDと親テナントとのセッションであることを示すセッションキー(親テナントへのログインにより確立したセッションであることを示す)を業務管理部50cに送信する。
また、アクセス制御部50bは、この業務担当者Gが所属するテナントを親テナントとする子テナントの一覧を業務管理部50cに送信する。このため、アクセス制御部50bの判断部56は、まず、ユーザーデータ記憶部64で業務管理部50cが所属するテナントIDを特定する。次に、テナントデータ記憶部63で業務担当者GのテナントIDを親テナントに持つ子テナントを特定する。また、判断部56は代行依頼が「依頼」になっている子テナントを抽出する。
S4:業務管理部50cの顧客情報管理部58は、親テナントに関するセッションIDとセッションキー、及び、子テナントの一覧を受信する。業務管理部50cの画面生成部59は子テナントの一覧を表示するテナント管理画面の画面情報を生成する。業務管理部50cはテナント管理画面の画面情報、親テナントに関するセッションID及びセッションキーを第三の端末装置40に送信する。
S5:第三の端末装置40の第三通信部42はテナント管理画面の画面情報、親テナントに関するセッションID及びセッションキーを受信する。第三通信部42はセッションキーとセッションIDをWebブラウザ41の記憶部45に記憶させる。また、表示制御部43はテナント管理画面を表示する。テナント管理画面の一例を図9に示す。
業務担当者Gはテナント管理画面から設定を代行する子テナントを選択する(子テナントの管理を要求する操作を行う)。すなわち、この子テナントの仮想ユーザーを作成する操作を入力する。第三の端末装置40の操作受付部44が選択を受け付ける。第三通信部42は選択された子テナントのテナントID、及び、記憶部45から取得した親テナントに関するセッションID(情報処理システムがセッションを特定できるように)を業務管理部50cに送信する。
S6:業務管理部50cは子テナントのテナントID、及び、親テナントに関するセッションIDを受信する。これらは仮想ユーザーの作成要求に含まれるので、業務管理部50cは業務担当者Gが子テナントの管理を行えるように仮想ユーザーVを作成する。業務管理部50cは子テナントのテナントID、及び、親テナントに関するセッションIDを指定し、仮想ユーザーVとの通信のセッションの発行をアクセス制御部50bに要求する。
S7:アクセス制御部50bは仮想ユーザーVとの通信のセッションの発行要求を受信する。判断部56は業務担当者Gが選択した子テナントとの通信について仮想ユーザーVを作成してよいか否かを判断する。この判断の詳細を図11にて説明する。ここでは子テナントとの通信について仮想ユーザーVを作成してよいと判断部56が判断したものとする。仮想ユーザーVを作成した場合、仮想ユーザーVがログインしていると見なされる(そうしないと仮想ユーザーVが処理できない)。このため、ユーザー作成部55は仮想ユーザーVが子テナントと通信するためのセッションIDと仮想ユーザーのユーザーIDを生成し、これらを対応付けてセッションデータ記憶部65に登録する。また、ユーザーデータ記憶部64のテナントID、ユーザーID、ロール、及び、仮想ユーザーの項目にそれぞれ、子テナントのテナントID、仮想ユーザーを意味する重複しないユーザーID、Admin、及び、仮想ユーザー「○」を登録する。
S8:アクセス制御部50bは、子テナントに関するセッションIDとセッションキーを業務管理部50cに送信する。このセッションキーは子テナントへユーザー(業務担当者G)がログインしたセッションであることを示す。業務管理部50cの顧客情報管理部58は、子テナントに関するセッションIDとセッションキーを受信する。
S9:業務管理部50cは子テナントに関するセッションID及びセッションキーを第三の端末装置40に送信する。第三の端末装置40の第三通信部42は子テナントに関するセッションID及びセッションキーを受信する。セッションキーとセッションIDをWebブラウザ41の記憶部45に記憶させる。
S10:業務担当者Gは子テナントで利用できる例えばアプリの設定を行う操作を第三の端末装置40に入力する。操作受付部44は入力を受け付ける。第三の端末装置40の第三通信部42は子テナントに関するセッションIDを指定し、アプリ部50dと通信する。第三通信部42は記憶部45の端末側セッションデータに記憶されているセッションキーのどちらを送信すべきかを判断できない。このため、第三通信部42は端末側セッションデータに記憶されている全てのセッションキーとセッションIDを送信する。セッションキーとセッションIDが上書きされた場合は、1つだけ送信すればよい。
S11:アプリ部50dは仮想ユーザーVを検証するため、セッションキーに基づいて判断した子テナントに関するセッションIDを指定して、ユーザーの検証をアクセス制御部50bに要求する。
S12:アクセス制御部50bはユーザーの検証要求を受信し、認証部54がセッションデータ記憶部65から子テナントに関するセッションIDを検索する。セッションIDがセッションデータ記憶部65に記憶されていれば認証が成功したユーザーなので、認証部54は検証OKとユーザー情報をアプリ部50dに送信する。ユーザー情報は、ユーザーのロールに基づく操作制限などのために送信される。
S13:アプリ部50dは検証OKにより、業務担当者Gが仮想ユーザーとして子テナントを管理すること(通信すること)を許可する。アプリ部50dは検証OKとユーザー情報を受信し、子テナントのアプリ設定が可能である旨を第三の端末装置40に送信する。
S14:業務担当者Gは子テナントで利用できる例えばアプリ設定画面を開き、アプリに関する設定を第三の端末装置40に入力する。操作受付部44は入力を受け付ける。設定内容はアプリ部50dに送信される。アプリ部50dは設定内容を受信し、アプリ制御部61がアプリデータ記憶部66のアプリに関する設定を更新する。アプリ設定画面の一例を図10に示す。
このように、情報処理システム50が仮想ユーザーVを作成することで、業務担当者Gが子テナントの設定を代行できる。
<画面例>
図8は、第三の端末装置が表示するログイン画面の一例を示す。ログイン画面300は、テナントID欄304、ユーザーID欄301、パスワード欄302、及び、ログインボタン303を有している。ユーザーはテナントID欄にテナントIDを入力し、ユーザーID欄301にユーザーIDを入力し、パスワード欄302に自分のパスワードを入力する。これらは認証情報の一例である。ユーザーがログインボタン303を押下するとログイン要求が情報処理システム50に送信される。なお、ユーザーはメールアドレスとパスワードでもログインできる。この場合はテナントIDが不要になる。テナントIDはテナント内で一意であるに過ぎないが、メールアドレスはテナントに関係なく一意性があるためである。
図9は、第三の端末装置40が表示するテナント管理画面310の一例を示す。テナント管理画面310は、業務担当者Gが設定等を行える子テナントの一覧を表示する。テナント管理画面310は顧客区分311、テナントID312、メールアドレス313、会社名314、及び、管理するボタン315を、テナントごとに表示する。
顧客区分311:一般又はデモの種類がある。一般は契約が完了しているテナントであり、デモは契約前の無料使用中のテナントを示す。
テナントID312:子テナントのテナントIDである。
メールアドレス313:サービスの提供を申し込んだユーザーが申し込み画面で入力したメールアドレスである。申込者は基本的にテナント管理者になるので、テナント管理者のメールアドレスである。
会社名314:テナントデータ記憶部63のテナント名である。
管理するボタン315:業務担当者Gが子テナントの管理を行うためのボタンである。仮想ユーザーの作成を要求するボタンを兼ねる。管理するボタン315が押下された場合、管理するボタン315に対応付けられている子テナントが図7のステップS5で選択された子テナントとなる。
図10は、アプリ設定画面320の一例を示す図である。このアプリ設定画面320は「Scan To Storage」というアプリのものである。「Scan To Storage」は電子機器10がスキャンした画像データをストレージに保存するアプリである。
このため、アプリ設定画面320は、ストレージ選択欄321、ストレージアカウント欄322、及び、フォルダ選択欄323を有している。ストレージ選択欄321はストレージサービスを提供する商用サービスの名称などの選択を一覧から受け付ける。ストレージアカウント欄322はこのストレージにログインするためのユーザーのアカウントの入力欄である。アカウントは例えばユーザー名であり、ユーザー名に対応付けられている、ストレージサービスのユーザーIDとパスワードが特定される。フォルダ選択欄323はストレージにおける保存先のフォルダの選択を受け付ける。業務担当者Gはこのようなアプリに関する設定を子テナントのテナント管理者の代わりに行うことができる。
<仮想ユーザーVの作成を許可するかどうかの判断>
図11は、アクセス制御部50bの判断部56が、仮想ユーザーVの作成を許可するかどうかを判断する処理を説明するフローチャート図の一例である。図11は図7のステップS7で実行される。
アクセス制御部50bの判断部56は、業務担当者Gが選択した子テナントのテナントIDが、業務担当者Gが所属する親テナントの子テナントか否かを判断する(S101)。判断部56はテナントデータ記憶部63で子テナントのテナントIDを検索し、親テナントの項目に登録されているテナントID(これをAとする)を特定する。また、判断部56は親テナントに関するセッションIDでセッションデータ記憶部65を検索し、このセッションIDに対応付けられているユーザーID(業務担当者GのユーザーID)を取得する。判断部56はこのユーザーIDに対応付けられているテナントID(これをBとする)を、ユーザーデータ記憶部64を参照して特定する。そして、テナントID_AとテナントID_Bが一致するかどうかを判断する。
この判断は、業務担当者Gが作成したテナントでないと代行設定ができないことを意味している。例えば、ディーラーXが作成した子テナントに対しディーラーYが代行設定することを防止できる。
また、判断部56は、子テナントであると確認できた子テナントに関し、テナントデータ記憶部63の代行依頼の項目に「依頼」が登録されているか否かを判断する(S102)。
ステップS101とS102の判断が両方ともYesの場合、判断部56は仮想ユーザーVの作成を許可すると判断する(S104)。ステップS101とS102のいずれかの判断がNoの場合、判断部56は仮想ユーザーVを作成できないと判断する(S103)。
なお、ステップS101とS102の判断は図7のステップS3でも行われており、同様の判断がステップS7を含めて2回行われることになる。このため、例えば、ステップS3ではステップS101とS102の判断を行わず、アクセス制御部50bが全ての子テナントの一覧を送信してもよい。あるいは、ステップS3ではステップS101とS102の判断を行うが、全ての子テナントの一覧を送信し、第三の端末装置40がテナント管理画面310を表示する際にステップS101とS102でYesと判断されたテナントのみ選択できるように表示してもよい(例えば、ステップS101とS102のどちらかでNoと判断されたテナントの管理するボタンを半輝度で表示する)。これらにより、ステップS3とS7で同様の判断を2回行う必要性を低減できる。
<仮想ユーザーVの削除>
仮想ユーザーVは実在するユーザーではないので、不要になったら削除されることが好ましい。本実施形態では仮想ユーザーVのログアウトによりユーザーデータ記憶部64から仮想ユーザーVの情報が削除される。
図12は、仮想ユーザーVに関する情報をアクセス制御部50bが削除する手順を示すシーケンス図の一例である。
S21:業務担当者Gがログアウトする操作を第三の端末装置40に入力する。第三の端末装置の操作受付部44はログアウトを受け付ける。第三通信部42は端末側セッションデータの全てのセッションIDとセッションキーを指定し、ログアウトをアプリ部50dに送信する。アプリ部50dはセッションキーに基づいて子テナントに関するセッションIDを特定する。
S22:アプリ部50dはログアウト要求と子テナントに関するセッションIDを受信する。アプリ部50dは子テナントに関するセッションIDを指定して、ログアウトをアクセス制御部50bに要求する。
S23:アクセス制御部50bはログアウト要求を受信し、ユーザー作成部55がセッションデータ記憶部65から子テナントに関するセッションIDを検索する。セッションIDがセッションデータ記憶部65に記憶されている場合、対応付けられているユーザーID(仮想ユーザーのユーザーID)を特定する。ユーザー作成部55はセッションデータ記憶部65からセッションIDとユーザーIDを削除する。また、ユーザー作成部55は削除したユーザーIDに対応付けられているテナントID、ロール、及び、仮想ユーザーVの各項目をユーザーデータ記憶部64から削除する。
S24:アクセス制御部50bはログアウトOKをアプリ部50dに送信する。
S25:アプリ部50dはログアウトOKを第三の端末装置40に送信する。こうすることで、ユーザーデータ記憶部64から仮想ユーザーVが削除され、第三者が仮想ユーザーVを使用して子テナントの設定などを行う可能性を低減できる。
<主な効果>
以上説明したように、本実施形態のサービス提供システム1は、テナント間のアクセス制御やアプリケーションが他のテナントのユーザーによる利用に対応していなくても、第一のテナントのユーザーが第二のテナントの管理をできるようになる。
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、本実施形態では各端末装置が汎用的なWebブラウザを使用しているが、情報処理システムに専用のアプリを使用してもよい。
また、本実施形態では業務管理者が仮想ユーザーを作成したが、テナント管理者又は一般のユーザーが仮想ユーザーの作成を要求する場合、アクセス制御部50bが仮想ユーザーを作成できる特定のロールであることを判断してもよい。
また、図5などの構成例は、第一の端末装置20、第三の端末装置40、電子機器10、及び情報処理システム50による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。第一の端末装置20、第三の端末装置40、電子機器10、及び情報処理システム50の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
また、実施例に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。ある実施形態では、情報処理システム50は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。
更に、情報処理システム50は、開示された処理ステップ、例えば図7を様々な組み合わせで共有するように構成できる。例えば、所定のユニットによって実行されるプロセスは、情報処理システム50が有する複数の情報処理装置によって実行され得る。また、情報処理システム50は、1つのサーバ装置にまとめられていても良いし、複数の装置に分けられていても良い。
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)や従来の回路モジュール等のデバイスを含むものとする。
1 サービス提供システム
10 電子機器
20 第一の端末装置
30 第二の端末装置
40 第三の端末装置
49 情報処理装置
50 情報処理システム
50a 共通機能部
50b アクセス制御部
50c 業務管理部
50d アプリ部
特開2018−156128号公報

Claims (10)

  1. テナントに所属するユーザーにサービスを提供するサービス提供システムであって、
    第一のユーザーが所属する第一のテナントとは異なる第二のテナントの管理を端末装置から要求された場合、前記第二のテナントに所属する第二のユーザーを作成するユーザー作成部を有する、
    ことを特徴とするサービス提供システム。
  2. 前記第二のユーザーが作成された場合、
    前記第一のユーザーが操作する前記端末装置が前記第二のテナントと通信することを許可することを特徴とする請求項1に記載のサービス提供システム。
  3. 親テナントと親テナントが作成した子テナントとが対応付けられているテナントデータに基づいて、
    前記第一のユーザーが所属する前記第一のテナントを親テナントに持つ子テナントの一覧を前記端末装置に送信し、
    前記端末装置は、前記子テナントの一覧を表示することを特徴とする請求項1に記載のサービス提供システム。
  4. 前記テナントデータには、子テナントが処理の代行を許可するか否かが設定されておりい、
    処理の代行を許可すると設定されている子テナントの一覧を前記端末装置に送信することを特徴とする請求項3に記載のサービス提供システム。
  5. 前記第二のテナントに関する処理の代行を前記端末装置から要求された場合、前記第二のテナントの親テナントと、前記第一のユーザーが所属する第一のテナントが一致するか否かを判断する判断部を有し、
    前記判断部が一致すると判断した場合、前記ユーザー作成部が前記第二のテナントに所属する第二のユーザーを作成することを特徴とする請求項3又は4に記載のサービス提供システム。
  6. 前記判断部が一致すると判断した場合、
    前記判断部は、子テナントが処理の代行を許可するか否かが設定されたテナントデータに基づいて、前記第二のテナントが処理の代行を許可すると設定されているか否かを判断し、
    前記判断部が、前記第二のテナントが処理の代行を許可すると設定されていると判断した場合、前記ユーザー作成部が前記第二のテナントに所属する第二のユーザーを作成することを特徴とする請求項5に記載のサービス提供システム。
  7. 前記第二のユーザーは、前記第一のユーザーが前記第二のユーザーとしてログインしている間のみ有効な仮想ユーザーであることを特徴とする請求項1〜6のいずれか1項に記載のサービス提供システム。
  8. 前記第二のユーザーはユーザーデータ記憶部に登録されており、
    前記端末装置が前記第二のユーザーのログアウトを要求した場合、前記ユーザー作成部は前記第二のユーザーを前記ユーザーデータ記憶部から削除することを特徴とする請求項7に記載のサービス提供システム。
  9. テナントに所属するユーザーにサービスを提供する情報処理システムであって、
    第一のユーザーが所属する第一のテナントとは異なる第二のテナントの管理を端末装置から要求された場合、前記第二のテナントに所属する第二のユーザーを作成するユーザー作成部を有する、ことを特徴とする情報処理システム。
  10. テナントに所属するユーザーにサービスを提供するサービス提供システムが行うユーザー作成方法であって、
    第一のユーザーが所属する第一のテナントとは異なる第二のテナントの管理を端末装置から要求された場合、前記第二のテナントに所属する第二のユーザーを作成することを特徴とするユーザー作成方法。
JP2020048477A 2020-03-18 2020-03-18 情報処理システム、ユーザー作成方法 Active JP7456217B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020048477A JP7456217B2 (ja) 2020-03-18 2020-03-18 情報処理システム、ユーザー作成方法
EP21160303.0A EP3882770A1 (en) 2020-03-18 2021-03-02 Information processing system, service providing system, and user creation method
US17/193,297 US11330082B2 (en) 2020-03-18 2021-03-05 Information processing system, service providing system, and user creation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020048477A JP7456217B2 (ja) 2020-03-18 2020-03-18 情報処理システム、ユーザー作成方法

Publications (2)

Publication Number Publication Date
JP2021149479A true JP2021149479A (ja) 2021-09-27
JP7456217B2 JP7456217B2 (ja) 2024-03-27

Family

ID=74856669

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020048477A Active JP7456217B2 (ja) 2020-03-18 2020-03-18 情報処理システム、ユーザー作成方法

Country Status (3)

Country Link
US (1) US11330082B2 (ja)
EP (1) EP3882770A1 (ja)
JP (1) JP7456217B2 (ja)

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291490B1 (en) * 2008-06-30 2012-10-16 Emc Corporation Tenant life cycle management for a software as a service platform
JP5772009B2 (ja) * 2011-01-26 2015-09-02 株式会社リコー 画像処理装置、機能利用制御方法、機能利用制御プログラム、及びそのプログラムを記録した記録媒体
JP5814639B2 (ja) 2011-06-09 2015-11-17 キヤノン株式会社 クラウドシステム、クラウドサービスのライセンス管理方法、およびプログラム
JP5930847B2 (ja) 2011-06-29 2016-06-08 キヤノン株式会社 サーバーシステムおよび制御方法およびプログラム
JP2013178748A (ja) 2012-02-01 2013-09-09 Ricoh Co Ltd 情報処理装置、プログラム、情報処理システム及びデータ変換処理方法
JP6056384B2 (ja) 2012-10-31 2017-01-11 株式会社リコー システム及びサービス提供装置
JP6255858B2 (ja) 2012-10-31 2018-01-10 株式会社リコー システム及びサービス提供装置
JP6111713B2 (ja) 2013-02-06 2017-04-12 株式会社リコー 情報処理システム、情報処理装置、認証情報管理方法及びプログラム
JP6248641B2 (ja) 2014-01-15 2017-12-20 株式会社リコー 情報処理システム及び認証方法
US10218703B2 (en) * 2014-01-20 2019-02-26 Hewlett-Packard Development Company, L.P. Determining a permission of a first tenant with respect to a second tenant
JP6390123B2 (ja) 2014-03-11 2018-09-19 株式会社リコー 情報処理システム及び認証情報提供方法
US10025942B2 (en) * 2014-03-21 2018-07-17 Ptc Inc. System and method of establishing permission for multi-tenancy storage using organization matrices
JP6372311B2 (ja) 2014-10-30 2018-08-15 株式会社リコー 情報処理システム、電子機器、サービス認可方法及びプログラム
JP6459398B2 (ja) 2014-10-30 2019-01-30 株式会社リコー 情報処理システム、情報処理装置、アクセス制御方法及びプログラム
JP6380009B2 (ja) 2014-10-31 2018-08-29 株式会社リコー 情報処理システム、認証方法、および情報処理装置
JP6476760B2 (ja) 2014-10-31 2019-03-06 株式会社リコー 情報処理システム、情報処理装置、ログイン方法、及びプログラム
JP2017033339A (ja) 2015-08-03 2017-02-09 株式会社リコー サービス提供システム、情報処理装置、プログラム及びサービス利用情報作成方法
US10243924B2 (en) 2015-08-18 2019-03-26 Ricoh Company, Ltd. Service providing system, service providing method, and information processing apparatus
JP6582740B2 (ja) 2015-08-26 2019-10-02 株式会社リコー 情報処理システム、サーバ装置、及びプログラム
US10291620B2 (en) 2015-11-25 2019-05-14 Ricoh Company, Ltd. Information processing apparatus, terminal apparatus, program, and information processing system for collaborative use of authentication information between shared services
CN105653849B (zh) * 2015-12-25 2018-09-11 北京像素软件科技股份有限公司 一种虚拟用户的方法和系统
US10769268B2 (en) 2016-11-01 2020-09-08 Ricoh Company, Ltd. Information processing device, information processing system, and information processing method
JP6938983B2 (ja) 2017-03-15 2021-09-22 株式会社リコー 情報処理システム、情報処理装置及び情報処理方法
JP6907619B2 (ja) 2017-03-15 2021-07-21 株式会社リコー 情報処理システム、情報処理方法、及び情報処理装置
EP3511820A1 (en) * 2018-01-15 2019-07-17 Siemens Aktiengesellschaft Cloud based artifact lifecycle management system and method thereof

Also Published As

Publication number Publication date
US20210297507A1 (en) 2021-09-23
US11330082B2 (en) 2022-05-10
JP7456217B2 (ja) 2024-03-27
EP3882770A1 (en) 2021-09-22

Similar Documents

Publication Publication Date Title
JP6476760B2 (ja) 情報処理システム、情報処理装置、ログイン方法、及びプログラム
JP7322619B2 (ja) コンピュータシステム、ログイン画面表示方法、プログラム
US20210377277A1 (en) Service providing system, information processing system, and use permission assigning method
JP2021174156A (ja) サービス提供システム、ログイン設定方法、情報処理システム
JP2023166529A (ja) 1つ以上の情報処理装置、情報処理システム、ロール設定方法
JP6919561B2 (ja) 情報処理装置、情報処理システム、統合方法
JP7388222B2 (ja) 情報処理システム、システム、利用制限方法
US11995173B2 (en) Service providing system, application usage method, and information processing system
US11606361B2 (en) Cloud system, information processing system, and user registration method
JP7459649B2 (ja) クラウドシステム、情報処理システム、ユーザ登録方法
JP7484484B2 (ja) サービス提供システム、及びグループ管理方法
JP7222246B2 (ja) サービスシステム、クラウドサービス、ユーザ登録方法、プログラム
JP7456217B2 (ja) 情報処理システム、ユーザー作成方法
JP7347136B2 (ja) 1つ以上の情報処理装置、情報処理システム、権限付与方法
US20210349974A1 (en) System and method for providing service, and recording medium
US12034899B2 (en) Image forming apparatus, information processing method, and recording medium
US20220263976A1 (en) Image forming apparatus, information processing method, and recording medium
US11886553B2 (en) Service providing system, information processing system, control method, and medium
JP7443918B2 (ja) サービス提供システム、利用権限割当方法、情報処理システム
JP2021086565A (ja) 情報処理装置、情報処理装置の制御方法、プログラムおよび情報処理システム
JP2021033680A (ja) 管理装置、データ処理システム、方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240126

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: 20240213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240226

R151 Written notification of patent or utility model registration

Ref document number: 7456217

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151