JP7208807B2 - System, tenant movement method, information processing device and its control method, and program - Google Patents

System, tenant movement method, information processing device and its control method, and program Download PDF

Info

Publication number
JP7208807B2
JP7208807B2 JP2019008600A JP2019008600A JP7208807B2 JP 7208807 B2 JP7208807 B2 JP 7208807B2 JP 2019008600 A JP2019008600 A JP 2019008600A JP 2019008600 A JP2019008600 A JP 2019008600A JP 7208807 B2 JP7208807 B2 JP 7208807B2
Authority
JP
Japan
Prior art keywords
tenant
information
processing device
authorization server
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.)
Active
Application number
JP2019008600A
Other languages
Japanese (ja)
Other versions
JP2020119147A (en
JP2020119147A5 (en
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2019008600A priority Critical patent/JP7208807B2/en
Publication of JP2020119147A publication Critical patent/JP2020119147A/en
Publication of JP2020119147A5 publication Critical patent/JP2020119147A5/en
Application granted granted Critical
Publication of JP7208807B2 publication Critical patent/JP7208807B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、システム、テナントの移動方法、情報処理装置およびその制御方法、並びにプログラムに関する。 The present invention relates to a system, a tenant migration method, an information processing device and its control method , and a program.

所謂クラウドと呼ばれる、インターネット上における様々なITリソースをオンデマンドで提供するサービスがある。クラウドは一般的にWebサービスのAPI(Application Programming Interface)を公開しており、複写機等のネットワークデバイス(以後、デバイス)はAPIを介してクラウドが提供する機能を利用することができる。このAPI利用における認証、認可のプロトコルとして、OAuth2.0と呼ばれる標準プロトコルが策定されている。OAuth2.0において、認証、認可を受ける側であるデバイスはクライアントと呼ばれる。デバイスがAPIを利用するためには、事前に認可サーバーに対して当該デバイスをクライアントとして登録する。そして、認可サーバーが発行したクライアントを識別するためのクライアントIDと認証するためのシークレット(認証情報)を、クライアントであるデバイスが保持しておく必要がある。 There are so-called cloud services that provide various IT resources on the Internet on demand. The cloud generally publishes a Web service API (Application Programming Interface), and network devices such as copiers (hereinafter referred to as devices) can use functions provided by the cloud via the API. A standard protocol called OAuth 2.0 has been formulated as a protocol for authentication and authorization in using this API. In OAuth 2.0, a device that receives authentication and authorization is called a client. In order for a device to use the API, the device is registered as a client with the authorization server in advance. A device that is a client needs to hold a client ID for identifying the client issued by the authorization server and a secret (authentication information) for authentication.

一方、クラウドでは、同じシステムやサービスを複数の組織(例えば、企業等)が共有して使用することが一般的であり、各組織は、各テナントに論理的に分離され、セキュリティや秘匿性が担保される(マルチテナント方式)。組織に設置されたデバイスもまた、クラウドとやり取りするデータに機密情報等が含まれる場合に、その組織に対応するテナントに所属する形で認可サーバーに登録される必要がある。これにより、デバイスはデータを所属するテナント外に情報漏えいすることなく、クラウドが提供する各種機能を利用できる。 On the other hand, in the cloud, it is common for multiple organizations (for example, companies) to share and use the same systems and services. Secured (multi-tenant method). Devices installed in an organization also need to be registered in the authorization server as belonging to the tenant corresponding to that organization if confidential information is included in the data exchanged with the cloud. As a result, the device can use various functions provided by the cloud without information leakage outside the tenant to which the device belongs.

デバイスが特定のテナントに属する形で認可サーバーに登録される権限委譲システムとして、例えば、特許文献1が挙げられる。特許文献1の技術では、デバイスのシリアルIDとテナントIDを紐づけて管理し、クラウドにおけるユーザーの権限をテナント専用のクライアント作成として委譲することで、デバイスのテナント登録を実現している。その実現方法の一つとして、特定のテナントにデバイスを登録するためのキー(以後、デバイス登録キー)を使用している。ユーザーは、対象テナントからデバイス登録キーを入手し、それをデバイスに入力することで、デバイスを対象テナントへ登録することができる。 Patent Document 1, for example, is an authority delegation system in which a device is registered in an authorization server in a form belonging to a specific tenant. In the technique of Patent Document 1, device tenant registration is realized by linking and managing device serial IDs and tenant IDs, and delegating user rights in the cloud to create tenant-dedicated clients. As one of the methods for realizing this, a key for registering a device to a specific tenant (hereafter referred to as a device registration key) is used. The user can register the device to the target tenant by obtaining the device registration key from the target tenant and entering it into the device.

特開2017-107396号公報JP 2017-107396 A

マルチテナント方式において、テナントにはいくつか種類が存在する。例えば、クラウドを利用する企業のテナント(以下、顧客テナント)のほかに、クラウドを提供する提供者側のテナント(以下、販売テナント)が存在する。利用者(顧客)が提供者と契約を交わし、提供者が顧客テナントを作成する。販売テナントは顧客テナントの管理などを行うために利用される。デバイスは顧客テナントに登録されるべきであるが、次のような理由で販売テナントに一時的に登録する場合がある。例えば、デバイスを企業に物理的に設置する設置者が、設置作業の一環としてデバイスを顧客テナントに登録したいが、その段階ではまだ顧客テナントが存在しない場合が考えられる。また、設置者が顧客テナントのユーザーでない場合は、顧客テナントへデバイスを登録するためのキーを入手していない場合も考えられる。一方で、販売テナントに登録されているデバイスを顧客が使用するためには、そのデバイスを販売テナントから顧客テナントへ移動させる必要がある。 In the multi-tenant system, there are several types of tenants. For example, in addition to tenants of companies that use the cloud (hereafter referred to as customer tenants), there are tenants on the side of providers who provide the cloud (hereafter referred to as sales tenants). A user (customer) concludes a contract with a provider, and the provider creates a customer tenant. The sales tenant is used to manage customer tenants. Devices should be registered in the customer tenant, but may be temporarily registered in the sales tenant for reasons such as: For example, an installer who physically installs a device at an enterprise may wish to register the device with a customer tenant as part of the installation process, but the customer tenant does not yet exist at that stage. Also, if the installer is not a user of the customer tenant, it is possible that the key for registering the device to the customer tenant has not been obtained. On the other hand, in order for a customer to use a device registered in the sales tenant, it is necessary to move the device from the sales tenant to the customer tenant.

このように、あるテナントから別のテナントへデバイスを移動させる場合、デバイスの所属テナントを認可サーバーが単に書き換えることはテナント分離の原則に反する。すなわち、テナントAのものであるデバイスがクラウド側の処理だけでテナントBへ所属が変更になるということは、テナントAの権限でテナントBへクライアントを作成していることになる。つまり、分離されてなければならないテナント間で処理が発生してしまっている。これを避けるためには、デバイスはテナントBに新規登録し直す必要があるが、テナントBの作成後に手動でデバイスを登録し直すことはユーザーの手間となる。 Thus, when a device is moved from one tenant to another tenant, simply rewriting the tenant to which the device belongs by the authorization server violates the principle of tenant separation. In other words, when a device owned by tenant A changes its affiliation to tenant B only by processing on the cloud side, it means that a client is created for tenant B with tenant A's authority. In other words, processing occurs between tenants that should be separated. To avoid this, the device needs to be newly registered with Tenant B, but manually re-registering the device after Tenant B is created is troublesome for the user.

上記課題を解決するために本願発明は以下の構成を有する。すなわち、情報処理装置と、サービスを提供するサービス提供サーバーと、前記サービスを利用するための認可情報を発行する認可サーバーとを含むシステムであって、前記認可サーバーは、要求に応じて、情報処理装置をテナントに登録するための登録キーを発行する第1の発行手段と、前記登録キーを用いて前記情報処理装置の登録要求を受け付けた場合に、当該情報処理装置の情報を前記テナントに登録する登録手段と、前記テナントに登録された前記情報処理装置を識別するための認証情報を発行する第2の発行手段と、前記認証情報を用いて前記サービスを利用するための認可情報の要求を受け付けた場合に、当該認証情報の検証結果に応じて、前記認可情報を応答する応答手段と、前記テナントに登録されている前記情報処理装置の情報異なるテナントに移動させる要求を受け付ける受け付け手段と、当該異なるテナントの情報を移動先のテナントの情報として保持する保持手段とを有し、前記情報処理装置は、前記認可サーバーに対し、前記登録キーを用いて当該情報処理装置のテナントへの登録要求を行登録要求手段と、前記認可サーバーから、当該登録要求に基づき発行された前記認証情報を取得する取得手段と、前記認可サーバーに対する前記認証情報を用い認可情報の取得要求の応答として前記認可情報を取得する取得手段とを有し、前記認可サーバーは、前記移動先のテナントの情報を保持していた場合、前記情報処理装置から前記認可情報の取得要求を受け付けた際に、当該移動先のテナントの情報を前記情報処理装置に通知する通知手段をさらに有し、前記情報処理装置の前記登録要求手段は、前記認可サーバーが発行する前記情報処理装置を前記移動先のテナントに登録するための別の登録キーを用いて、当該情報処理装置の前記移動先のテナントへの登録要求を行う。 In order to solve the above problems, the present invention has the following configuration. That is, the system includes an information processing device, a service providing server that provides services, and an authorization server that issues authorization information for using the services, wherein the authorization server issues information in response to a request . a first issuing means for issuing a registration key for registering an information processing device with a tenant; a second issuing means for issuing authentication information for identifying the information processing device registered in the tenant; and authorization information for using the service using the authentication information. When receiving a request, responding means for responding with the authorization information according to the verification result of the authentication information; and a holding means for holding the information of the different tenant as the information of the destination tenant, wherein the information processing device uses the registration key to the authorization server for the information processing registration request means for requesting registration of a device with a tenant; acquisition means for acquiring the authentication information issued based on the registration request from the authorization server; acquisition means for acquiring the authorization information as a response to an authorization information acquisition request , wherein the authorization server acquires the authorization information from the information processing device when the information on the tenant of the migration destination is held. further comprising notification means for notifying the information processing device of the information of the tenant at the destination when the acquisition request of the information processing device is received, wherein the registration request means of the information processing device is the Using another registration key for registering the information processing device with the destination tenant, a request for registration of the information processing device with the destination tenant is made.

本発明によれば、デバイスが所属するテナントを、テナント分離の原則に反することなく自動で登録し直すことが可能となる。 According to the present invention, the tenant to which the device belongs can be automatically re-registered without violating the principle of tenant separation.

本発明に係るシステムの構成例を示す図。The figure which shows the structural example of the system which concerns on this invention. 本発明に係るハードウェア構成の例を示す図。The figure which shows the example of the hardware constitutions concerning this invention. 第一の実施形態に係るデバイスと認可サーバーの機能ブロック図。4 is a functional block diagram of a device and an authorization server according to the first embodiment; FIG. 第一の実施形態に係るデバイスのテナント移動処理の流れを示すシーケンス図。FIG. 11 is a sequence diagram showing the flow of tenant migration processing for a device according to the first embodiment; 第一の実施形態に係る認可サーバーのトークン取得要求の受信時の処理を示すフローチャート。4 is a flowchart showing processing when an authorization server receives a token acquisition request according to the first embodiment; 第二の実施形態に係るデバイスのテナント移動処理を示すシーケンス図Sequence diagram showing tenant migration processing of a device according to the second embodiment 第三の実施形態に係る移動先テナント情報登録処理を示すフローチャート。10 is a flowchart showing destination tenant information registration processing according to the third embodiment. 第四の実施形態に係るデバイスの機能ブロック図。FIG. 11 is a functional block diagram of a device according to the fourth embodiment; 第四の実施形態に係るデバイスの移動処理を示すシーケンス図。FIG. 12 is a sequence diagram showing device movement processing according to the fourth embodiment; 第一の実施形態に係る移動先テナントを指定する画面例を示す図。FIG. 7 is a diagram showing an example of a screen for designating a destination tenant according to the first embodiment; 第四の実施形態に係るテナントの移動を指示する画面例を示す図。FIG. 14 is a diagram showing an example of a screen for instructing tenant movement according to the fourth embodiment;

以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. In addition, the following embodiments do not limit the invention according to the scope of claims. Although multiple features are described in the embodiments, not all of these multiple features are essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same or similar configurations are denoted by the same reference numerals, and redundant description is omitted.

<第1の実施形態>
[システム構成]
図1は、本実施形態に係るシステム構成の例を示す図である。WAN(Wide Area Network)100は、インターネット等により構成される。すなわち、本実施形態では、WWW(World Wide Web)システムが構築されている。LAN(Local Area Network)110は各構成要素を接続する。なお、WAN100やLAN110から構成される各種ネットワークの接続方式や有線/無線などは限定するものではなく、各種通信方法が組み合わせて実現されてよい。
<First embodiment>
[System configuration]
FIG. 1 is a diagram showing an example of a system configuration according to this embodiment. A WAN (Wide Area Network) 100 is configured by the Internet or the like. That is, in this embodiment, a WWW (World Wide Web) system is constructed. A LAN (Local Area Network) 110 connects each component. It should be noted that the connection methods and wired/wireless connections of various networks including the WAN 100 and LAN 110 are not limited, and various communication methods may be combined for realization.

デバイス101、端末102、認可サーバー103、およびリソースサーバー104は、それぞれLAN110、WAN100を介して通信可能に接続されている。本実施形態におけるシステムでは、認可サーバー103、およびリソースサーバー104がWAN100側に位置し、LAN110側に位置するデバイス101および端末102がWAN100を介して各種サーバーに接続可能であるものとする。 A device 101, a terminal 102, an authorization server 103, and a resource server 104 are communicably connected via a LAN 110 and a WAN 100, respectively. In the system according to this embodiment, the authorization server 103 and resource server 104 are located on the WAN 100 side, and the device 101 and terminal 102 located on the LAN 110 side are connectable to various servers via the WAN 100 .

認可サーバー103は、OAuth2.0を実現するための認可処理を行う。リソースサーバー104は、ネットワーク(LAN110、WAN100)を介して各種サービスを提供するサービス提供サーバーとして機能する。 The authorization server 103 performs authorization processing for realizing OAuth2.0. The resource server 104 functions as a service providing server that provides various services via the network (LAN 110, WAN 100).

端末102は、PC(Personal Computer)や携帯端末などであり、ユーザーが操作する装置である。端末102は、不図示であるが、例えば、Webブラウザーや、クラウド(認可サーバー103やリソースサーバー104)にアクセスするための専用のアプリケーションを備える。 The terminal 102 is a PC (Personal Computer), a mobile terminal, or the like, and is a device operated by a user. Although not shown, the terminal 102 includes, for example, a web browser and a dedicated application for accessing the cloud (authorization server 103 and resource server 104).

デバイス101は、複写機や、スマートフォンなどの携帯端末が挙げられるが、特に限定するものではない。デバイス101は、ネットワーク(LAN110、WAN100)を介して認可サーバー103に登録され、その登録に基づいてリソースサーバー104が提供するサービスを利用する。サービスの利用例として、デバイス101は、データをリソースサーバー104にアップロードするなどが挙げられる。デバイス101もまたWebブラウザー等の各種モジュールを備える。 Examples of the device 101 include a copier and a mobile terminal such as a smart phone, but are not particularly limited. The device 101 is registered with the authorization server 103 via the network (LAN 110, WAN 100), and uses services provided by the resource server 104 based on the registration. As an example of using the service, the device 101 uploads data to the resource server 104, and the like. The device 101 also includes various modules such as a web browser.

また、認可サーバー103、およびリソースサーバー104は、データベースサーバー(不図示)とネットワークを介して接続し、各サーバーモジュールが利用するデータをデータベースサーバーに格納するよう構成してもよい。さらに、認可サーバー103、およびリソースサーバー104は、同一のサーバー(コンピューター)上に構成されていてもよい。また、各サーバーは、単体のコンピューターに限らず、複数台のコンピューターで構成されたシステムであっても構わない。 Also, the authorization server 103 and resource server 104 may be configured to connect to a database server (not shown) via a network and store data used by each server module in the database server. Furthermore, the authorization server 103 and resource server 104 may be configured on the same server (computer). Moreover, each server is not limited to a single computer, and may be a system composed of a plurality of computers.

(ハードウェア構成)
図2は、本実施形態に係るデバイス101、端末102、認可サーバー103、およびリソースサーバー104のハードウェア構成の例を示す図である。本実施形態の各サーバー、デバイス101、および端末102には、一般的な情報処理装置のハードウェア構成を適用できる。さらに各サーバーについては、IaaS(Infrastructure as a Service)として提供される情報処理装置の仮想的なハードウェア構成を適用することもできる。
(Hardware configuration)
FIG. 2 is a diagram showing an example hardware configuration of the device 101, terminal 102, authorization server 103, and resource server 104 according to this embodiment. A hardware configuration of a general information processing apparatus can be applied to each server, device 101, and terminal 102 of this embodiment. Furthermore, for each server, a virtual hardware configuration of an information processing device provided as IaaS (Infrastructure as a Service) can also be applied.

図2において、CPU(Central Processing Unit)201は、ROM(Read Only Memory)203が有するプログラム用ROMに記憶されたOS(Operating System)やアプリケーション等のプログラムを実行し、システムバス204に接続される各ブロックを制御する。また、CPU201は、ハードディスク(HD)等の外部メモリ211からRAM(Random Access Memory)202にロードされたプログラムを実行し、各ブロックを制御する。後述する各シーケンスの処理は、CPU201によるプログラムの実行により実現できる。 In FIG. 2, a CPU (Central Processing Unit) 201 executes programs such as an OS (Operating System) and applications stored in a program ROM of a ROM (Read Only Memory) 203, and is connected to a system bus 204. Control each block. The CPU 201 also executes a program loaded from an external memory 211 such as a hard disk (HD) to a RAM (Random Access Memory) 202 to control each block. Processing of each sequence to be described later can be realized by execution of a program by the CPU 201 .

RAM202は、CPU201の主メモリ、ワークエリア等として機能する。キーボードコントローラー205は、キーボード209やポインティングデバイス(不図示)からの入力を制御する。ディスプレイコントローラー206は、ディスプレイ210の表示を制御する。外部メモリコントローラー207は、各種データを記憶するハードディスク(HD)等の外部メモリ211におけるデータアクセスを制御する。ネットワークコントローラー2008は、WAN100、LAN110を介して接続された他の機器との通信制御処理を実行する。 A RAM 202 functions as a main memory, a work area, and the like for the CPU 201 . A keyboard controller 205 controls inputs from a keyboard 209 and a pointing device (not shown). Display controller 206 controls the display of display 210 . An external memory controller 207 controls data access to an external memory 211 such as a hard disk (HD) that stores various data. A network controller 2008 executes communication control processing with other devices connected via the WAN 100 and LAN 110 .

本実施形態において、デバイス101、端末102、認可サーバー103、およびリソースサーバー104はいずれも、図2にて示した情報処理装置200の構成を有するものとする。ただし、図2の構成に限定するものではなく、ディスプレイ210を備えていなかったり、他の機能を備えていていたりしても構わない。特にIaaSとして提供される仮想的な情報処理を想定する場合においては、キーボードコントローラー205、ディスプレイコントローラー206等は設けられず、ネットワークコントローラー208を介して接続される端末に備えるキーボード209や、ディスプレイ210から操作されるよう構成される。後述の全ての説明において、特に断りのない限り、各サーバーや端末、およびデバイスにおける実行のハード上の主体は、CPU201であり、ソフトウェア上の主体は、外部メモリ211にインストールされたアプリケーションプログラムである。 In this embodiment, the device 101, terminal 102, authorization server 103, and resource server 104 all have the configuration of the information processing apparatus 200 shown in FIG. However, the configuration is not limited to that shown in FIG. 2, and the display 210 may not be provided or other functions may be provided. Especially when assuming virtual information processing provided as IaaS, the keyboard controller 205, the display controller 206, etc. are not provided, and the keyboard 209 provided in the terminal connected via the network controller 208 and the display 210 configured to be operated. In all of the explanations below, unless otherwise specified, the CPU 201 is the hardware subject of execution in each server, terminal, and device, and the software subject is the application program installed in the external memory 211. .

(機能構成)
図3は、デバイス101、および認可サーバー103において、特に本実施形態に係る部分の機能ブロックの構成例を示す図である。図3に示す各機能部は、各装置が有するCPU201が制御プログラムを実行することにより実現される。したがって、各装置は、図3に示す機能以外を提供可能であってよい。
(Functional configuration)
FIG. 3 is a diagram showing a configuration example of the functional blocks of the device 101 and the authorization server 103, particularly according to this embodiment. Each functional unit shown in FIG. 3 is implemented by the CPU 201 of each device executing a control program. Accordingly, each device may be capable of providing functions other than those shown in FIG.

図3(A)は、本実施形態に係るデバイス101の機能構成の例を示す。登録キー入力受信部301は、デバイス101を認可サーバー103へ登録するためのデバイス登録キーの入力を受け付ける。デバイス登録キーの入力は、デバイス101におけるハードキーやタッチパネル操作による入力のほか、入力I/Fを用いたOCR(Optical Character Recognition)や二次元バーコードなどの読み取りによって行ってもよい。また、端末102が備えるWebブラウザー(不図示)などからデバイス101が提供する入力画面へアクセスし、デバイス登録キーを入力する構成であってもよい。 FIG. 3A shows an example of the functional configuration of the device 101 according to this embodiment. A registration key input reception unit 301 receives input of a device registration key for registering the device 101 with the authorization server 103 . The device registration key may be input by hard key or touch panel operation on the device 101, or may be performed by reading OCR (Optical Character Recognition) or a two-dimensional barcode using an input I/F. Alternatively, the input screen provided by the device 101 may be accessed from a web browser (not shown) provided in the terminal 102, and the device registration key may be entered.

テナント登録部302は、認可サーバー103に対してデバイス101の登録を要求する。このとき、テナント登録部302は、デバイス登録キー、デバイスシリアルID、およびデバイス101が持つ証明書を認可サーバー103へ送信する。ここで保持されている証明書は、例えば、X.509形式のクライアント証明書およびその秘密鍵であり、この証明書によりデバイス101は自身をどのベンダーのデバイスであるか証明することができる。証明書は、デバイス101における証明書ストア(不図示)に保存されている。情報の送信にはJWT(JSON Web Token)を使用してもよく、その場合はJWTにデバイス登録キー、デバイスシリアルIDなどを記述し、証明書で署名する。以降省略するが、デバイス101と認可サーバー103とのやり取りではいずれもJWTを使用することができる。 The tenant registration unit 302 requests the authorization server 103 to register the device 101 . At this time, the tenant registration unit 302 transmits the device registration key, device serial ID, and certificate possessed by the device 101 to the authorization server 103 . The certificates held here are, for example, X. 509-format client certificate and its private key, with which the device 101 can prove which vendor's device it is. The certificate is stored in a certificate store (not shown) on device 101 . A JWT (JSON Web Token) may be used to transmit information, in which case the device registration key, device serial ID, etc. are described in the JWT and signed with a certificate. Although omitted hereafter, JWT can be used in any communication between the device 101 and the authorization server 103 .

シークレット保持部303は、デバイス101を認可サーバー103に登録後に返却される、クライアントIDとシークレットを保持する。クライアントIDは、デバイス101を一意に識別するために発行される識別情報である。また、シークレットは、クライアントID(識別情報)に対応付けられた、クライアント(ここでは、デバイス101)を認証するために用いられる認証情報である。 A secret holding unit 303 holds a client ID and a secret that are returned after the device 101 is registered with the authorization server 103 . A client ID is identification information issued to uniquely identify the device 101 . The secret is authentication information associated with the client ID (identification information) and used to authenticate the client (here, the device 101).

トークン要求部304は、クライアントIDとシークレットを送信して、認可トークンを認可サーバー103へ要求する。認可トークンは、リソースサーバー101が提供するサービスを利用するための認可情報であり、デバイス101がリソースサーバー104のAPIを利用する際に必要となる。 The token requesting unit 304 transmits the client ID and secret to request an authorization token from the authorization server 103 . The authorization token is authorization information for using services provided by the resource server 101 and is required when the device 101 uses the API of the resource server 104 .

登録キー要求部305は、デバイス登録キーを認可サーバー103へ要求する。デバイス101がデバイス登録キーを要求する場合としては、既にテナントに登録され、そこから別のテナントに移動しようとしている場合である。本実施形態では、デバイス登録キーの要求時には、クライアントIDとシークレットが指定される。 A registration key requesting unit 305 requests a device registration key from the authorization server 103 . A device 101 may request a device registration key if it has already been registered with a tenant and is about to move from there to another tenant. In this embodiment, a client ID and a secret are specified when requesting a device registration key.

図3(B)は、本実施形態に係る認可サーバー103の機能構成の例を示す。トークン発行部311は、デバイス101から認可トークンの取得要求を受け付けると、クライアント認証を行う。具体的には、受信したクライアントIDとシークレットの組が認可サーバー103に登録されているか否かを検証し、その検証結果から要求に対する可否を決定する。クライアントIDとシークレットの組が、認可サーバー103が管理するクライアント管理テーブルに登録されている場合、その要求元に対するクライアント認証が成功する。クライアント認証に成功した場合、トークン発行部311は、要求元に対する認可トークンを発行する。具体的には、トークン発行部311は、認可トークンIDを発行し、認可トークンを利用するための情報と紐づけて、トークン管理テーブルで管理する。なお、以下に示す各テーブルは、CPU201が管理部として機能し、HD211等にて保持、管理される。 FIG. 3B shows an example of the functional configuration of the authorization server 103 according to this embodiment. Upon receiving an authorization token acquisition request from the device 101, the token issuing unit 311 performs client authentication. Specifically, it verifies whether or not the received set of client ID and secret is registered in the authorization server 103, and determines whether or not the request is accepted based on the verification result. If the client ID/secret pair is registered in the client management table managed by the authorization server 103, the client authentication for the requester succeeds. If the client authentication succeeds, the token issuing unit 311 issues an authorization token to the requester. Specifically, the token issuing unit 311 issues an authorization token ID, associates it with information for using the authorization token, and manages it in a token management table. Each table shown below is held and managed by the HD 211 or the like, with the CPU 201 functioning as a management unit.

表1は、本実施形態に係るトークン管理テーブルの例を示す。トークン管理テーブルでは、認可トークンIDに紐づけてトークン種別やクライアントIDなどが管理される。ユーザーUUIDは、デバイス101に権限を委譲するユーザーを指す。なお、UUID(Universal Unique Identifier)は、重複しないユニークなID(識別情報)である。スコープは、ユーザーから権限委譲されるリソースの範囲を定義している。表1に示す例の場合、スコープが「テナント専用クライアント」となっており、ユーザーID「10000001」のユーザーの権限が、デバイス101(特定のテナントに紐づけられたクライアント)に委譲されることを意味する。

Figure 0007208807000001
Table 1 shows an example of a token management table according to this embodiment. The token management table manages token types, client IDs, and the like in association with authorization token IDs. A user UUID indicates a user who delegates authority to the device 101 . A UUID (Universal Unique Identifier) is a unique ID (identification information) that does not overlap. A scope defines the range of resources to which a user delegates authority. In the example shown in Table 1, the scope is "tenant-dedicated client", and the authority of the user with the user ID "10000001" is transferred to the device 101 (client associated with a specific tenant). means.
Figure 0007208807000001

また、トークン発行部311は、クライアントIDに紐づいて、テナントの移動先情報が設定されていないか否かを判定する。本処理の詳細については後述する。 In addition, the token issuing unit 311 determines whether the tenant's destination information is set in association with the client ID. Details of this process will be described later.

クライアント生成部312は、テナントIDの情報を含むデバイス登録キー、デバイスシリアルID、およびデバイス101が持つ証明書とともに、テナント登録要求をデバイス101から受け付けると、証明書を用いてクライアント認証を行う。そして、クライアント生成部312は、クライアント認証が成功した場合に、クライアントを生成する。具体的には、クライアント生成部312は、クライアントID、およびシークレットを発行し、これらをデバイスシリアルIDとテナントIDに紐づけて管理する。 Upon receiving a tenant registration request from the device 101 together with a device registration key including tenant ID information, a device serial ID, and a certificate possessed by the device 101, the client generation unit 312 performs client authentication using the certificate. Then, the client generation unit 312 generates a client when client authentication is successful. Specifically, the client generation unit 312 issues a client ID and a secret, and manages them by associating them with the device serial ID and the tenant ID.

移動先テナント情報登録部313は、デバイス101の移動先テナントIDを受信し、クライアントIDに紐づけて管理する。 The destination tenant information registration unit 313 receives the destination tenant ID of the device 101 and manages it by linking it to the client ID.

上記の各処理部が扱うデータはクライアント管理テーブルに保存される。表2は、本実施形態に係るクライアント管理テーブルの例を示す。クライアントIDは、クライアント生成部312が生成するID(識別情報)であり、本実施形態に係るシステムにて一意となる。シークレットは、クライアント生成部312にて生成され、クライアントIDとの組でクライアントの認証の際に用いられる。テナントIDは、クライアント(すなわち、デバイス101)が所属しているテナントのID(識別情報)である。デバイスシリアルIDは、デバイス101を一意に識別するためのID(識別情報)である。移動先テナントIDは、指定されるまでは空となる。

Figure 0007208807000002
The data handled by each of the above processing units is saved in the client management table. Table 2 shows an example of a client management table according to this embodiment. The client ID is an ID (identification information) generated by the client generation unit 312 and is unique in the system according to this embodiment. The secret is generated by the client generation unit 312 and used in combination with the client ID when authenticating the client. The tenant ID is the ID (identification information) of the tenant to which the client (ie device 101) belongs. A device serial ID is an ID (identification information) for uniquely identifying the device 101 . The destination tenant ID is blank until it is specified.
Figure 0007208807000002

トークン管理テーブル(表1)とクライアント管理テーブル(表2)を用いて、認可サーバー103は、デバイス101とテナントを紐づけて、認可トークンを管理する。 Using the token management table (Table 1) and the client management table (Table 2), the authorization server 103 associates the device 101 with the tenant and manages authorization tokens.

登録キー生成部314は、テナントIDを受信すると、このテナントIDにて示されるテナントへデバイスを登録するためのデバイス登録キーを生成する。デバイス登録キーの生成を依頼するアクター(要求主体)は2つ存在し、1つはリソースサーバー104を介したユーザーである。この場合は、登録キー生成部314は、テナントにログインしたユーザーの権限でデバイス登録キーを生成する。もう1つはデバイス101であり、この場合は、登録キー生成部314は、デバイス101が持つ証明書を受信し、証明書によるクライアント認証に成功した場合にデバイス登録キーを生成する。 Upon receiving the tenant ID, the registration key generation unit 314 generates a device registration key for registering the device to the tenant indicated by this tenant ID. There are two actors (request entities) that request generation of a device registration key. One is a user via the resource server 104 . In this case, the registration key generation unit 314 generates a device registration key with the authority of the user who logged into the tenant. The other is the device 101. In this case, the registration key generation unit 314 receives the certificate possessed by the device 101 and generates a device registration key when the client authentication by the certificate is successful.

表3は、本実施形態に係るデバイス登録キー管理テーブルの例を示す。デバイス登録キーは、例えば、16桁の整数であり、テナントIDに紐づけられる。有効期限は、デバイス登録キーが使用可能な期限である。

Figure 0007208807000003
Table 3 shows an example of a device registration key management table according to this embodiment. A device registration key is, for example, a 16-digit integer and is associated with a tenant ID. The expiration date is the expiration date during which the device registration key can be used.
Figure 0007208807000003

[画面例]
図10は、本実施形態に係る認可サーバー103の移動先テナント情報登録部313に移動先テナントを指示する場合に、端末102のWebブラウザー(不図示)等に表示される画面の一例である。図10(A)は、デバイス一覧画面1000の構成例を示し、デバイス一覧画面1000では、特定のテナント(この例では「AAAテナント」)をユーザーが指定し、そのテナントに登録されているデバイスの一覧が表示される。また、「AAAテナント」のテナントIDとして「101AA」が割り当てられているものとする。ユーザーは、テナントを移動させたいデバイスの登録先テナント変更ボタン1001を押下する。この例では、シリアル番号が「D00000001」のデバイスが選択されたとする。
[Screen example]
FIG. 10 is an example of a screen displayed on a web browser (not shown) or the like of the terminal 102 when specifying a destination tenant to the destination tenant information registration unit 313 of the authorization server 103 according to this embodiment. FIG. 10A shows a configuration example of a device list screen 1000. On the device list screen 1000, a user designates a specific tenant (“AAA tenant” in this example), and the devices registered in that tenant are displayed. A list is displayed. It is also assumed that "101AA" is assigned as the tenant ID of "AAA tenant". The user presses the registration destination tenant change button 1001 of the device whose tenant is to be moved. In this example, it is assumed that a device with serial number "D00000001" is selected.

登録先テナント変更ボタン1001が押下されると、図10(B)に示す登録先テナントの変更画面1010が表示される。シリアル番号1011は、デバイス一覧画面1000にて選択されたデバイスのシリアル番号を示す。移動先テナントID1012は、テキストボックスで入力可能となっており、ユーザーは移動先のテナントのテナントIDを指定する。このとき、移動先テナント情報登録部313は入力されたテナントIDからテナント名を検索し表示してもよい。ユーザーが変更ボタン1013を押下することで、移動先テナント情報登録部313へ登録指示が発行される。 When the registration tenant change button 1001 is pressed, a registration tenant change screen 1010 shown in FIG. 10B is displayed. A serial number 1011 indicates the serial number of the device selected on the device list screen 1000 . The destination tenant ID 1012 can be entered in a text box, and the user specifies the tenant ID of the destination tenant. At this time, the destination tenant information registration unit 313 may retrieve and display the tenant name from the input tenant ID. When the user presses the change button 1013 , a registration instruction is issued to the destination tenant information registration unit 313 .

[テナント移動処理]
図4は、本実施形態に係るデバイス101のテナント移動の処理の流れを示すシーケンス図である。図4に示す処理は、各装置のCPU201がROM203等の記憶部に格納されたプログラムを読み出して実行することで実現される。
[Tenant move process]
FIG. 4 is a sequence diagram showing the flow of processing for tenant migration of the device 101 according to this embodiment. The processing shown in FIG. 4 is implemented by the CPU 201 of each device reading and executing a program stored in a storage unit such as the ROM 203 .

図4においてリソースサーバー104では、例えばデバイス101の設定情報や稼働情報を管理するデバイス管理サービスが稼働しているとする。テナント移動の処理は大きく3つの工程に分かれる。まず、デバイス101がテナントA(移動前のテナント)に登録される。次に、テナントAに登録されたデバイスの移動先のテナントとして、テナントBが設定される。最後に、テナントAにアクセスしたデバイス101がテナントBに新規登録(移動)される。 In FIG. 4, it is assumed that the resource server 104 operates a device management service for managing setting information and operation information of the device 101, for example. Tenant transfer processing is roughly divided into three steps. First, the device 101 is registered with tenant A (tenant before movement). Next, tenant B is set as the tenant to which the device registered in tenant A is moved. Finally, the device 101 that accessed Tenant A is newly registered (moved) to Tenant B.

まず、デバイス101をテナントAに登録する流れについて説明する。図4のS401~S409がこの工程に相当する。 First, the flow of registering the device 101 with the tenant A will be described. S401 to S409 in FIG. 4 correspond to this step.

S401にて、端末102は、テナントAのユーザーの指示に基づき、デバイス101をテナントAに登録するため、リソースサーバー104へデバイス登録キーを要求する。 In step S<b>401 , the terminal 102 requests the resource server 104 for a device registration key in order to register the device 101 with tenant A based on an instruction from the user of tenant A. FIG.

S402にて、リソースサーバー104は、端末102からの要求に基づき、認可サーバー102へデバイス登録キーを要求する。このとき、リソースサーバー104は、リソースサーバー104にログインしているユーザーの権限でデバイス登録キーを要求する。 At S<b>402 , resource server 104 requests a device registration key from authorization server 102 based on the request from terminal 102 . At this time, the resource server 104 requests the device registration key with the authority of the user logged into the resource server 104 .

S403にて、認可サーバー102の登録キー生成部314は、リソースサーバー104からの要求に基づいて権限検証を行い、その権限検証が成功した場合にテナントAに登録するためのデバイス登録キーを生成し、デバイス登録キー管理テーブル(表3)に登録する。なお、権限検証に失敗した場合には、その旨をリソースサーバー104に返してもよい。この場合、リソースサーバー104は更に、端末102に権限検証が失敗した旨を通知することとなる。 In S403, the registration key generation unit 314 of the authorization server 102 performs authority verification based on the request from the resource server 104, and generates a device registration key for registering with tenant A when the authority verification is successful. , is registered in the device registration key management table (Table 3). It should be noted that, if the authorization verification fails, that fact may be returned to the resource server 104 . In this case, the resource server 104 will also notify the terminal 102 that the authorization verification has failed.

S404にて、認可サーバー103は、要求に応答して、リソースサーバー104に対して生成したデバイス登録キーを返す。 In S404, authorization server 103 returns the generated device registration key to resource server 104 in response to the request.

S405にて、リソースサーバー104は、認可サーバー103から受信したデバイス登録キーを端末100へ返す。このとき、例えば、端末102が有するWebブラウザー(不図示)等にて、受信したデバイス登録キーが表示されてよい。 In S<b>405 , resource server 104 returns the device registration key received from authorization server 103 to terminal 100 . At this time, for example, the received device registration key may be displayed on a web browser (not shown) of the terminal 102 .

S406にて、端末102は、テナントAのユーザーの指示に基づいて、デバイス101へデバイス登録キーを入力する。例えば、端末102は、デバイス101にアクセスし、デバイス101が提供する画面を介してデバイス登録キーを入力してよい。または、ユーザーがデバイス101の入力装置を使用してデバイス101に直接入力するような構成であってもよい。 In S406, the terminal 102 inputs the device registration key to the device 101 based on the instruction of the tenant A user. For example, terminal 102 may access device 101 and enter a device registration key via a screen provided by device 101 . Alternatively, the configuration may be such that the user directly inputs to the device 101 using the input device of the device 101 .

S407にて、デバイス101のテナント登録部302は、入力されたデバイス登録キー、自身のデバイスシリアル番号、及び、自身が保持する証明書の情報を認可サーバー103へ送信し、デバイス登録要求を行う。 In S407, the tenant registration unit 302 of the device 101 transmits the input device registration key, its own device serial number, and the information of its own certificate to the authorization server 103, and requests device registration.

S408にて、認可サーバー103のクライアント生成部312は、デバイス101から受信した証明書を用いてデバイス101を認証する。また、認証が成功すると、クライアント生成部312は、受信したデバイス登録キーからテナントID(すなわち、テナントAのテナントID)を抽出し、クライアントIDとシークレットを生成して保存する。なお、認証に失敗した場合には、その旨をデバイス101に返してよい。 In S<b>408 , client generation unit 312 of authorization server 103 authenticates device 101 using the certificate received from device 101 . Also, when the authentication succeeds, the client generation unit 312 extracts the tenant ID (that is, the tenant ID of tenant A) from the received device registration key, generates and stores the client ID and secret. Note that if the authentication fails, that fact may be returned to the device 101 .

S409にて、認可サーバー103は、生成したクライアントIDとシークレットをデバイス101に返す。デバイス101のシークレット保持部303は、認可サーバー103から受信したクライアントIDおよびシークレットを保存する。この時点で、デバイス101はテナントAに登録されたことになる。なお不図示であるが、リソースサーバー104は認可サーバー103へ問い合わせることにより、各デバイスに対応するクライアントIDのリストを取得可能であるとする。 In S<b>409 , authorization server 103 returns the generated client ID and secret to device 101 . Secret holding unit 303 of device 101 holds the client ID and secret received from authorization server 103 . At this point, the device 101 has been registered with Tenant A. Although not shown, it is assumed that the resource server 104 can obtain a list of client IDs corresponding to each device by inquiring the authorization server 103 .

続いて、テナントAに登録済みのデバイスをテナントBへ移動させるための設定を行う流れについて説明する。図4のS411~S413がこの工程に相当する。 Next, a flow of setting for moving a device registered in tenant A to tenant B will be described. S411 to S413 in FIG. 4 correspond to this step.

S411にて、端末102は、テナントAのユーザーの指示に基づいて、デバイス101が所属するテナントをテナントBへ移動することをリソースサーバー104に対して指示する。ここでの指示の方法は、図10に示した画面を用いて行われることとする。 In step S<b>411 , the terminal 102 instructs the resource server 104 to move the tenant to which the device 101 belongs to the tenant B based on the instruction of the user of the tenant A. It is assumed that the instruction method here is performed using the screen shown in FIG.

S412にて、リソースサーバー104は、認可サーバー103に対して、デバイス101のクライアントIDを指定し、テナント移動を指示する。上述したように、リソースサーバー104は、デバイスに対応するクライアントIDのリストを取得可能であり、ここで指定されるクライアントIDは、デバイス101のシリアル番号に対応するクライアントIDを示すことで行われる。 In S412, the resource server 104 designates the client ID of the device 101 and instructs the authorization server 103 to move the tenant. As described above, the resource server 104 can acquire a list of client IDs corresponding to devices, and the client IDs specified here are performed by indicating the client IDs corresponding to the serial numbers of the devices 101 .

S413にて、認可サーバー103の移動先テナント情報登録部313は、クライアントIDに紐づけて移動先のテナントID(すなわち、テナントBのテナントID)をクライアント管理テーブル(表2)の移動先テナントIDに登録する。この時点で、テナント移動の準備ができたことになる。 In S413, the destination tenant information registration unit 313 of the authorization server 103 associates the destination tenant ID with the client ID (that is, the tenant ID of tenant B) as the destination tenant ID of the client management table (Table 2). to register. At this point, preparations for tenant migration are complete.

最後に、デバイス101がテナントBへ新規登録を行う流れについて説明する。図4のS421~S433がこの工程に相当する。 Finally, the flow of new registration of the device 101 to the tenant B will be described. S421 to S433 in FIG. 4 correspond to this step.

S421にて、デバイス101のトークン要求部304は、デバイス101がリソースサーバー103のAPIを使用するために、認可サーバー103へクライアントIDとシークレットを送信し、認可トークンを要求する。 In S421, the token requesting unit 304 of the device 101 transmits the client ID and secret to the authorization server 103 to request an authorization token so that the device 101 can use the API of the resource server 103. FIG.

S422にて、認可サーバー103のトークン発行部311は、デバイス101から受信したクライアントIDとシークレットの組が認可サーバー103に登録されているか否かを、クライアント管理テーブル(表2)を参照して検証する。さらに、トークン発行部311は、クライアントIDに紐づく移動先テナント情報の有無を確認する。このとき、現在所属しているテナントの種類に応じて、確認処理の有無を判断してもよい。この処理については、図5を用いて後述する。 In S422, the token issuing unit 311 of the authorization server 103 refers to the client management table (Table 2) to verify whether the set of the client ID and secret received from the device 101 is registered in the authorization server 103. do. Furthermore, the token issuing unit 311 confirms whether there is destination tenant information associated with the client ID. At this time, the presence or absence of confirmation processing may be determined according to the type of tenant to which the tenant currently belongs. This processing will be described later with reference to FIG.

クライアント認証に成功し、かつ移動先テナント情報が存在する場合、S423にて、トークン発行部311は、デバイス101へ移動先となるテナントID(すなわち、テナントBのID)を返す。このとき、レスポンスとして、例えば、HTTPステータスコード“403”を返すことが考えられるが、これに限定するものではない。なお、クライアント認証に失敗した場合は、その旨をデバイス101に返してよい。 If the client authentication is successful and the destination tenant information exists, the token issuing unit 311 returns the destination tenant ID (that is, the ID of tenant B) to the device 101 in S423. At this time, an HTTP status code "403", for example, may be returned as a response, but the present invention is not limited to this. Note that if the client authentication fails, that fact may be returned to the device 101 .

S424にて、デバイス101のトークン要求部304は、移動先のテナントIDが認可サーバー103から返されると、登録キー要求部305を呼び出す。登録キー要求部305は、移動先テナントIDとデバイス101が持つ証明書を付与して認可サーバー103へデバイス登録キーを要求する。 In S<b>424 , the token requesting unit 304 of the device 101 calls the registration key requesting unit 305 when the tenant ID of the migration destination is returned from the authorization server 103 . The registration key requesting unit 305 requests the device registration key from the authorization server 103 by assigning the migration destination tenant ID and the certificate possessed by the device 101 .

S425にて、認可サーバー103の登録キー生成部314は、デバイス101から受信した証明書に基づいてクライアント認証を行い、デバイス101が想定したベンダーの製品でありデバイス登録キーを発行して良いか否かを判定する。発行して良いと判定した場合、登録キー生成部314は、デバイス101をテナントBに登録するためのデバイス登録キーを生成し、デバイス登録キー管理テーブル(表3)に登録する。 In S425, the registration key generation unit 314 of the authorization server 103 performs client authentication based on the certificate received from the device 101, and determines whether the device 101 is a product of an assumed vendor and whether a device registration key can be issued. determine whether If it is determined that the issuance is permitted, the registration key generation unit 314 generates a device registration key for registering the device 101 with the tenant B, and registers it in the device registration key management table (Table 3).

S426にて、登録キー生成部314は、生成したデバイス登録キーを、要求に対する応答としてデバイス101へ返す。 In S426, registration key generation unit 314 returns the generated device registration key to device 101 as a response to the request.

S427にて、デバイス101のテナント登録部302は、S426にて取得したデバイス登録キー、デバイスシリアル番号、及び証明書の情報を認可サーバー103へ送信し、デバイス登録要求を行う。 In S427, the tenant registration unit 302 of the device 101 transmits the device registration key, device serial number, and certificate information acquired in S426 to the authorization server 103, and requests device registration.

S428にて、認可サーバー103のクライアント生成部312は、S427にてデバイス101から受信した証明書を用いてデバイス101を認証する。また、認証が成功すると、クライアント生成部312は、S427にて受信したデバイス登録キーからテナントID(すなわち、テナントBのID)を抽出し、クライアントIDとシークレットを生成して保存する。なお、認証に失敗した場合には、その旨をデバイス101に返してよい。 In S428, client generation unit 312 of authorization server 103 authenticates device 101 using the certificate received from device 101 in S427. Also, when the authentication succeeds, the client generation unit 312 extracts the tenant ID (that is, the ID of tenant B) from the device registration key received in S427, generates and stores the client ID and secret. Note that if the authentication fails, that fact may be returned to the device 101 .

S429にて、認可サーバー103は、S428にて生成したクライアントIDとシークレットをデバイス101に返す。 In S429, authorization server 103 returns to device 101 the client ID and secret generated in S428.

S430にて、デバイス101のシークレット保持部303は、S429にて認可サーバー103から受信したクライアントIDとシークレットを保存する。 At S430, secret holding unit 303 of device 101 saves the client ID and secret received from authorization server 103 at S429.

S431にて、デバイス101のトークン要求部304は、S430にて取得した新しいクライアントIDとシークレットを認可サーバー103へ送信し、認可トークンを要求する。 In S431, the token requesting unit 304 of the device 101 transmits the new client ID and secret acquired in S430 to the authorization server 103 to request an authorization token.

S432にて、認可サーバー103のトークン発行部311は、受信したクライアントIDとシークレットの組が認可サーバー103に登録されているか否かを、クライアント管理テーブル(表2)を参照して検証する。さらに、トークン発行部311は、クライアントIDに紐づく移動先テナント情報の有無を確認する。 In S432, the token issuing unit 311 of the authorization server 103 refers to the client management table (Table 2) to verify whether the received set of client ID and secret is registered in the authorization server 103. FIG. Furthermore, the token issuing unit 311 confirms whether there is destination tenant information associated with the client ID.

クライアント認証に成功し、かつ移動先テナント情報が存在しない場合、S433にて、トークン発行部311は、デバイス101へ認可トークンを返す。以後、図4では不図示となるが、デバイス101は、S433にて受信した認可トークンをリソースサーバー104へ送る。更に、リソースサーバー104は、認可トークンを認可サーバー103へ送る。そして、認可サーバー103は、認可トークンを検証し、正当性が確認されることにより、デバイス101がリソースサーバー104のAPIを使用することが可能となる。トークンのやり取りを前述したJWTで行う場合、リソースサーバー104は、認可サーバー103へ認可トークンは送らず自身で認可トークンの検証を行う。 If the client authentication succeeds and the migration destination tenant information does not exist, the token issuing unit 311 returns an authorization token to the device 101 in S433. Thereafter, although not shown in FIG. 4, the device 101 sends the authorization token received in S433 to the resource server 104. FIG. In addition, resource server 104 sends an authorization token to authorization server 103 . Then, the authorization server 103 verifies the authorization token, and by confirming its validity, the device 101 can use the API of the resource server 104 . When exchanging tokens using JWT as described above, the resource server 104 verifies the authorization token by itself without sending the authorization token to the authorization server 103 .

なお、S422の時点で、クライアント認証に成功し、かつ移動先テナント情報が存在しない場合、テナントAにおける認可トークンがデバイス101に返される。その後、この認可トークンを用いて、デバイス101は、テナントAにおけるリソースにてAPIを利用することが可能となる。この場合、テナントの移動は行われないこととなる。 It should be noted that, at the time of S422, if the client authentication is successful and the migration destination tenant information does not exist, the authorization token for tenant A is returned to the device 101. FIG. Using this authorization token, the device 101 can then use the API on the resource in Tenant A. In this case, the tenant will not be moved.

以上説明したフローを実行することにより、テナントAに登録されたデバイス101はテナントBへ新規登録(移動)することが可能となる。 By executing the flow described above, the device 101 registered in tenant A can be newly registered (moved) to tenant B. FIG.

(移動先テナント情報の確認処理)
図5は、認可サーバー103において、デバイス101からトークン取得要求を受信した際の処理の流れを示したフローチャートである。本処理フローは、図4のS422の工程にて行われる。
(Confirmation processing of destination tenant information)
FIG. 5 is a flowchart showing the flow of processing when the authorization server 103 receives a token acquisition request from the device 101. As shown in FIG. This processing flow is performed in the step of S422 in FIG.

S501にて、認可サーバー103のトークン発行部311は、デバイス101からトークン取得要求を受け、クライアントIDとシークレットを受信する。これは、図4のS421に対応する。 In S501, the token issuing unit 311 of the authorization server 103 receives a token acquisition request from the device 101 and receives the client ID and secret. This corresponds to S421 in FIG.

S502にて、トークン発行部311は、受信したクライアントIDをキーとしてクライアント管理テーブル(表2)を参照し、クライアント認証を行う。ここでクライアント認証に失敗した場合は、本処理フローを終了してもよい。この場合、クライアント認証に失敗したことがデバイス101に通知される。 In S502, the token issuing unit 311 performs client authentication by referring to the client management table (Table 2) using the received client ID as a key. If client authentication fails here, this processing flow may end. In this case, the device 101 is notified that client authentication has failed.

S503にて、トークン発行部311は、クライアントIDをキーとしてクライアント管理テーブル(表2)を参照し、デバイス101が所属するテナントIDを取得する。 In S503, the token issuing unit 311 obtains the tenant ID to which the device 101 belongs by referring to the client management table (Table 2) using the client ID as a key.

S504にて、トークン発行部311は、テナント101が所属するテナントの種別が特定の種別か否かを判定する。特定の種別の例として、販売テナントと顧客テナントが挙げられる。例えば、デバイス101が販売テナントに登録されている場合にのみテナント移動の可能性があるとすれば、特定の種別を販売テナントとして判定を行うことで、その他の種別のテナントに対する移動情報の不要な確認を省略することができる。テナントの種別に関しては後述する。特定の種別であると判定された場合(S504にてYES)S505へ進み、特定の種別でないと判定された場合(S504にてNO)S507へ進む。 In S504, the token issuing unit 311 determines whether the type of tenant to which the tenant 101 belongs is a specific type. Examples of specific types include sales tenants and customer tenants. For example, if there is a possibility of tenant movement only when the device 101 is registered as a sales tenant, by determining a specific type as a sales tenant, movement information for tenants of other types is unnecessary. Confirmation can be omitted. The types of tenants will be described later. If it is determined to be the specific type (YES at S504), the process proceeds to S505, and if it is determined not to be the specific type (NO at S504), the process proceeds to S507.

S505にて、トークン発行部311は、クライアント管理テーブル(表2)を参照して、テナント移動情報の有無を確認する。テナント移動情報が存在する場合(S505にてYES)S506へ進み、テナント移動情報が存在しない場合(S505にてNO)S507へ進む。 In S505, the token issuing unit 311 refers to the client management table (Table 2) to confirm the presence or absence of tenant transfer information. If the tenant move information exists (YES at S505), the process proceeds to S506, and if the tenant move information does not exist (NO at S505), the process proceeds to S507.

S506にて、トークン発行部311は、トークン取得要求に対する応答として、デバイス101に移動先のテナントIDを返す。これは、図4のS423に対応する。そして、本処理フローを終了する。 In S506, the token issuing unit 311 returns the destination tenant ID to the device 101 as a response to the token acquisition request. This corresponds to S423 in FIG. Then, this processing flow ends.

S507にて、トークン発行部311は、認可トークンを発行し、トークン取得要求に対する応答として、デバイス101に認可トークンを返す。これは、テナントの移動を行うことなく、認可トークンの発行処理を行う場合に相当する。そして、本処理フローを終了する。 In S507, the token issuing unit 311 issues an authorization token and returns the authorization token to the device 101 as a response to the token acquisition request. This corresponds to issuing authorization token without moving the tenant. Then, this processing flow ends.

上述したテナント種別は、認可サーバー103においてテナント管理テーブルで管理されている。表4は、本実施形態に係るテナント管理テーブルの例を示す。テナントID、テナント名、テナント種別、および作成日時が対応付けて管理されている。ここでは、テナント種別の例として、「販売テナント」と「顧客テナント」が示されているが、他の種別が用いられてもよい。また、テナントの種別ごとに別のテーブルで管理する構成をとってもよい。

Figure 0007208807000004
The tenant types described above are managed in the tenant management table in the authorization server 103 . Table 4 shows an example of a tenant management table according to this embodiment. Tenant ID, tenant name, tenant type, and creation date and time are associated and managed. Here, "sales tenant" and "customer tenant" are shown as examples of tenant types, but other types may be used. Also, a configuration in which each type of tenant is managed in a separate table may be adopted.
Figure 0007208807000004

以上、本実施形態のように、認可サーバー103からテナント移動指示を受信したデバイス101が移動先のテナントへの新規登録を要求することで、テナント分離の原則に反することなく、かつ、ユーザーの手間が生じずにテナントの移動が可能となる。 As described above, as in this embodiment, the device 101 that receives the tenant move instruction from the authorization server 103 requests new registration to the tenant of the move destination. It is possible to move tenants without causing

<第二の実施形態>
本発明に係る第二の実施形態について、図6を用いて説明する。第一の実施形態ではデバイス101がテナント移動後、移動元のテナント(上記の例では、テナントA)にクライアントが存在したままとなっている。本実施形態では、移動元のテナントにおいてクライアントを削除、或いは無効化する方法について説明する。なお、第一の実施形態と重複する構成については、説明を省略する。
<Second embodiment>
A second embodiment according to the present invention will be described with reference to FIG. In the first embodiment, after the device 101 moves to a tenant, the client remains in the tenant of the move source (tenant A in the above example). In the present embodiment, a method for deleting or invalidating a client in the migration source tenant will be described. Note that the description of the configuration that overlaps with the first embodiment will be omitted.

[テナント移動処理]
図6は、本実施形態に係る、デバイス101がテナントAからテナントBに移動する流れを示したシーケンス図である。第一の実施形態にて述べた図4のシーケンスと同様の処理については説明を省略する。図4との差分は、S601~S603の工程が追加となっている部分である。認可サーバー103にてテナントBにクライアントが新規作成され(S428)、デバイス101がクライアントIDとシークレットを受信して保存した後(S429~S403)、S601~S603の処理が行われる。
[Tenant move process]
FIG. 6 is a sequence diagram showing the flow of movement of the device 101 from tenant A to tenant B according to this embodiment. Description of the same processing as the sequence of FIG. 4 described in the first embodiment is omitted. The difference from FIG. 4 is that steps S601 to S603 are added. A new client is created in tenant B by the authorization server 103 (S428), and after the device 101 receives and stores the client ID and secret (S429 to S403), the processes of S601 to S603 are performed.

S601にて、デバイス101のテナント登録部302は、テナントAを指定してデバイス削除要求を行う。このとき、デバイス削除要求として、削除対象となるテナントAのクライアントIDとこれに対応するシークレットが送信される。 In S601, the tenant registration unit 302 of the device 101 designates the tenant A and requests to delete the device. At this time, the client ID of tenant A to be deleted and the corresponding secret are transmitted as a device deletion request.

S602にて、認可サーバー103のクライアント生成部312は、S601にてデバイス101から受信したテナントAのクライアントIDとシークレットを用いてクライアント認証を行う。認証が成功すると、クライアント生成部312は、指定されたクライアントIDのクライアント情報をクライアント管理テーブル(表2)から削除する。なお、クライアントの削除ではなく無効化するようにクライアント管理テーブルにフラグを設定し、再利用可能な状態にするような構成であってもよい。 In S602, the client generation unit 312 of the authorization server 103 performs client authentication using the client ID and secret of tenant A received from the device 101 in S601. When the authentication succeeds, the client generation unit 312 deletes the client information of the designated client ID from the client management table (Table 2). Note that a configuration may be employed in which a flag is set in the client management table to invalidate the client rather than delete the client, thereby making the client reusable.

S603にて、クライアント生成部312は、要求に対する応答として、削除完了をデバイス101へ返却する。更に、デバイス101のシークレット保持部303は、保持しているテナントAのクライアントIDとシークレットを削除する。その後、S431の処理へ進む。 In S603, the client generation unit 312 returns deletion completion to the device 101 as a response to the request. Furthermore, the secret holding unit 303 of the device 101 deletes the client ID and secret of the tenant A that it holds. After that, the process proceeds to S431.

以上、本実施形態により、第一の実施形態の効果に加え、移動元のテナントにおけるクライアント情報の削除もしくは無効化が可能となる。 As described above, according to this embodiment, in addition to the effects of the first embodiment, it is possible to delete or invalidate the client information in the tenant of the migration source.

なお、本実施形態において、認証エラー等により、移動先のテナント(上記の例では、テナントB)への移動に失敗した場合には移動元のテナントにおけるクライアント情報の削除または無効化は行われない。 In this embodiment, if the migration to the destination tenant (tenant B in the above example) fails due to an authentication error, etc., the client information in the migration source tenant will not be deleted or invalidated. .

<第三の実施形態>
本発明に係る第三の実施形態について、図7を用いて説明する。なお、第一の実施形態と重複する構成については、説明を省略する。本実施形態では、認可サーバー103へ移動先のテナント情報を設定する際に、指定されたテナントへの移動が可能か否かを判定する。販売テナントと顧客テナントの例を挙げると、販売テナントが顧客テナントと契約を結びサービスを提供する場合、これらのテナント間には販売関係が結ばれる。この販売関係が結ばれている場合のみ、テナントの移動を可能とする。
<Third Embodiment>
A third embodiment according to the present invention will be described with reference to FIG. Note that the description of the configuration that overlaps with the first embodiment will be omitted. In this embodiment, when the destination tenant information is set in the authorization server 103, it is determined whether or not it is possible to move to the specified tenant. Taking the example of a sales tenant and a customer tenant, a sales relationship is established between the sales tenant when the sales tenant contracts with the customer tenant to provide services. Tenants can be moved only when this sales relationship is established.

テナント間の販売関係は販売関係管理テーブルにて管理される。表5は、本実施形態に係る販売関係管理テーブルの例を示す。表5の例では、テナントID「101AA」の販売テナントは、テナントID「1001AA」と「1002AA」の顧客テナントと販売関係がある。サービスは、販売テナントが顧客テナントに対し使用を許可している(提供している)サービス(ライセンス)である。

Figure 0007208807000005
Sales relationships between tenants are managed in a sales relationship management table. Table 5 shows an example of a sales relationship management table according to this embodiment. In the example of Table 5, the sales tenant with tenant ID "101AA" has a sales relationship with customer tenants with tenant IDs "1001AA" and "1002AA". A service is a service (license) permitted (provided) by a sales tenant to a customer tenant.
Figure 0007208807000005

また、販売テナントが複数存在し、販売テナント間の関係でもテナントの移動可否を判断できる場合がある。例えば、販売会社が顧客のテナントを直接管理する販売形態を「直接販売」と呼ぶ。なお、直接販売の場合でも販売会社が複数階層を持つこともできる。一方、販売会社が販売代理店を介してクラウドサービスを提供し、販売代理店が顧客のテナントを管理する販売形態を「間接販売」と呼ぶ。このとき、直接販売の販売形態を持つテナント間にだけ、デバイスのテナント移動を許可することが考えられる。 In addition, there may be multiple sales tenants, and it may be possible to determine whether the tenant can be moved based on the relationship between the sales tenants. For example, a sales form in which a sales company directly manages customer tenants is called "direct sales." Note that even in the case of direct sales, a sales company can have multiple hierarchies. On the other hand, a sales form in which a sales company provides cloud services through a sales agent and the sales agent manages customer tenants is called "indirect sales." At this time, it is conceivable to permit device tenant migration only between tenants having a sales form of direct sales.

表6は、本実施形態に係る、顧客テナントも含めた販売テナント間の販売形態管理テーブルの例を示す。表6の例ではテナントID「101AA」の販売テナントが管理するテナントとしてテナントID「102AA」と「111AA」の販売テナントが存在する。テナント種別は、テナント管理テーブル(表4)にて管理されており、テナントIDをキーにして紐づける。例えば、テナントID「101AA」と「102AA」のテナント間の販売形態は「直接販売」であり、テナントID「101AA」と「111AA」のテナント間の販売形態は「間接販売」である。また、テナントID「102AA」の販売テナントが管理するテナントとしてテナントID「103AA」の販売テナントとテナントID「1001AA」の顧客テナントが存在する。これらは両者とも販売形態は「直接販売」である。また、テナントID「111AA」の販売テナントが管理するテナントとしてテナントID「1101AA」の顧客テナントが存在する。このテナント間の販売形態も「直接販売」である。

Figure 0007208807000006
Table 6 shows an example of a sales form management table between sales tenants including customer tenants according to this embodiment. In the example of Table 6, there are sales tenants with tenant IDs "102AA" and "111AA" as tenants managed by the sales tenant with tenant ID "101AA". The tenant type is managed in the tenant management table (Table 4), and is linked using the tenant ID as a key. For example, the sales form between tenants with tenant IDs "101AA" and "102AA" is "direct sales", and the sales form between tenants with tenant IDs "101AA" and "111AA" is "indirect sales". In addition, as tenants managed by the sales tenant with tenant ID "102AA", there are a sales tenant with tenant ID "103AA" and a customer tenant with tenant ID "1001AA". Both of these are "direct sales" in the form of sales. Also, there is a customer tenant with a tenant ID of "1101AA" as a tenant managed by the sales tenant with a tenant ID of "111AA". This form of sales between tenants is also “direct sales”.
Figure 0007208807000006

テナントID「101AA」の販売テナントにデバイスが登録されているとして、「直接販売」の関係があるテナントにのみデバイスを移動可能であるとする。この場合、テナントID「101AA」の販売テナントから移動可能なテナントは、テナントID「102AA」、「102AA」、「103AA」、「1001AA」のテナントとなる。この場合は、階層構造により、更に下位のテナントに移動可能であるとする。なお、テナントID「111AA」と「1101AA」のテナントには移動できない。 Assume that a device is registered in a sales tenant with a tenant ID of "101AA" and that the device can be moved only to a tenant with a "direct sales" relationship. In this case, tenants that can be moved from the sales tenant with tenant ID "101AA" are tenants with tenant IDs "102AA", "102AA", "103AA", and "1001AA". In this case, it is possible to move to a lower tenant according to the hierarchical structure. Note that it is not possible to move to tenants with tenant IDs "111AA" and "1101AA".

(移動先登録処理)
図7は、本実施形態に係る、移動先登録処理の流れを示したフローチャートである。本処理フローは、認可サーバー103において、移動先テナント情報の登録要求を受信した際に実行され、例えば、図4のS413の工程にて行われる。
(Destination registration process)
FIG. 7 is a flowchart showing the flow of destination registration processing according to this embodiment. This processing flow is executed when the authorization server 103 receives a registration request for the destination tenant information, and is executed, for example, in step S413 of FIG.

S701にて、認可サーバー103の移動先テナント情報登録部313は、リソースサーバー104などから移動対象のクライアントと移動先テナント情報を受信する。 In S701, the migration destination tenant information registration unit 313 of the authorization server 103 receives the migration target client and the migration destination tenant information from the resource server 104 or the like.

S702にて、移動先テナント情報登録313は、受信した移動先のテナントが、移動対象のクライアントのテナント(デバイス101が現在登録されているテナント)から移動可能か否かを判定する。移動可能か否かの判定は、上述したように、表5や表6などを用いて行われる。移動可能であると判定された場合(S702にてYES)S703へ進み、移動可能でないと判定された場合(S702にてNO)S704へ進む。 In S702, the move destination tenant information registration 313 determines whether or not the received move destination tenant can be moved from the tenant of the client to be moved (the tenant in which the device 101 is currently registered). Determination as to whether or not it is possible to move is made using Table 5, Table 6, etc., as described above. If it is determined to be movable (YES at S702), the process proceeds to S703, and if it is determined not to be movable (NO at S702), the process proceeds to S704.

S703にて、移動先テナント情報登録部313は、移動先のテナントIDをクライアント管理テーブルに登録する。そして、本処理フローを終了する。 In S703, the destination tenant information registration unit 313 registers the destination tenant ID in the client management table. Then, this processing flow ends.

S704にて、移動先テナント情報登録部313は、要求されたテナントIDは登録できないとして、デバイス101へエラーを返す。この場合、再度移動先のテナントの指定を受け付けるような構成でもよい。そして、本処理フローを終了する。 In S704, the destination tenant information registration unit 313 returns an error to the device 101, stating that the requested tenant ID cannot be registered. In this case, the configuration may be such that the designation of the destination tenant is accepted again. Then, this processing flow ends.

以上、本実施形態により、第一の実施形態の効果に加え、移動先として要求されたテナントへの移動の可否を販売関係に基づいて判定し、その可否をデバイス101に通知することが可能となる。 As described above, according to the present embodiment, in addition to the effects of the first embodiment, it is possible to determine whether or not to move to a tenant requested as a destination based on the sales relationship, and to notify the device 101 of the possibility or denial. Become.

なお、上記の例では、販売関係に基づいて移動可能か否かを判定したが、これに限定するものではない。そのほかのテナント間の関係に基づいて移動の可否を判定してもよい。 In the above example, whether or not it is possible to move is determined based on the sales relationship, but the present invention is not limited to this. It may be possible to determine whether or not to move based on other relationships between tenants.

<第四の実施形態>
本発明に係る第四の実施形態について、図8、図9、及び図11を用いて説明する。上記の実施形態ではデバイスの利用者が意識することなく、移動先テナントが登録された後に、使用するデバイスのテナントが自動的に変更されていた。しかし、この場合、顧客が意図しないタイミングでテナントの移動が実行され、クラウドの利用が開始されてしまう可能性がある。そこで本実施形態では販売テナントで移動先テナントの登録が完了しただけではテナント移動は開始されず、デバイスの利用者(管理者)が能動的にテナントの移動を指示する形態について説明する。なお、第一の実施形態と重複する構成については、説明を省略する。
<Fourth embodiment>
A fourth embodiment according to the present invention will be described with reference to FIGS. 8, 9 and 11. FIG. In the above embodiment, the tenant of the device to be used is automatically changed after the destination tenant is registered without the user of the device being aware of it. However, in this case, there is a possibility that the tenant will move at a timing unintended by the customer, and use of the cloud will start. Therefore, in the present embodiment, tenant migration is not started just by completing the registration of the destination tenant at the sales tenant, and a form in which the device user (administrator) actively instructs tenant migration will be described. Note that the description of the configuration that overlaps with the first embodiment will be omitted.

なお、デバイスの管理者が移動先テナントのテナントIDも含めて指示可能にすれば、認可サーバー103に移動先テナント情報の登録は技術的に必須ではなくなるが、本実施形態ではデバイスの管理者の指示のみでテナントを移動しないように、移動先テナント情報の事前登録も必須とした構成について説明する。 It should be noted that if the device administrator can instruct the tenant including the tenant ID of the destination tenant, the registration of the destination tenant information in the authorization server 103 is not technically essential, but in this embodiment, the device administrator In order not to move the tenant only with instructions, we will explain the configuration that requires pre-registration of the destination tenant information.

(画面構成)
図11は、本実施形態に係るデバイス101のタッチパネル等のディスプレイ210に表示されるUI(User Interface)画面の例である。UI画面1100は、例えば、デバイス101の管理者がデバイス101のテナント登録状況を確認したい場合などに表示される。UI画面1100において、テナントIDが表示されている横にテナント移動ボタン1101が配置されている。デバイス101の管理者は、テナント移動ボタン1101を押すことにより、テナント移動の実行を指示する。なお、テナント移動ボタン1101が押下される際には、すでに移動先のテナント情報が登録されているものとする。したがって、移動先のテナント情報が登録されていない場合には、テナント移動ボタン1101は表示されないようにしてもよいし、押下できないような制御がなされてもよい。また、移動先および移動元のテナント情報をUI画面1100上に表示してもよい。
(screen structure)
FIG. 11 is an example of a UI (User Interface) screen displayed on the display 210 such as a touch panel of the device 101 according to this embodiment. The UI screen 1100 is displayed, for example, when the administrator of the device 101 wants to check the tenant registration status of the device 101 . On the UI screen 1100, a tenant transfer button 1101 is arranged next to the tenant ID displayed. The administrator of the device 101 presses the move tenant button 1101 to give an instruction to move the tenant. It should be noted that, when the move tenant button 1101 is pressed, it is assumed that the tenant information of the move destination has already been registered. Therefore, if the tenant information of the move destination is not registered, the tenant move button 1101 may not be displayed, or may be controlled so that it cannot be pressed. Also, the tenant information of the move destination and the move source may be displayed on the UI screen 1100 .

[機能構成]
図8は、本実施形態に係るデバイス101の機能構成の例を示すブロック図である。第一の実施形態の図3(A)に示した構成に加え、テナント移動指示部801が設けられている。テナント移動指示部801は、図11のUI画面1100に示すテナント移動ボタン1101がユーザーに押されたことに応じて、認可サーバー103へテナントの移動を指示する。具体的には、テナント移動指示部801は、認可サーバー103へデバイス101のクライアントIDとシークレットを送信し、テナントの移動を指示する。
[Function configuration]
FIG. 8 is a block diagram showing an example of the functional configuration of the device 101 according to this embodiment. In addition to the configuration shown in FIG. 3A of the first embodiment, a tenant movement instruction unit 801 is provided. The tenant move instruction unit 801 instructs the authorization server 103 to move the tenant in response to the user pressing the tenant move button 1101 shown in the UI screen 1100 of FIG. Specifically, the tenant transfer instruction unit 801 transmits the client ID and secret of the device 101 to the authorization server 103 and instructs the transfer of the tenant.

[テナント移動処理]
図9は、本実施形態に係る、デバイス101がテナントAからテナントBに移動する流れを示したシーケンス図である。第一の実施形態にて述べた図4のシーケンスと同様の処理については説明を省略する。図4との差分は、S421の代わりにS901の処理が行われる点である。上述したように、本実施形態では、S411~S413にて、移動先テナント情報の事前登録が行われているものとする。
[Tenant move process]
FIG. 9 is a sequence diagram showing the flow of movement of the device 101 from tenant A to tenant B according to this embodiment. Description of the same processing as the sequence of FIG. 4 described in the first embodiment is omitted. The difference from FIG. 4 is that the process of S901 is performed instead of S421. As described above, in this embodiment, in S411 to S413, pre-registration of destination tenant information is performed.

デバイス101のテナント移動指示部801は、ユーザーによりデバイス101上にてUI画面1100のテナント移動ボタン1101を押下されたことを起因として、S901にて、認可サーバー103へテナントの移動を指示する。この処理は内部的には、図4のS421と同様に、認可サーバー103へ認可トークンを要求する処理と同じで良い。認可サーバー103側で移動先テナント情報の設定がなければ、認可サーバー103から認可トークンが返却される。この場合、この認可トークンを用いて、デバイス101は、テナントAにおけるリソースにてAPIを利用することが可能となり、テナントの移動は行われない。 The tenant move instruction unit 801 of the device 101 instructs the authorization server 103 to move the tenant in S901 as a result of the user pressing the tenant move button 1101 on the UI screen 1100 on the device 101 . This process may be internally the same as the process of requesting an authorization token from the authorization server 103, similar to S421 in FIG. If the destination tenant information is not set on the authorization server 103 side, the authorization server 103 returns an authorization token. In this case, using this authorization token, the device 101 will be able to use APIs in resources in tenant A, and tenant migration will not occur.

以上、本実施形態により、デバイス101の管理者が意図したタイミングにてテナントの移動が可能となる。 As described above, according to this embodiment, the tenant can be moved at the timing intended by the administrator of the device 101 .

<その他の実施形態>
本発明は上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other embodiments>
The present invention supplies a program that implements one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and processes that one or more processors in the computer of the system or device read and execute the program. But it is feasible. It can also be implemented by a circuit (for example, ASIC) that implements one or more functions.

発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。 The invention is not limited to the embodiments described above, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, the claims are appended to make public the scope of the invention.

101…デバイス、102…端末、103…認可サーバー、104…リソースサーバー 101... device, 102... terminal, 103... authorization server, 104... resource server

Claims (12)

情報処理装置と、サービスを提供するサービス提供サーバーと、前記サービスを利用するための認可情報を発行する認可サーバーとを含むシステムであって、
前記認可サーバーは、
要求に応じて、情報処理装置をテナントに登録するための登録キーを発行する第1の発行手段と、
前記登録キーを用いて前記情報処理装置の登録要求を受け付けた場合に、当該情報処理装置の情報を前記テナントに登録する登録手段と、
前記テナントに登録された前記情報処理装置を識別するための認証情報を発行する第2の発行手段と、
前記認証情報を用いて前記サービスを利用するための認可情報の要求を受け付けた場合に、当該認証情報の検証結果に応じて、前記認可情報を応答する応答手段と、
前記テナントに登録されている前記情報処理装置の情報を、異なるテナントに移動させる要求を受け付ける受け付け手段と、
当該異なるテナントの情報を移動先のテナントの情報として保持する保持手段と、を有し、
前記情報処理装置は、
前記認可サーバーに対し、前記登録キーを用いて当該情報処理装置のテナントへの登録要求を行う登録要求手段と、
前記認可サーバーから、当該登録要求に基づき発行された前記認証情報を取得する取得手段と、
前記認可サーバーに対する前記認証情報を用いた認可情報の取得要求の応答として前記認可情報を取得する取得手段とを有し、
前記認可サーバーは、前記移動先のテナントの情報を保持していた場合、前記情報処理装置から前記認可情報の取得要求を受け付けた際に、当該移動先のテナントの情報を前記情報処理装置に通知する通知手段をさらに有し、
前記情報処理装置の前記登録要求手段は、前記認可サーバーが発行する前記情報処理装置を前記移動先のテナントに登録するための別の登録キーを用いて、当該情報処理装置の前記移動先のテナントへの登録要求を行う、
ことを特徴とするシステム。
A system that includes an information processing device, a service providing server that provides a service, and an authorization server that issues authorization information for using the service,
The authorization server is
a first issuing means for issuing a registration key for registering an information processing device with a tenant in response to a request;
registration means for registering information on the information processing device with the tenant when a registration request for the information processing device is received using the registration key;
a second issuing means for issuing authentication information for identifying the information processing device registered with the tenant;
response means for responding with the authorization information according to a verification result of the authentication information when a request for authorization information for using the service is received using the authentication information;
a receiving means for receiving a request to move the information of the information processing device registered with the tenant to a different tenant;
and holding means for holding the information of the different tenant as the information of the destination tenant,
The information processing device is
registration request means for requesting the authorization server to register the information processing device as a tenant using the registration key;
acquisition means for acquiring the authentication information issued based on the registration request from the authorization server;
acquisition means for acquiring the authorization information as a response to an authorization information acquisition request to the authorization server using the authentication information;
When the authorization server holds the information of the tenant of the migration destination, when receiving the acquisition request of the authorization information from the information processing device, the authorization server notifies the information of the tenant of the migration destination to the information processing device. further has a notification means to
The registration request means of the information processing device uses another registration key for registering the information processing device issued by the authorization server with the tenant of the destination of the movement of the information processing device. make a registration request to
A system characterized by:
前記認可サーバーは、前記情報処理装置から前記認可情報の取得要求を受け付けた際に、当該情報処理装置の情報が登録されているテナントが特定の種別のテナントであると判定された場合に、前記移動先のテナントの情報の確認処理を行うことを特徴とする請求項1に記載のシステム。 When the authorization server receives the authorization information acquisition request from the information processing device and determines that the tenant whose information on the information processing device is registered is a tenant of a specific type, the authorization server 2. The system according to claim 1, wherein confirmation processing of information of a tenant at a destination is performed. 前記認可サーバーでは、前記情報処理装置の情報が前記特定の種別のテナントに登録されていないと判定された場合、前記確認処理を行わずに前記認可情報が応答されることを特徴とする請求項2に記載のシステム。 4. The authorization server, when it is determined that the information of the information processing device is not registered in the tenant of the specific type, the authorization information is returned without performing the confirmation process. 2. The system according to 2. 前記情報処理装置は、前記サービスを利用する際に、前記認可サーバーに対し、前記認証情報を用いて前記認可情報の取得要求を行うことを特徴とする請求項1乃至3のいずれか一項に記載のシステム。 4. The apparatus according to any one of claims 1 to 3, wherein the information processing device requests the authorization server to acquire the authorization information using the authentication information when using the service. System as described. 前記情報処理装置は、ユーザーによる指示を受け付けたことに起因して、前記認可サーバーに対し、前記認証情報を用いて前記認可情報の取得要求を行うことを特徴とする請求項1乃至3のいずれか一項に記載のシステム。 4. The information processing apparatus according to any one of claims 1 to 3, wherein said information processing apparatus requests said authorization server to acquire said authorization information using said authentication information, in response to receiving an instruction from a user. or the system according to item 1. 前記情報処理装置は、前記移動先のテナントへの移動が完了したことに応じて、前記認可サーバーに対して、移動元のテナントに対応づけて登録された情報の削除を要求する手段を更に有することを特徴とする請求項1乃至5のいずれか一項に記載のシステム。 The information processing device further comprises means for requesting the authorization server to delete information registered in association with the source tenant upon completion of the migration to the destination tenant. 6. A system according to any one of claims 1 to 5, characterized in that: 前記認可サーバーは、前記情報処理装置の情報を移動可能なテナントの情報を管理する管理手段をさらに有し、
前記認可サーバーは、前記情報処理装置の情報が前記異なるテナントに移動可能であると判定した場合に、前記保持手段により前記異なるテナントの情報を移動先のテナントの情報として保持することを特徴とする請求項1乃至6のいずれか一項に記載のシステム。
The authorization server further has management means for managing information of tenants to whom the information of the information processing device can be transferred,
When the authorization server determines that the information of the information processing device can be transferred to the different tenant, the holding means holds the information of the different tenant as the information of the destination tenant. 7. A system according to any one of claims 1-6.
前記認可サーバーは、前記異なるテナントに移動可能でないと判定した場合、エラーを通知することを特徴とする請求項7に記載のシステム。 8. The system of claim 7, wherein the authorization server notifies an error if it determines that migration to the different tenant is not possible. 情報処理装置と、サービスを提供するサービス提供サーバーと、前記サービスを利用するための認可情報を発行する認可サーバーとを含むシステムにおけるテナントの移動方法であって、
前記認可サーバー、要求に応じて、情報処理装置をテナントに登録するための登録キーを発行する第1の発行工程と、
前記情報処理装置、前記認可サーバーに対し、前記登録キーを用いて当該情報処理装置のテナントへの登録要求を行う登録要求工程と、
前記認可サーバー、前記情報処理装置から前記登録要求を受け付けた場合に、当該情報処理装置の情報を前記テナントに登録する登録工程と、
前記認可サーバー、前記テナントに登録された前記情報処理装置を識別するための認証情報を発行する第2の発行工程と、
前記情報処理装置、前記認可サーバーから、前記認証情報を取得する第1の取得工程と、
前記認可サーバー、前記認証情報を用いて前記サービスを利用するための認可情報の要求を受け付けた場合に、当該認証情報の検証結果に応じて、前記認可情報を応答する応答工程と、
前記情報処理装置、前記認可サーバーに対する前記認証情報を用いた認可情報の取得要求の応答として前記認可情報を取得する第2の取得工程と、
前記認可サーバー、前記テナントに登録されている前記情報処理装置の情報を、異なるテナントに移動させる要求を受け付ける受け付け工程と、
前記認可サーバー、当該異なるテナントの情報を移動先のテナントの情報として保持する保持工程と、を有し、
前記認可サーバー、前記移動先のテナントの情報を保持していた場合、前記情報処理装置から前記認可情報の取得要求を受け付けた際に、当該移動先のテナントの情報を前記情報処理装置に通知する通知工程をさらに有し、
前記登録要求工程において、前記認可サーバーが発行する前記情報処理装置を前記移動先のテナントに登録するための別の登録キーを用いて、当該情報処理装置の前記移動先のテナントへの登録要求を行うことを特徴とするテナントの移動方法。
A method of moving a tenant in a system including an information processing device, a service providing server that provides a service, and an authorization server that issues authorization information for using the service,
a first issuing step in which the authorization server issues a registration key for registering an information processing device with a tenant in response to a request;
a registration request step in which the information processing device requests the authorization server to register the information processing device as a tenant using the registration key;
a registration step of registering information of the information processing device with the tenant when the authorization server receives the registration request from the information processing device;
a second issuing step in which the authorization server issues authentication information for identifying the information processing device registered with the tenant;
a first acquisition step in which the information processing device acquires the authentication information from the authorization server;
a response step of, when the authorization server receives a request for authorization information for using the service using the authentication information, responding with the authorization information according to a verification result of the authentication information;
a second acquisition step in which the information processing device acquires the authorization information as a response to an authorization information acquisition request to the authorization server using the authentication information;
a receiving step in which the authorization server receives a request to move the information of the information processing device registered in the tenant to a different tenant;
a holding step in which the authorization server holds the information of the different tenant as the information of the destination tenant,
When the authorization server holds the information of the tenant of the migration destination, when the acquisition request of the authorization information is received from the information processing device, the information of the tenant of the migration destination is notified to the information processing device. further having a notification step to
In the registration request step, using another registration key for registering the information processing device with the destination tenant issued by the authorization server, the information processing device is requested to be registered with the destination tenant. A method of moving a tenant, characterized in that
テナントに登録された情報に対応する情報処理装置がサービスを利用するための認可情報を発行する認可サーバーと、ネットワークを介して通信可能な当該情報処理装置であって、
前記認可サーバーから発行された認証情報を用いて、前記認可サーバーに対して認可情報を要求する要求手段と、
前記要求に基づき、前記認可サーバーから移動先のテナントの情報の通知を受信する受信手段と、
前記認可サーバーが発行する前記情報処理装置を前記移動先のテナントに登録するための登録キーを用いて、前記認可サーバーに対して、当該情報処理装置の前記移動先のテナントへの登録要求を行う登録要求手段とを有し、
前記認可サーバーでは、前記登録要求に基づき、前記情報処理装置の情報が前記移動先のテナントに登録されることを特徴とする情報処理装置。
An authorization server that issues authorization information for an information processing device corresponding to information registered in a tenant to use a service, and the information processing device that can communicate via a network,
request means for requesting authorization information from the authorization server using the authentication information issued by the authorization server;
receiving means for receiving notification of destination tenant information from the authorization server based on the request;
Using a registration key issued by the authorization server for registering the information processing device in the destination tenant, requests the authorization server to register the information processing device in the destination tenant. a registration request means;
The information processing device, wherein the authorization server registers the information of the information processing device with the tenant of the migration destination based on the registration request.
テナントに登録された情報に対応する情報処理装置がサービスを利用するための認可情報を発行する認可サーバーと、ネットワークを介して通信可能な当該情報処理装置の制御方法であって、
前記情報処理装置の要求手段が、前記認可サーバーから発行された認証情報を用いて、前記認可サーバーに対して認可情報を要求する要求工程と、
前記情報処理装置の受信手段が、前記要求に基づき、前記認可サーバーから移動先のテナントの情報の通知を受信する受信工程と、
前記情報処理装置の登録要求手段が、前記認可サーバーが発行する前記情報処理装置を前記移動先のテナントに登録するための登録キーを用いて、前記認可サーバーに対して、当該情報処理装置の前記移動先のテナントへの登録要求を行う登録要求工程とを有し、
前記認可サーバーでは、前記登録要求に基づき、前記情報処理装置の情報が前記移動先のテナントに登録されることを特徴とする情報処理装置の制御方法。
An authorization server that issues authorization information for using a service by an information processing device corresponding to information registered in a tenant, and a control method for the information processing device that can communicate via a network,
a requesting step in which the request means of the information processing device requests authorization information from the authorization server using the authentication information issued by the authorization server;
a receiving step in which the receiving means of the information processing device receives notification of the destination tenant information from the authorization server based on the request;
The registration request means of the information processing device uses a registration key issued by the authorization server for registering the information processing device with the tenant of the migration destination to the authorization server. a registration request step of requesting registration to the destination tenant,
A control method for an information processing device, wherein the authorization server registers the information of the information processing device in the tenant of the migration destination based on the registration request.
テナントに登録された情報に対応するコンピューターがサービスを利用するための認可情報を発行する認可サーバーと、ネットワークを介して通信可能な当該コンピューターを、
前記認可サーバーから発行された認証情報を用いて、前記認可サーバーに対して認可情報を要求する要求手段、
前記要求に基づき、前記認可サーバーから移動先のテナントの情報の通知を受信する受信手段、
前記認可サーバーが発行する前記コンピューターを前記移動先のテナントに登録するための登録キーを用いて、前記認可サーバーに対して、当該コンピューターの前記移動先のテナントへの登録要求を行う登録要求手段として機能させるためのプログラムであって、
前記認可サーバーでは、前記登録要求に基づき、前記コンピューターの情報が前記移動先のテナントに登録されることを特徴とするプログラム。
An authorization server that issues authorization information for the computer corresponding to the information registered in the tenant to use the service, and the computer that can communicate via the network,
request means for requesting authorization information from the authorization server using the authentication information issued by the authorization server;
Receiving means for receiving notification of destination tenant information from the authorization server based on the request;
As a registration request means for requesting the authorization server to register the computer in the destination tenant using a registration key issued by the authorization server for registering the computer in the destination tenant A program for functioning,
A program, wherein in the authorization server, the information of the computer is registered in the destination tenant based on the registration request.
JP2019008600A 2019-01-22 2019-01-22 System, tenant movement method, information processing device and its control method, and program Active JP7208807B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019008600A JP7208807B2 (en) 2019-01-22 2019-01-22 System, tenant movement method, information processing device and its control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019008600A JP7208807B2 (en) 2019-01-22 2019-01-22 System, tenant movement method, information processing device and its control method, and program

Publications (3)

Publication Number Publication Date
JP2020119147A JP2020119147A (en) 2020-08-06
JP2020119147A5 JP2020119147A5 (en) 2022-02-01
JP7208807B2 true JP7208807B2 (en) 2023-01-19

Family

ID=71890814

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019008600A Active JP7208807B2 (en) 2019-01-22 2019-01-22 System, tenant movement method, information processing device and its control method, and program

Country Status (1)

Country Link
JP (1) JP7208807B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507310B (en) * 2020-12-05 2024-03-29 广州技象科技有限公司 Building internet of things management method, device, equipment and storage medium
JP2022159845A (en) 2021-04-05 2022-10-18 キヤノン株式会社 Information processing system and method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017107396A (en) 2015-12-09 2017-06-15 キヤノン株式会社 Authority delegation system, information processing apparatus, authorization server, control method, and program
US20180167384A1 (en) 2016-12-12 2018-06-14 Sap Se Authorization code flow for in-browser applications
JP2020095569A (en) 2018-12-14 2020-06-18 キヤノン株式会社 Device management system and device management method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017107396A (en) 2015-12-09 2017-06-15 キヤノン株式会社 Authority delegation system, information processing apparatus, authorization server, control method, and program
US20180167384A1 (en) 2016-12-12 2018-06-14 Sap Se Authorization code flow for in-browser applications
JP2020095569A (en) 2018-12-14 2020-06-18 キヤノン株式会社 Device management system and device management method

Also Published As

Publication number Publication date
JP2020119147A (en) 2020-08-06

Similar Documents

Publication Publication Date Title
CN110463164B (en) System and method for resolving credentials for a device
CN106856475B (en) Authorization server and authentication collaboration system
US9230078B2 (en) Authentication system, control method thereof, service provision device, and storage medium
JP2017107396A (en) Authority delegation system, information processing apparatus, authorization server, control method, and program
US10574645B2 (en) Authority verification system, authority verification method, and computer-readable storage medium
JP6278651B2 (en) Network system, management server system, control method and program
JP6248641B2 (en) Information processing system and authentication method
JP6323994B2 (en) Content management apparatus, content management method and program
US20160014107A1 (en) Data synchronizing system, control method thereof, authorization server, and storage medium thereof
JP7096736B2 (en) System and data processing method
US10291620B2 (en) Information processing apparatus, terminal apparatus, program, and information processing system for collaborative use of authentication information between shared services
JP2013029994A (en) Server apparatus, information processing method, and program
JP7208807B2 (en) System, tenant movement method, information processing device and its control method, and program
JP5903004B2 (en) Information processing apparatus and authorization information management method
JP2016009466A (en) Web service system, authentication approval device, information processing device, information processing method, and program
US9027107B2 (en) Information processing system, control method thereof, and storage medium thereof
WO2022070414A1 (en) Control method, control program, and information processing device
JP2017120502A (en) Method for registering iot device to cloud service
JP6927282B2 (en) Information processing equipment, terminal equipment, programs and information processing systems
JP2008226148A (en) Authentication system, relay server, authentication method, and program
JP2014085995A (en) License management device, license management system and license management method
JP2011215688A (en) Database access system and method
JP2016085638A (en) Server device, terminal device, system, information processing method, and program
JP2014241113A (en) Content management device, content management system, content management method, and program
JP2019003477A (en) Information processing system, control method and program thereof

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20210103

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230106

R151 Written notification of patent or utility model registration

Ref document number: 7208807

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151