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 PDFInfo
- 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
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.
マルチテナント方式において、テナントにはいくつか種類が存在する。例えば、クラウドを利用する企業のテナント(以下、顧客テナント)のほかに、クラウドを提供する提供者側のテナント(以下、販売テナント)が存在する。利用者(顧客)が提供者と契約を交わし、提供者が顧客テナントを作成する。販売テナントは顧客テナントの管理などを行うために利用される。デバイスは顧客テナントに登録されるべきであるが、次のような理由で販売テナントに一時的に登録する場合がある。例えば、デバイスを企業に物理的に設置する設置者が、設置作業の一環としてデバイスを顧客テナントに登録したいが、その段階ではまだ顧客テナントが存在しない場合が考えられる。また、設置者が顧客テナントのユーザーでない場合は、顧客テナントへデバイスを登録するためのキーを入手していない場合も考えられる。一方で、販売テナントに登録されているデバイスを顧客が使用するためには、そのデバイスを販売テナントから顧客テナントへ移動させる必要がある。 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.
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 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
デバイス101、端末102、認可サーバー103、およびリソースサーバー104は、それぞれLAN110、WAN100を介して通信可能に接続されている。本実施形態におけるシステムでは、認可サーバー103、およびリソースサーバー104がWAN100側に位置し、LAN110側に位置するデバイス101および端末102がWAN100を介して各種サーバーに接続可能であるものとする。
A
認可サーバー103は、OAuth2.0を実現するための認可処理を行う。リソースサーバー104は、ネットワーク(LAN110、WAN100)を介して各種サービスを提供するサービス提供サーバーとして機能する。
The
端末102は、PC(Personal Computer)や携帯端末などであり、ユーザーが操作する装置である。端末102は、不図示であるが、例えば、Webブラウザーや、クラウド(認可サーバー103やリソースサーバー104)にアクセスするための専用のアプリケーションを備える。
The
デバイス101は、複写機や、スマートフォンなどの携帯端末が挙げられるが、特に限定するものではない。デバイス101は、ネットワーク(LAN110、WAN100)を介して認可サーバー103に登録され、その登録に基づいてリソースサーバー104が提供するサービスを利用する。サービスの利用例として、デバイス101は、データをリソースサーバー104にアップロードするなどが挙げられる。デバイス101もまたWebブラウザー等の各種モジュールを備える。
Examples of the
また、認可サーバー103、およびリソースサーバー104は、データベースサーバー(不図示)とネットワークを介して接続し、各サーバーモジュールが利用するデータをデータベースサーバーに格納するよう構成してもよい。さらに、認可サーバー103、およびリソースサーバー104は、同一のサーバー(コンピューター)上に構成されていてもよい。また、各サーバーは、単体のコンピューターに限らず、複数台のコンピューターで構成されたシステムであっても構わない。
Also, the
(ハードウェア構成)
図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
図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
RAM202は、CPU201の主メモリ、ワークエリア等として機能する。キーボードコントローラー205は、キーボード209やポインティングデバイス(不図示)からの入力を制御する。ディスプレイコントローラー206は、ディスプレイ210の表示を制御する。外部メモリコントローラー207は、各種データを記憶するハードディスク(HD)等の外部メモリ211におけるデータアクセスを制御する。ネットワークコントローラー2008は、WAN100、LAN110を介して接続された他の機器との通信制御処理を実行する。
A
本実施形態において、デバイス101、端末102、認可サーバー103、およびリソースサーバー104はいずれも、図2にて示した情報処理装置200の構成を有するものとする。ただし、図2の構成に限定するものではなく、ディスプレイ210を備えていなかったり、他の機能を備えていていたりしても構わない。特にIaaSとして提供される仮想的な情報処理を想定する場合においては、キーボードコントローラー205、ディスプレイコントローラー206等は設けられず、ネットワークコントローラー208を介して接続される端末に備えるキーボード209や、ディスプレイ210から操作されるよう構成される。後述の全ての説明において、特に断りのない限り、各サーバーや端末、およびデバイスにおける実行のハード上の主体は、CPU201であり、ソフトウェア上の主体は、外部メモリ211にインストールされたアプリケーションプログラムである。
In this embodiment, the
(機能構成)
図3は、デバイス101、および認可サーバー103において、特に本実施形態に係る部分の機能ブロックの構成例を示す図である。図3に示す各機能部は、各装置が有するCPU201が制御プログラムを実行することにより実現される。したがって、各装置は、図3に示す機能以外を提供可能であってよい。
(Functional configuration)
FIG. 3 is a diagram showing a configuration example of the functional blocks of the
図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
テナント登録部302は、認可サーバー103に対してデバイス101の登録を要求する。このとき、テナント登録部302は、デバイス登録キー、デバイスシリアルID、およびデバイス101が持つ証明書を認可サーバー103へ送信する。ここで保持されている証明書は、例えば、X.509形式のクライアント証明書およびその秘密鍵であり、この証明書によりデバイス101は自身をどのベンダーのデバイスであるか証明することができる。証明書は、デバイス101における証明書ストア(不図示)に保存されている。情報の送信にはJWT(JSON Web Token)を使用してもよく、その場合はJWTにデバイス登録キー、デバイスシリアルIDなどを記述し、証明書で署名する。以降省略するが、デバイス101と認可サーバー103とのやり取りではいずれもJWTを使用することができる。
The
シークレット保持部303は、デバイス101を認可サーバー103に登録後に返却される、クライアントIDとシークレットを保持する。クライアントIDは、デバイス101を一意に識別するために発行される識別情報である。また、シークレットは、クライアントID(識別情報)に対応付けられた、クライアント(ここでは、デバイス101)を認証するために用いられる認証情報である。
A
トークン要求部304は、クライアントIDとシークレットを送信して、認可トークンを認可サーバー103へ要求する。認可トークンは、リソースサーバー101が提供するサービスを利用するための認可情報であり、デバイス101がリソースサーバー104のAPIを利用する際に必要となる。
The
登録キー要求部305は、デバイス登録キーを認可サーバー103へ要求する。デバイス101がデバイス登録キーを要求する場合としては、既にテナントに登録され、そこから別のテナントに移動しようとしている場合である。本実施形態では、デバイス登録キーの要求時には、クライアントIDとシークレットが指定される。
A registration
図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
表1は、本実施形態に係るトークン管理テーブルの例を示す。トークン管理テーブルでは、認可トークンIDに紐づけてトークン種別やクライアントIDなどが管理される。ユーザーUUIDは、デバイス101に権限を委譲するユーザーを指す。なお、UUID(Universal Unique Identifier)は、重複しないユニークなID(識別情報)である。スコープは、ユーザーから権限委譲されるリソースの範囲を定義している。表1に示す例の場合、スコープが「テナント専用クライアント」となっており、ユーザーID「10000001」のユーザーの権限が、デバイス101(特定のテナントに紐づけられたクライアント)に委譲されることを意味する。
また、トークン発行部311は、クライアントIDに紐づいて、テナントの移動先情報が設定されていないか否かを判定する。本処理の詳細については後述する。
In addition, the
クライアント生成部312は、テナントIDの情報を含むデバイス登録キー、デバイスシリアルID、およびデバイス101が持つ証明書とともに、テナント登録要求をデバイス101から受け付けると、証明書を用いてクライアント認証を行う。そして、クライアント生成部312は、クライアント認証が成功した場合に、クライアントを生成する。具体的には、クライアント生成部312は、クライアントID、およびシークレットを発行し、これらをデバイスシリアルIDとテナントIDに紐づけて管理する。
Upon receiving a tenant registration request from the
移動先テナント情報登録部313は、デバイス101の移動先テナントIDを受信し、クライアントIDに紐づけて管理する。
The destination tenant information registration unit 313 receives the destination tenant ID of the
上記の各処理部が扱うデータはクライアント管理テーブルに保存される。表2は、本実施形態に係るクライアント管理テーブルの例を示す。クライアントIDは、クライアント生成部312が生成するID(識別情報)であり、本実施形態に係るシステムにて一意となる。シークレットは、クライアント生成部312にて生成され、クライアントIDとの組でクライアントの認証の際に用いられる。テナントIDは、クライアント(すなわち、デバイス101)が所属しているテナントのID(識別情報)である。デバイスシリアルIDは、デバイス101を一意に識別するためのID(識別情報)である。移動先テナントIDは、指定されるまでは空となる。
トークン管理テーブル(表1)とクライアント管理テーブル(表2)を用いて、認可サーバー103は、デバイス101とテナントを紐づけて、認可トークンを管理する。
Using the token management table (Table 1) and the client management table (Table 2), the
登録キー生成部314は、テナントIDを受信すると、このテナントIDにて示されるテナントへデバイスを登録するためのデバイス登録キーを生成する。デバイス登録キーの生成を依頼するアクター(要求主体)は2つ存在し、1つはリソースサーバー104を介したユーザーである。この場合は、登録キー生成部314は、テナントにログインしたユーザーの権限でデバイス登録キーを生成する。もう1つはデバイス101であり、この場合は、登録キー生成部314は、デバイス101が持つ証明書を受信し、証明書によるクライアント認証に成功した場合にデバイス登録キーを生成する。
Upon receiving the tenant ID, the registration
表3は、本実施形態に係るデバイス登録キー管理テーブルの例を示す。デバイス登録キーは、例えば、16桁の整数であり、テナントIDに紐づけられる。有効期限は、デバイス登録キーが使用可能な期限である。
[画面例]
図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
登録先テナント変更ボタン1001が押下されると、図10(B)に示す登録先テナントの変更画面1010が表示される。シリアル番号1011は、デバイス一覧画面1000にて選択されたデバイスのシリアル番号を示す。移動先テナントID1012は、テキストボックスで入力可能となっており、ユーザーは移動先のテナントのテナントIDを指定する。このとき、移動先テナント情報登録部313は入力されたテナントIDからテナント名を検索し表示してもよい。ユーザーが変更ボタン1013を押下することで、移動先テナント情報登録部313へ登録指示が発行される。
When the registration
[テナント移動処理]
図4は、本実施形態に係るデバイス101のテナント移動の処理の流れを示すシーケンス図である。図4に示す処理は、各装置のCPU201がROM203等の記憶部に格納されたプログラムを読み出して実行することで実現される。
[Tenant move process]
FIG. 4 is a sequence diagram showing the flow of processing for tenant migration of the
図4においてリソースサーバー104では、例えばデバイス101の設定情報や稼働情報を管理するデバイス管理サービスが稼働しているとする。テナント移動の処理は大きく3つの工程に分かれる。まず、デバイス101がテナントA(移動前のテナント)に登録される。次に、テナントAに登録されたデバイスの移動先のテナントとして、テナントBが設定される。最後に、テナントAにアクセスしたデバイス101がテナントBに新規登録(移動)される。
In FIG. 4, it is assumed that the
まず、デバイス101をテナントAに登録する流れについて説明する。図4のS401~S409がこの工程に相当する。
First, the flow of registering the
S401にて、端末102は、テナントAのユーザーの指示に基づき、デバイス101をテナントAに登録するため、リソースサーバー104へデバイス登録キーを要求する。
In step S<b>401 , the terminal 102 requests the
S402にて、リソースサーバー104は、端末102からの要求に基づき、認可サーバー102へデバイス登録キーを要求する。このとき、リソースサーバー104は、リソースサーバー104にログインしているユーザーの権限でデバイス登録キーを要求する。
At S<b>402 ,
S403にて、認可サーバー102の登録キー生成部314は、リソースサーバー104からの要求に基づいて権限検証を行い、その権限検証が成功した場合にテナントAに登録するためのデバイス登録キーを生成し、デバイス登録キー管理テーブル(表3)に登録する。なお、権限検証に失敗した場合には、その旨をリソースサーバー104に返してもよい。この場合、リソースサーバー104は更に、端末102に権限検証が失敗した旨を通知することとなる。
In S403, the registration
S404にて、認可サーバー103は、要求に応答して、リソースサーバー104に対して生成したデバイス登録キーを返す。
In S404,
S405にて、リソースサーバー104は、認可サーバー103から受信したデバイス登録キーを端末100へ返す。このとき、例えば、端末102が有するWebブラウザー(不図示)等にて、受信したデバイス登録キーが表示されてよい。
In S<b>405 ,
S406にて、端末102は、テナントAのユーザーの指示に基づいて、デバイス101へデバイス登録キーを入力する。例えば、端末102は、デバイス101にアクセスし、デバイス101が提供する画面を介してデバイス登録キーを入力してよい。または、ユーザーがデバイス101の入力装置を使用してデバイス101に直接入力するような構成であってもよい。
In S406, the terminal 102 inputs the device registration key to the
S407にて、デバイス101のテナント登録部302は、入力されたデバイス登録キー、自身のデバイスシリアル番号、及び、自身が保持する証明書の情報を認可サーバー103へ送信し、デバイス登録要求を行う。
In S407, the
S408にて、認可サーバー103のクライアント生成部312は、デバイス101から受信した証明書を用いてデバイス101を認証する。また、認証が成功すると、クライアント生成部312は、受信したデバイス登録キーからテナントID(すなわち、テナントAのテナントID)を抽出し、クライアントIDとシークレットを生成して保存する。なお、認証に失敗した場合には、その旨をデバイス101に返してよい。
In S<b>408 ,
S409にて、認可サーバー103は、生成したクライアントIDとシークレットをデバイス101に返す。デバイス101のシークレット保持部303は、認可サーバー103から受信したクライアントIDおよびシークレットを保存する。この時点で、デバイス101はテナントAに登録されたことになる。なお不図示であるが、リソースサーバー104は認可サーバー103へ問い合わせることにより、各デバイスに対応するクライアントIDのリストを取得可能であるとする。
In S<b>409 ,
続いて、テナント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
S412にて、リソースサーバー104は、認可サーバー103に対して、デバイス101のクライアントIDを指定し、テナント移動を指示する。上述したように、リソースサーバー104は、デバイスに対応するクライアントIDのリストを取得可能であり、ここで指定されるクライアントIDは、デバイス101のシリアル番号に対応するクライアントIDを示すことで行われる。
In S412, the
S413にて、認可サーバー103の移動先テナント情報登録部313は、クライアントIDに紐づけて移動先のテナントID(すなわち、テナントBのテナントID)をクライアント管理テーブル(表2)の移動先テナントIDに登録する。この時点で、テナント移動の準備ができたことになる。
In S413, the destination tenant information registration unit 313 of the
最後に、デバイス101がテナントBへ新規登録を行う流れについて説明する。図4のS421~S433がこの工程に相当する。
Finally, the flow of new registration of the
S421にて、デバイス101のトークン要求部304は、デバイス101がリソースサーバー103のAPIを使用するために、認可サーバー103へクライアントIDとシークレットを送信し、認可トークンを要求する。
In S421, the
S422にて、認可サーバー103のトークン発行部311は、デバイス101から受信したクライアントIDとシークレットの組が認可サーバー103に登録されているか否かを、クライアント管理テーブル(表2)を参照して検証する。さらに、トークン発行部311は、クライアントIDに紐づく移動先テナント情報の有無を確認する。このとき、現在所属しているテナントの種類に応じて、確認処理の有無を判断してもよい。この処理については、図5を用いて後述する。
In S422, the
クライアント認証に成功し、かつ移動先テナント情報が存在する場合、S423にて、トークン発行部311は、デバイス101へ移動先となるテナントID(すなわち、テナントBのID)を返す。このとき、レスポンスとして、例えば、HTTPステータスコード“403”を返すことが考えられるが、これに限定するものではない。なお、クライアント認証に失敗した場合は、その旨をデバイス101に返してよい。
If the client authentication is successful and the destination tenant information exists, the
S424にて、デバイス101のトークン要求部304は、移動先のテナントIDが認可サーバー103から返されると、登録キー要求部305を呼び出す。登録キー要求部305は、移動先テナントIDとデバイス101が持つ証明書を付与して認可サーバー103へデバイス登録キーを要求する。
In S<b>424 , the
S425にて、認可サーバー103の登録キー生成部314は、デバイス101から受信した証明書に基づいてクライアント認証を行い、デバイス101が想定したベンダーの製品でありデバイス登録キーを発行して良いか否かを判定する。発行して良いと判定した場合、登録キー生成部314は、デバイス101をテナントBに登録するためのデバイス登録キーを生成し、デバイス登録キー管理テーブル(表3)に登録する。
In S425, the registration
S426にて、登録キー生成部314は、生成したデバイス登録キーを、要求に対する応答としてデバイス101へ返す。
In S426, registration
S427にて、デバイス101のテナント登録部302は、S426にて取得したデバイス登録キー、デバイスシリアル番号、及び証明書の情報を認可サーバー103へ送信し、デバイス登録要求を行う。
In S427, the
S428にて、認可サーバー103のクライアント生成部312は、S427にてデバイス101から受信した証明書を用いてデバイス101を認証する。また、認証が成功すると、クライアント生成部312は、S427にて受信したデバイス登録キーからテナントID(すなわち、テナントBのID)を抽出し、クライアントIDとシークレットを生成して保存する。なお、認証に失敗した場合には、その旨をデバイス101に返してよい。
In S428,
S429にて、認可サーバー103は、S428にて生成したクライアントIDとシークレットをデバイス101に返す。
In S429,
S430にて、デバイス101のシークレット保持部303は、S429にて認可サーバー103から受信したクライアントIDとシークレットを保存する。
At S430,
S431にて、デバイス101のトークン要求部304は、S430にて取得した新しいクライアントIDとシークレットを認可サーバー103へ送信し、認可トークンを要求する。
In S431, the
S432にて、認可サーバー103のトークン発行部311は、受信したクライアントIDとシークレットの組が認可サーバー103に登録されているか否かを、クライアント管理テーブル(表2)を参照して検証する。さらに、トークン発行部311は、クライアントIDに紐づく移動先テナント情報の有無を確認する。
In S432, the
クライアント認証に成功し、かつ移動先テナント情報が存在しない場合、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
なお、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
以上説明したフローを実行することにより、テナントAに登録されたデバイス101はテナントBへ新規登録(移動)することが可能となる。
By executing the flow described above, the
(移動先テナント情報の確認処理)
図5は、認可サーバー103において、デバイス101からトークン取得要求を受信した際の処理の流れを示したフローチャートである。本処理フローは、図4のS422の工程にて行われる。
(Confirmation processing of destination tenant information)
FIG. 5 is a flowchart showing the flow of processing when the
S501にて、認可サーバー103のトークン発行部311は、デバイス101からトークン取得要求を受け、クライアントIDとシークレットを受信する。これは、図4のS421に対応する。
In S501, the
S502にて、トークン発行部311は、受信したクライアントIDをキーとしてクライアント管理テーブル(表2)を参照し、クライアント認証を行う。ここでクライアント認証に失敗した場合は、本処理フローを終了してもよい。この場合、クライアント認証に失敗したことがデバイス101に通知される。
In S502, the
S503にて、トークン発行部311は、クライアントIDをキーとしてクライアント管理テーブル(表2)を参照し、デバイス101が所属するテナントIDを取得する。
In S503, the
S504にて、トークン発行部311は、テナント101が所属するテナントの種別が特定の種別か否かを判定する。特定の種別の例として、販売テナントと顧客テナントが挙げられる。例えば、デバイス101が販売テナントに登録されている場合にのみテナント移動の可能性があるとすれば、特定の種別を販売テナントとして判定を行うことで、その他の種別のテナントに対する移動情報の不要な確認を省略することができる。テナントの種別に関しては後述する。特定の種別であると判定された場合(S504にてYES)S505へ進み、特定の種別でないと判定された場合(S504にてNO)S507へ進む。
In S504, the
S505にて、トークン発行部311は、クライアント管理テーブル(表2)を参照して、テナント移動情報の有無を確認する。テナント移動情報が存在する場合(S505にてYES)S506へ進み、テナント移動情報が存在しない場合(S505にてNO)S507へ進む。
In S505, the
S506にて、トークン発行部311は、トークン取得要求に対する応答として、デバイス101に移動先のテナントIDを返す。これは、図4のS423に対応する。そして、本処理フローを終了する。
In S506, the
S507にて、トークン発行部311は、認可トークンを発行し、トークン取得要求に対する応答として、デバイス101に認可トークンを返す。これは、テナントの移動を行うことなく、認可トークンの発行処理を行う場合に相当する。そして、本処理フローを終了する。
In S507, the
上述したテナント種別は、認可サーバー103においてテナント管理テーブルで管理されている。表4は、本実施形態に係るテナント管理テーブルの例を示す。テナントID、テナント名、テナント種別、および作成日時が対応付けて管理されている。ここでは、テナント種別の例として、「販売テナント」と「顧客テナント」が示されているが、他の種別が用いられてもよい。また、テナントの種別ごとに別のテーブルで管理する構成をとってもよい。
以上、本実施形態のように、認可サーバー103からテナント移動指示を受信したデバイス101が移動先のテナントへの新規登録を要求することで、テナント分離の原則に反することなく、かつ、ユーザーの手間が生じずにテナントの移動が可能となる。
As described above, as in this embodiment, the
<第二の実施形態>
本発明に係る第二の実施形態について、図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
[テナント移動処理]
図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
S601にて、デバイス101のテナント登録部302は、テナントAを指定してデバイス削除要求を行う。このとき、デバイス削除要求として、削除対象となるテナントAのクライアントIDとこれに対応するシークレットが送信される。
In S601, the
S602にて、認可サーバー103のクライアント生成部312は、S601にてデバイス101から受信したテナントAのクライアントIDとシークレットを用いてクライアント認証を行う。認証が成功すると、クライアント生成部312は、指定されたクライアントIDのクライアント情報をクライアント管理テーブル(表2)から削除する。なお、クライアントの削除ではなく無効化するようにクライアント管理テーブルにフラグを設定し、再利用可能な状態にするような構成であってもよい。
In S602, the
S603にて、クライアント生成部312は、要求に対する応答として、削除完了をデバイス101へ返却する。更に、デバイス101のシークレット保持部303は、保持しているテナントAのクライアントIDとシークレットを削除する。その後、S431の処理へ進む。
In S603, the
以上、本実施形態により、第一の実施形態の効果に加え、移動元のテナントにおけるクライアント情報の削除もしくは無効化が可能となる。 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
テナント間の販売関係は販売関係管理テーブルにて管理される。表5は、本実施形態に係る販売関係管理テーブルの例を示す。表5の例では、テナントID「101AA」の販売テナントは、テナントID「1001AA」と「1002AA」の顧客テナントと販売関係がある。サービスは、販売テナントが顧客テナントに対し使用を許可している(提供している)サービス(ライセンス)である。
また、販売テナントが複数存在し、販売テナント間の関係でもテナントの移動可否を判断できる場合がある。例えば、販売会社が顧客のテナントを直接管理する販売形態を「直接販売」と呼ぶ。なお、直接販売の場合でも販売会社が複数階層を持つこともできる。一方、販売会社が販売代理店を介してクラウドサービスを提供し、販売代理店が顧客のテナントを管理する販売形態を「間接販売」と呼ぶ。このとき、直接販売の販売形態を持つテナント間にだけ、デバイスのテナント移動を許可することが考えられる。 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」の顧客テナントが存在する。このテナント間の販売形態も「直接販売」である。
テナント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
S701にて、認可サーバー103の移動先テナント情報登録部313は、リソースサーバー104などから移動対象のクライアントと移動先テナント情報を受信する。
In S701, the migration destination tenant information registration unit 313 of the
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
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
以上、本実施形態により、第一の実施形態の効果に加え、移動先として要求されたテナントへの移動の可否を販売関係に基づいて判定し、その可否をデバイス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
なお、上記の例では、販売関係に基づいて移動可能か否かを判定したが、これに限定するものではない。そのほかのテナント間の関係に基づいて移動の可否を判定してもよい。 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
(画面構成)
図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
[機能構成]
図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
[テナント移動処理]
図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
デバイス101のテナント移動指示部801は、ユーザーによりデバイス101上にてUI画面1100のテナント移動ボタン1101を押下されたことを起因として、S901にて、認可サーバー103へテナントの移動を指示する。この処理は内部的には、図4のS421と同様に、認可サーバー103へ認可トークンを要求する処理と同じで良い。認可サーバー103側で移動先テナント情報の設定がなければ、認可サーバー103から認可トークンが返却される。この場合、この認可トークンを用いて、デバイス101は、テナントAにおけるリソースにてAPIを利用することが可能となり、テナントの移動は行われない。
The tenant
以上、本実施形態により、デバイス101の管理者が意図したタイミングにてテナントの移動が可能となる。
As described above, according to this embodiment, the tenant can be moved at the timing intended by the administrator of the
<その他の実施形態>
本発明は上述の実施形態の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乃至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.
前記認可サーバーが、要求に応じて、情報処理装置をテナントに登録するための登録キーを発行する第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.
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)
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)
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 |
-
2019
- 2019-01-22 JP JP2019008600A patent/JP7208807B2/en active Active
Patent Citations (3)
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 |