Information processing system, license granting method, and program
The information processing system automates license assignment by allowing users to invite others for guest licenses and notifies administrators for formal upgrades, reducing administrative burden and enhancing user onboarding efficiency.
Patent Information
- Application Number
- JP2021192224
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-26
- Publication Date
- 2025-10-07
- Estimated Expiration
- 2041-11-26
AI Technical Summary
Conventional systems require manual assignment of licenses to users by administrators, increasing their workload.
An information processing system that automates the license granting process by sending an invitation to users for consent, allowing existing users to invite others and automatically grant guest licenses, with optional administrator notification for formal license upgrades.
Reduces the administrative workload by automating license assignments and enabling efficient user onboarding through automated guest license granting and formal upgrade requests.
Smart Images

Figure 0007750058000001 
Figure 0007750058000002 
Figure 0007750058000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing system, a license granting method, and a program. [Background technology]
[0002] Companies and other organizations may enter into a contract for a license that allows them to receive services by running an application on a device or other device. The company assigns its employees to tenants as users, and the employees use the applications to perform various tasks. A tenant is a user group made up of employees with similar attributes, such as department or industry, within a company. Users who belong to a tenant can use applications by being granted a license.
[0003] There is known a technology in which an administrator assigns authority to each user belonging to a tenant (see, for example, Patent Document 1). Patent Document 1 discloses a technology that reduces the administrator's workload in assigning authority by identifying the user of an external device that is the target of access control. Summary of the Invention [Problem to be solved by the invention]
[0004] However, the conventional technology had a problem in that an administrator had to manually assign licenses to users, i.e., the tenant administrator had to manually assign licenses to each user via a website or other means.
[0005] In view of the above-mentioned problems, an object of the present invention is to provide an information processing system that can grant licenses to users while reducing the work required by an administrator. [Means for solving the problem]
[0006] In view of the above-mentioned problems, an information processing system for providing a service according to a license granted to a user includes: a communication unit that, when receiving an invitation request for granting a license specifying a user, inquires of the user about consent to granting the license; and a license granting unit that grants the license to the user when the user receives a response indicating consent to granting the license. When a request for upgrading to a formal license is made by specifying the user from a terminal device connected to the URL of a web page requesting an upgrade to a formal license, the license granting unit sends an email to the administrator of the tenant to which the user belongs, informing the administrator that there is a request for upgrading to a formal license, displaying the user name of the user, and the URL of a web page for accepting the upgrade to a formal license. It is characterized by: [Effects of the Invention]
[0007] It is possible to provide an information processing system that can grant licenses to users while reducing the work required by an administrator. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 2 is a diagram illustrating an outline of processing performed by the information processing system. [Figure 2] FIG. 1 illustrates a system configuration of an example of a service providing system. [Figure 3] FIG. 2 is a diagram illustrating an example of a hardware configuration of an information processing system and a terminal device. [Figure 4] FIG. 2 is a diagram illustrating a hardware configuration of an image forming apparatus, which is an example of a device. [Figure 5] FIG. 1 illustrates a functional configuration of an example of a service providing system. [Figure 6] FIG. 4 is a diagram illustrating an example of tenant information stored in a tenant information storage unit. [Figure 7] FIG. 4 is a diagram illustrating an example of user information stored in a user information storage unit. [Figure 8] FIG. 4 is a diagram showing an example of license information stored in a license information storage unit. [Figure 9] FIG. 10 is a diagram illustrating an example of account information stored in an authentication information storage unit. [Figure 10] 3A and 3B are diagrams illustrating an example of application information and an example of license / application correspondence information stored in an application information storage unit. [Figure 11] FIG. 10 is a diagram illustrating an example of the types of licenses granted to users or devices belonging to a tenant. [Figure 12] FIG. 1 is a diagram illustrating an application. [Figure 13A] This is an example sequence diagram (part 1) that explains the process by which an information processing system grants a guest license to a new user. [Figure 13B] This is an example sequence diagram (part 2) that explains the process by which an information processing system grants a guest license to a new user. [Figure 13C] This is an example sequence diagram (part 3) that explains the process by which an information processing system grants a guest license to a new user. [Figure 14] FIG. 10 is a diagram showing an example of a search screen. [Figure 15] FIG. 10 is a diagram illustrating an example of a search result screen. [Figure 16] FIG. 10 is a diagram illustrating an example of a guest type setting screen. [Figure 17] FIG. 10 is a diagram illustrating an example of an invitation email screen. [Figure 18] FIG. 10 is a diagram illustrating an example of an invitation email sent screen. [Figure 19] FIG. 10 is a diagram illustrating an example of an invitation acceptance setting screen. [Figure 20] FIG. 10 is a diagram showing an example of a guest user participation completion notification email screen. [Figure 21] FIG. 10 is a diagram showing an example of a guest user invitation completion notification email screen. [Figure 22A] FIG. 10 is a sequence diagram (part 1) illustrating an example of a process in which the information processing system proposes upgrading to a formal license when a guest license is executed. [Figure 22B] FIG. 10 is a sequence diagram (part 2) illustrating an example of a process in which the information processing system proposes upgrading to a formal license when a guest license is executed. [Figure 22C]FIG. 10 is a sequence diagram (part 3) illustrating an example of a process in which the information processing system proposes upgrading to a formal license when a guest license is executed. [Figure 23] FIG. 10 is a diagram showing an example of a deadline notification email screen. [Figure 24] FIG. 10 is a diagram illustrating an example of a license expiration notification screen. [Figure 25] FIG. 10 is a diagram showing an example of a fixed period expiration notification email screen. [Figure 26] FIG. 10 is a diagram showing an example of a service usage questionnaire screen. [Figure 27] FIG. 10 is a diagram illustrating an example of an upgrade request screen. [Figure 28] FIG. 10 illustrates an example upgrade request completion screen. [Figure 29] FIG. 10 is a diagram showing an example of an upgrade request email screen. [Figure 30] FIG. 10 is a sequence diagram illustrating an example of a request and update for an administrator to upgrade a user's guest license to a formal license. [Figure 31] FIG. 10 is a diagram illustrating an example of a formal license upgrade request screen. [Figure 32] FIG. 10 illustrates an example of an upgrade completion email screen. DETAILED DESCRIPTION OF THE INVENTION
[0009] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An information processing system and a license granting method performed by the information processing system will be described below as an example of an embodiment of the present invention with reference to the accompanying drawings.
[0010] <Processing Overview> FIG. 1 is a diagram for explaining an outline of the processing performed by an information processing system 10 of this embodiment.
[0011] (1) An existing user of Tenant A who has already been granted a license (hereinafter referred to as User A) connects a terminal device 30A to the information processing system 10. User A requests the information processing system 10 to inquire of another user of Tenant A who has not been granted a license (hereinafter referred to as User B) whether he or she would like to be granted a license. In this embodiment, an example will be described in which one user in the same tenant grants a license to another user, but the inviting user and the invited user do not have to be in the same tenant. In this case, the inviting user invites a user belonging to another tenant and grants a license to the user. In other words, the invitation and license granting processes are performed in a single invitation. In the following, the term "invitation" will be used to refer to the granting of a license, regardless of whether the inviting user and the invited user are in the same tenant (whether or not an invitation to a tenant is included).
[0012] (2) The information processing system 10 sends an invitation email to User B regarding the granting of a license.
[0013] (3) User B connects to the URL described in the email using terminal device 30B and responds by accepting or rejecting the invitation. Here, it is assumed that User B accepts the invitation.
[0014] (4) User B accepts the invitation, and the information processing system 10 grants a guest license to User B. A guest license is a license that has at least one of an expiration date and a function restriction.
[0015] In this way, in the information processing system 10 of this embodiment, an existing user with a license sends an invitation to grant a license to an unlicensed user, and if the user accepts, a guest license is automatically granted, thereby saving the administrator the trouble of granting a license to a guest user.
[0016] <Terminology> A user group is a company or organization that has entered into a contract to receive a service from a service provider (an information processing system in this embodiment). A service is an information processing service that can be obtained by executing an application. A user can use a service by belonging to a user group. In this embodiment, this is explained using the term tenant.
[0017] An application is a program that runs on a device or information processing device to allow a user to receive a service. Applications include web apps that run on a web browser without installation, and native apps that run on an information processing device after installation. In the case of web apps, the application may be a workflow app that executes a series of processes in order.
[0018] An administrator is a person who manages a tenant. The administrator is a person who performs various settings for the tenant so that users can use applications that the tenant has contracted. However, it is not necessary to clearly distinguish between a user and an administrator, and the terms are used for convenience in this embodiment. In some cases, an administrator may also be a user.
[0019] An invitation is when a user belonging to the same tenant notifies other users in the same tenant of the existence of a license held by that user and encourages them to grant the license. On the other hand, there is also a process in which an administrator invites a user belonging to another tenant to his or her own tenant.
[0020] A license is the right to run an application. By running an application, a user can receive various services. For example, when signing a contract for an application, a tenant would specify the number of people who could use the application, and traditionally, the tenant administrator would grant licenses to each user within that number.
[0021] <System configuration> The system configuration of the service providing system 100 according to this embodiment will be described with reference to Fig. 2. Fig. 2 is a diagram showing an example of the system configuration of the service providing system 100 according to this embodiment.
[0022] 2 includes an information processing system 10, a device 20, and a terminal device 30, which are communicatively connected via a wide area network N1 such as the Internet. The service providing system 100 communicates with an external service system 40, which is an external system.
[0023] The information processing system 10 is realized by one or more information processing devices, and provides various services via a network N1 that are realized by a series of processes in cooperation with an external service system 40, such as a cloud service. Specific examples of services provided by the information processing system 10 according to this embodiment will be described later. The information processing system 10 may be realized by cloud computing, or may be realized by a single information processing device. Cloud computing refers to a form in which resources on a network are used without regard to specific hardware resources. The information processing system 10 may exist on the Internet or on-premise. A series of processes is provided by a single application, and such a series of processes is also referred to as a "processing flow" or "workflow."
[0024] The devices 20 are various electronic devices used by users. The devices 20 are, for example, image forming devices such as MFPs (Multifunction Peripherals), PCs (Personal Computers), projectors, electronic whiteboards, video conference terminals, digital cameras, etc. The devices 20 are connected to the network N2. The users can use the devices 20 to utilize various services provided by the information processing system 10 or the external service system 40.
[0025] In the following description, when the plurality of devices 20 are to be distinguished from one another, they will be referred to using subscripts such as "device 20A" and "device 20B."
[0026] The terminal device 30 is, for example, a desktop PC, a notebook PC, a smartphone, a tablet terminal, or the like used by an administrator or a user. The terminal device 30 is connected to the network N2. The administrator or user can operate the terminal device 30 to use various services provided by the information processing system 10 or the external service system 40, and can also configure applications.
[0027] In the following description, when the multiple terminal devices 30 are to be distinguished from one another, they will be referred to using subscripts such as "terminal device 30A" and "terminal device 30B."
[0028] The external service system 40 is one or more information processing devices that provide services by executing applications via the network N1. Data is saved or read by executing the applications. The "external" in the external service system 40 means that it is a system separate from the information processing system 10. In many cases, it is operated by a different company. For example, even for the same user, the external service system 40 and the information processing system 10 have different accounts.
[0029] Examples of the external service system 40 include various cloud services, ASPs (Application Service Providers), and the like, and may include various external services provided via a network. For example, a storage service is an example of a service. The external service system 40 may exist on the Internet or on-premise.
[0030] In the following description, when distinguishing between the multiple external service systems 40, they will be referred to as "external service system 40A," "external service system 40B," etc., as shown in the figure.
[0031] <Hardware configuration example> The hardware configuration of the information processing system 10 and the terminal device 30 according to this embodiment will be described with reference to FIG.
[0032] <<Information processing system and terminal device>> Fig. 3 is a diagram showing an example of the hardware configuration of the information processing system 10 and the terminal device 30 according to this embodiment. As shown in Fig. 3, the information processing system 10 and the terminal device 30 are constructed by a computer, and include a CPU 501, a ROM 502, a RAM 503, a HD (Hard Disk) 504, an HDD (Hard Disk Drive) controller 505, a display 506, an external device connection I / F (Interface) 508, a network I / F 509, a bus line 510, a keyboard 511, a pointing device 512, an optical drive 514, and a media I / F 516.
[0033] Of these, the CPU 501 controls the overall operation of the information processing system 10 and the terminal device 30. The ROM 502 stores programs, such as an IPL, used to drive the CPU 501. The RAM 503 is used as a work area for the CPU 501. The HD 504 stores various data, such as programs. The HDD controller 505 controls the reading and writing of various data from and to the HD 504 under the control of the CPU 501. The display 506 displays various information, such as a cursor, menus, windows, characters, or images. The external device connection I / F 508 is an interface for connecting various external devices. In this case, external devices include, for example, USB (Universal Serial Bus) memories and printers. The network I / F 509 is an interface for data communication using the network N2. The bus line 510 is an address bus, a data bus, or the like, for electrically connecting the components, such as the CPU 501, shown in FIG. 3.
[0034] The keyboard 511 is a type of input means having multiple keys used to input characters, numbers, various instructions, etc. The pointing device 512 is a type of input means for selecting and executing various instructions, selecting a processing target, moving a cursor, etc. The optical drive 514 controls reading and writing of various data from an optical storage medium 513, which is an example of a removable storage medium. The optical drive 514 may be a CD, DVD, Blu-ray (registered trademark), etc. The media I / F 516 controls reading and writing (storing) of data from a storage medium 515, such as a flash memory.
[0035] <<Equipment>> 4 is a hardware configuration diagram of an image forming apparatus, which is an example of device 20. As shown in FIG. 4, the image forming apparatus includes a controller 910, a short-range communication circuit 920, an engine control unit 930, an operation panel 940, and a network I / F 950.
[0036] Of these, the controller 910 has a CPU 901, which is the main part of the computer, a system memory (MEM-P) 902, a north bridge (NB) 903, a south bridge (SB) 904, an ASIC (Application Specific Integrated Circuit) 906, a local memory (MEM-C) 907, which is a storage unit, an HDD controller 908, and an HD 909, which is also a storage unit, and is configured such that the NB 903 and the ASIC 906 are connected by an AGP (Accelerated Graphics Port) bus 921.
[0037] Of these, the CPU 901 is a control unit that performs overall control of the image forming apparatus. The NB 903 is a bridge that connects the CPU 901 with the MEM-P 902, the SB 904, and the AGP bus 921, and includes a memory controller that controls reading and writing to the MEM-P 902, a PCI (Peripheral Component Interconnect) master, and an AGP target.
[0038] The MEM-P 902 comprises a ROM 902a, which is memory for storing programs and data that realize the functions of the controller 910, and a RAM 902b, which is used for expanding the programs and data and as a drawing memory during memory printing. The programs stored in the RAM 902b may be provided by being recorded in an installable or executable file format on a computer-readable recording medium such as a CD-ROM, CD-R, or DVD.
[0039] The SB 904 is a bridge for connecting the NB 903 with PCI devices and peripheral devices. The ASIC 906 is an integrated circuit (IC) for image processing applications that has hardware elements for image processing and serves as a bridge connecting the AGP bus 921, PCI bus 922, HDD controller 908, and MEM-C 907. The ASIC 906 includes a PCI target and AGP master, an arbiter (ARB) that forms the core of the ASIC 906, a memory controller that controls the MEM-C 907, multiple direct memory access controllers (DMACs) that perform image data rotation using hardware logic, and a PCI unit that transfers data between the scanner unit 931, printer unit 932, and facsimile unit via the PCI bus 922. The ASIC 906 may also have a universal serial bus (USB) interface or an Institute of Electrical and Electronics Engineers 1394 (IEEE 1394) interface.
[0040] The MEM-C907 is a local memory used as an image buffer for copying and a code buffer. The HD909 is a storage for storing image data, font data used during printing, and forms. The HD909 controls the reading and writing of data from and to the HD909 under the control of the CPU901. The AGP bus 921 is a bus interface for a graphics accelerator card proposed to speed up graphics processing, and direct high-throughput access to the MEM-P902 enables the graphics accelerator card to operate at high speed.
[0041] Further, the short-range communication circuit 920 is provided with a short-range communication circuit antenna 920a. The short-range communication circuit 920 is a communication circuit such as NFC or Bluetooth (registered trademark).
[0042] The engine control unit 930 further includes a scanner unit 931, a printer unit 932, and a facsimile unit 933. The operation panel 940 includes a panel display unit 940a, such as a touch panel, that displays current setting values and selection screens and receives inputs from the operator, and hard keys 940b, such as a numeric keypad that receives setting values for image formation conditions such as density settings and a start key that receives a copy start command. The controller 910 controls the entire image forming apparatus, and controls, for example, drawing, communication, and inputs from the operation panel 940. The scanner unit 931 or the printer unit 932 includes an image processing unit such as error diffusion and gamma conversion.
[0043] The image forming apparatus can be switched between the document box function, copy function, printer function, and facsimile function in sequence using the application switching key on the operation panel 940. When the document box function is selected, the image forming apparatus enters document box mode, when the copy function is selected, the image forming apparatus enters copy mode, when the printer function is selected, the image forming apparatus enters printer mode, and when the facsimile mode is selected, the image forming apparatus enters facsimile mode.
[0044] The network I / F 950 is an interface for performing data communication using the network N2. The short-range communication circuit 920 and the network I / F 950 are electrically connected to the ASIC 906 via a PCI bus 922.
[0045] <About the function> Next, the functional configuration of the service providing system 100 according to this embodiment will be described with reference to Fig. 5. Fig. 5 is a diagram showing an example of the functional configuration of the service providing system 100 according to this embodiment.
[0046] <<Equipment>> The device 20 has a second communication unit 21, a display control unit 22, an operation reception unit 23, an image data generation unit 24, a facsimile processing unit 25, and an email processing unit 26. Each of these functional units is a function or means realized by the CPU 901 executing instructions contained in one or more programs installed in the device 20. For example, the second communication unit 21, the display control unit 22, and the operation reception unit 23 are realized by a web browser, and the others are realized by individual applications (native apps).
[0047] The second communication unit 21 transmits and receives various types of information to and from the information processing system 10. In this embodiment, the second communication unit 21 receives screen information of various screens and the like from the information processing system 10, and transmits application execution requests and the like to the information processing system 10. The second communication unit 21 also transmits scanned images and receives a list of file / folder upload destinations from the information processing system 10.
[0048] The display control unit 22 interprets screen information of various screens and displays it on the panel display unit 940a. The operation receiving unit 23 receives various operations by the user on the various screens displayed on the panel display unit 940a.
[0049] When the application selected by the operation receiving unit 23 is one that generates image data, the image data generating unit 24 generates image data by scanning an original document with the scanner unit 931. The facsimile processing unit 25 performs processing related to the reception and transmission of facsimiles by the facsimile unit 933, and when a facsimile is received, requests the information processing system 10 to execute a pre-associated application. The facsimile processing unit 25 may also request an application corresponding to the sender of the facsimile (fax number).
[0050] The email processing unit 26 performs processing related to sending and receiving emails, and when an email is received, requests the information processing system 10 to execute a pre-associated application. The email processing unit 26 may also request an application corresponding to the sender (email address) of the email.
[0051] <<Terminal Device>> The terminal device 30 has a first communication unit 31, a display control unit 32, and an operation reception unit 33. Each of these functional units is a function or means realized by the CPU 501 executing instructions contained in one or more programs installed in the terminal device 30. The programs may be a web browser or dedicated software.
[0052] The first communication unit 31 transmits and receives various types of information to and from the information processing system 10 or the external service system 40. In this embodiment, the first communication unit 31 transmits settings related to license assignment set by an administrator or a user to the information processing system 10. The first communication unit 31 also receives screen information of various screens displayed by the terminal device 30 and emails.
[0053] The display control unit 32 interprets screen information of various screens and displays it on the display 506. The operation receiving unit 33 receives various operations on the various screens displayed on the display 506 by the administrator or the user.
[0054] <<Information Processing System>> The information processing system 10 includes a third communication unit 11, a Web service processing unit 12, an application management unit 15, a license granting unit 13, and an email sending unit 14. Each of these functional units is a function or means realized by a CPU 501 shown in FIG. 3 executing instructions included in one or more programs installed in the information processing system 10. The information processing system 10 also includes a tenant information storage unit 41, a user information storage unit 42, a license information storage unit 43, an authentication information storage unit 44, and an application information storage unit 45. These storage units are constructed in the HD 504 shown in FIG. 3, etc.
[0055] The third communication unit 11 transmits and receives various types of information between the terminal device 30 and the device 20. In this embodiment, the third communication unit 11 receives a screen related to granting a license, and transmits an invitation email or the like.
[0056] The application management unit 15 manages applications executed by devices, etc. The application management unit 15 also performs periodic batch processing such as checking for license expiration dates.
[0057] The Web service processing unit 12 further includes an application execution unit 12a and a screen generation unit 12b. The screen generation unit 12b generates screens for various settings and screens for each application.
[0058] The application execution unit 12a executes an application in response to a request from the device 20. The application execution unit 12a controls processing according to the application, such as printing or scanning, in accordance with the user's settings. In the case of printing, the application execution unit 12a requests the device to print a file, and in the case of scanning, the application execution unit 12a sends image data scanned by the device 20 to an external service system.
[0059] The license granting unit 13 controls the granting of licenses to users by referring to the tenant information storage unit 41, the user information storage unit 42, the license information storage unit 43, the authentication information storage unit 44, and the application information storage unit 45. The license granting unit 13 creates, acquires, and updates the license information stored in the license information storage unit 43.
[0060] The mail sending unit 14 has templates for the destination, subject, and body of the mail, sets each piece of information in the template, and sends the mail to a preset mail server.
[0061] 6 shows an example of tenant information stored in the tenant information storage unit 41. Each item of the tenant information will be described below. A tenant ID is unique identification information assigned to each tenant. ID is an abbreviation for Identification and means identifier or identifying information. An ID is a name, code, character string, number, or a combination of one or more of these that is used to uniquely distinguish a specific object from multiple objects. The tenant name is the general name of the tenant (string or number).
[0062] FIG. 7 is an example of the user information stored in the user information storage unit 42. A user ID is a unique user identification information assigned to each user within a tenant. The tenant ID is the identification information of the tenant to which the user belongs. Username is the user's name. The email address is the email address registered by the user. A password is a string of characters that is kept secret by the user. The role defines whether the user is a tenant administrator or a general user. The license ID is the identification information for the license that the user holds.
[0063] FIG. 8 shows an example of the license information stored in the license information storage unit 43. As shown in FIG. The license ID is the identification information for the license. The service ID is the type of license (see Figure 11: official license, guest license). The service class is a subcategory of the license (see Figure 11, with expiration date and functional restrictions). The license expiration date is the end of the license.
[0064] FIG. 9 is an example of the authentication information stored in the authentication information storage unit 44. As shown in FIG. User ID (information processing system 10) is a user ID in the information processing system 10. A token is granted after successful authentication. One-time authentication information may also be set. The external service system 40 is identification information of the external service system 40. Account information (external service system) is account information for each external service system 40 .
[0065] The account information in the external service system 40 may be a user ID and password, or a token issued by the external service system 40. In the external service system 40, the authorization information of the user is determined according to the user's account information (including the token). The authorization information determines which files / folders the user can display among the files / folders held by the external service system 40.
[0066] 10(a) is an example of application information stored in the application information storage unit 45. The application information stores responses to a questionnaire inquiring whether or not to continue the service. The survey ID is the identification information for the survey. Respondents are those who answer the questionnaire. Respondents are trial users of the service. The response date and time is the date and time when the survey was answered. The answer is whether or not you would like to continue using the service. ·Notes are the strings entered in the notes field of the questionnaire.
[0067] 10B is an example of license / application correspondence information stored in the application information storage unit 45. The license / application correspondence information holds applications that can be used with a license. The license ID is the identification information for the license. · App ID is the identification information of the application.
[0068] <License type> Fig. 11 shows the types of licenses granted to users or devices belonging to a tenant. In Fig. 11, the contents of the licenses are registered in association with the major classifications of the licenses and the minor classifications of the licenses.
[0069] According to the broad classification of licenses, there are official licenses and guest licenses. According to the subclassification of licenses, guest licenses are divided into expiry licenses and function-restricted licenses. The difference between the two is as shown in the diagram. Expiry licenses have no function restrictions but have an expiration date, while function-restricted licenses have limited functions but no expiration date. There may be licenses with both an expiration date and function restrictions.
[0070] In this embodiment, a guest license is granted to the invited user. The guest user can also upgrade from the guest license to a formal license.
[0071] <About the application> An application will be described with reference to Fig. 12. Fig. 12 is a diagram illustrating an application 202. The application 202 is created by combining multiple components 201. A component 201 is a program part prepared for each function or processing unit. As shown in Fig. 12(a), components 201 are provided that upload and download files to various external service systems, and that apply OCR, stamps, and PDF-related processing to files.
[0072] As shown in FIG. 12(b), an application 202 is created by arranging one or more components 201 in the order of execution. A workflow is executed by executing the application 202. A tenant has a contract for various applications 202, and the applications 202 can be used by the users who belong to the tenant. Furthermore, the number of licenses for an application (the number of users who can use the application) is limited depending on the contract. Therefore, in order to use a specific application, the user must belong to a tenant that has a contract for that application and be granted a license.
[0073] <Operation and screen example> Next, with reference to Figs. 13 to 21, a flow in which an existing user invites a new user to grant a license and grants the user a guest license will be described. Fig. 13 is an example of a sequence diagram illustrating the process in which the information processing system 10 grants a guest license to a new user. For ease of explanation, the process will be described separately in Figs. 13A to 13C. Figs. 14 to 21 are example screens displayed by the terminal device 30, which are referred to in the explanation of Fig. 13. In the following explanation, the terminal device used by user A is referred to as terminal device 30A, the terminal device used by user B is referred to as terminal device 30B, and the terminal device used by the administrator is referred to as terminal device 30C.
[0074] S1: User A connects terminal device 30A to the information processing system 10 and inputs account information into the login screen. The operation reception unit 33 of terminal device 30A accepts the settings. The account information is, for example, a tenant ID, a user ID, and a password, or an email address and a password. Here, it is assumed that the tenant ID, user ID, and password have been input.
[0075] Note that User A is an existing user of Tenant A and holds a license. Holding a license may be a condition for an invitation. In other words, even if User A attempts to invite another user to an application for which he does not hold a license, the information processing system 10 places restrictions on this.
[0076] S2: The first communication unit 31 of the terminal device 30A designates the account information and transmits a login request to the information processing system 10.
[0077] S3: The third communication unit 11 of the information processing system 10 receives the login request, and the Web service processing unit 12 transmits the login request to the license granting unit 13.
[0078] S4: The license granting unit 13 determines whether the tenant ID entered by the user A is stored in the tenant information storage unit 41.
[0079] S5: Similarly, the license granting unit 13 determines whether the user ID and password entered by user A are stored in the user information storage unit 42 or not.
[0080] S6: If the determination results in steps S4 and S5 are successful, the license granting unit 13 assigns a number to the authentication information (token), associates it with user A, and stores it in the authentication information storage unit 44.
[0081] S7: The license granting unit 13 returns the authentication information to the Web service processing unit 12.
[0082] S8: The Web service processing unit 12 transmits the authentication information and the login completion to the terminal device 30A via the third communication unit 11.
[0083] S9: The first communication unit 31 of the terminal device 30A receives the authentication information and the completion of login, and the display control unit 32 displays the completion of login. Thereafter, the terminal device 30A attaches the authentication information to communications.
[0084] S10: User A enters a user ID, user name, email address, or the like into a search screen to search for a user they wish to invite, and executes a search. The operation acceptance unit 33 of the terminal device 30A accepts the setting. An example of the search screen is shown in FIG. 14.
[0085] S11: The first communication unit 31 of the terminal device 30A transmits a search request to the information processing system 10, specifying authentication information and a user to be invited.
[0086] S12: The third communication unit 11 of the information processing system 10 receives a search request from users under the tenant (all users of the tenant to which user A belongs), and the Web service processing unit 12 transmits the search request to the license granting unit 13.
[0087] S13: The license granting unit 13 collates the authentication information with the authentication information storage unit 44 to confirm that the user A being searched for is a legitimate user. Assume that the collation is successful. Since the authentication information is linked to the user ID, the tenant to which user A belongs, etc., can also be identified.
[0088] S14: Next, the license granting unit 13 specifies, for example, the tenant ID to which user A belongs, and acquires tenant information from the tenant information storage unit 41. Although the tenant information itself is not used in the processing, the existence of the tenant ID is confirmed here.
[0089] S15: The license granting unit 13 specifies a tenant ID and searches for a user by user name, user ID, or email address. The tenant ID is specified because different tenants have users with the same user name or user ID. The license granting unit 13 acquires the license ID of a user who matches the search.
[0090] S16: The license granting unit 13 acquires, from the license information storage unit 43, the service ID from the license information associated with the license ID of each user.
[0091] S17: The license granting unit 13 sends the search results (a list of users who meet the search conditions and the service IDs) to the Web service processing unit 12.
[0092] S18: The Web service processing unit 12 generates a search result screen (see FIG. 15(a)) according to the service ID, and transmits screen information of the search result screen to the terminal device 30A via the third communication unit 11.
[0093] S19: The first communication unit 31 of the terminal device 30A receives the screen information of the search result screen, and the display control unit 32 displays it. An example of the search result screen is shown in Fig. 15. In response to an operation by user A, the terminal device 30A displays the guest type setting screen of Fig. 16 following the search result screen.
[0094] 14 shows an example of a search screen 110 on which user A searches for users to whom he / she wishes to invite a user for license granting. The search screen 110 has a message 111 saying "Search for users to invite as guests," an input field 112 for a user name and email address, and a search button 113.
[0095] 15(a) is an example of a search result screen 120 that displays the results of a user search by User A. The search result screen 120 has an Invite button 122, an Invited button 123, and an Invite Not Allowed button 124, all associated with a user name 121. The Invite button 122 is displayed when neither the official license nor the guest license is set for the service ID. The Invited button 123 is displayed when a guest license is set for the service ID. The invitation not allowed button 124 is displayed when the official license is set for the service ID. User A can only press the Invite button 122.
[0096] 15(b) is an example of a search failure screen 130 that is displayed when a user matching the search criteria is not found. The search failure screen 130 includes a message 131 that reads, "No matching users found in the enterprise tenant." User A can search for the user again or cancel the invitation.
[0097] FIG. 16 shows an example of a guest type setting screen 140 that is displayed when the Invite button 122 in FIG. 15(a) is pressed. The guest type setting screen 140 includes a message 141 saying, "Please select the type of guest to invite user B," an option 142 for "Expiry Date," an option 143 for "Limited Functions," radio buttons 144 associated with the options 142 and 143, a Cancel button 145, an OK button 146, and an application name 147. Therefore, when inviting a user to grant a license, the administrator can select the user and the type of license. The application name 147 is the name of an application that user A recommends be granted a license for (user A has been granted a license). A license for application name 147 is also granted to user B in subsequent processes and screens. This license is the authority to execute this application.
[0098] S20: The following will be explained with reference to Fig. 13B. After user A confirms on the search result screen 120 of Fig. 15(a) that user B is available for invitation, user A inputs an operation to invite user B on the guest type setting screen 140 of Fig. 16 to terminal device 30A. The operation reception unit 33 of terminal device 30A receives the setting.
[0099] S21: The first communication unit 31 of the terminal device 30A transmits an invitation request to the information processing system 10, specifying the authentication information, the user ID of user B, and the type of guest license.
[0100] S22: The third communication unit 11 of the information processing system 10 receives the invitation request, and the Web service processing unit 12 transmits the invitation request to the license granting unit 13.
[0101] S23: The license granting unit 13 checks the authentication information with the authentication information storage unit 44.
[0102] S24: The license granting unit 13 searches the user information storage unit 42 using the user ID of user B, and acquires information about user B (user name, email address, etc.).
[0103] S25: The license granting unit 13 creates one-time authentication information (random letters, numbers, and symbols of a predetermined number of digits or more), associates it with user B (all information linked to the user, such as user ID, tenant ID, etc.), and stores the one-time authentication information in the license information storage unit 43.
[0104] S26: The license granting unit 13 sends the information about user B, the one-time authentication information, the type of guest license, and the content of the email inviting user B to the email sending unit 14, requesting that an email be sent to user B informing him of the invitation. The license granting unit 13 generates a web page for accepting the invitation (the invitation acceptance setting screen in FIG. 19), and sets the URL of this web page in the content of the email. The one-time authentication information is set in the query parameter of the URL.
[0105] S27: The email sending unit 14 sends the email with the above URL to user B. User B receives this email on the terminal device 30B and displays the invitation email screen. An example of the invitation email screen is shown in FIG.
[0106] S28: The license granting unit 13 sends a message to the Web service processing unit 12 informing the user B that the user B has been invited.
[0107] S29: The Web service processing unit 12 generates screen information for the invitation email sent screen, and transmits the screen information for the invitation email sent screen, including the information that user B has been invited, to the terminal device 30A via the third communication unit 11.
[0108] S30: The first communication unit 31 of the terminal device 30A receives the screen information of the invitation email sent screen, and the display control unit 32 displays the invitation email sent screen. An example of the invitation email sent screen is shown in FIG.
[0109] 17 shows an invitation email screen 150 sent to user B. The invitation email screen 150 includes a sender email address 151, a destination email address 152 (user B's email address), a message 153 saying "User A has invited you to be a guest user of the following tenant," a tenant name 154, a license type 155, a message 156 saying "Please confirm whether you would like to participate as a guest by visiting the URL below," and a URL 157 where the user can set whether or not to participate.
[0110] In this way, the invited user B receives an email informing him or her that he or she has been invited as a guest. The email displays the name of the inviter and the tenant from which the invite was made.
[0111] 18 is an example of an invitation email sent screen 160 that is displayed when an invitation email is sent to user B. The invitation email sent screen 160 has a message 161 that reads, "An invitation has been sent to user B." S31: The following will be described with reference to Fig. 13C. The first communication unit 31 of the terminal device 30B receives the invitation email using email software, and the display control unit 32 displays the invitation email screen (Fig. 17). User B presses URL 157. The operation acceptance unit 33 of the terminal device 30B accepts the operation.
[0112] S32: The first communication unit 31 of the terminal device 30B connects to the URL.
[0113] S33: The third communication unit 11 of the information processing system 10 acquires one-time authentication information from the query parameter of the URL, and the Web service processing unit 12 requests the license granting unit 13 to authenticate the one-time authentication information.
[0114] S34: The license granting unit 13 determines whether the one-time authentication information is stored in the authentication information storage unit 44 or not.
[0115] S35: The license granting unit 13 sends the authentication result (success) to the Web service processing unit 12.
[0116] S36: Since the authentication is successful, the Web service processing unit 12 generates an invitation acceptance setting screen on which the user can select whether to reject or accept the invitation, and transmits the screen to the terminal device 30B via the third communication unit 11.
[0117] S37: The first communication unit 31 of the terminal device 30B receives the screen information of the invitation acceptance setting screen, and the display control unit 32 displays it. An example of the invitation acceptance setting screen is shown in FIG.
[0118] S38: User B presses the accept button on the invitation acceptance setting screen. The operation acceptance unit 33 of the terminal device 30B accepts the operation.
[0119] S39: The first communication unit 31 of the terminal device 30B transmits to the information processing system 10 a message indicating that the invitation is accepted.
[0120] S40: The third communication unit 11 of the information processing system 10 receives the acceptance of the invitation, and the Web service processing unit 12 requests the license granting unit 13 to grant a guest license to user B.
[0121] S41: Next, the license granting unit 13 specifies, for example, the tenant ID to which user B belongs (clarified by the one-time authentication information) and acquires tenant information from the tenant information storage unit 41. The tenant information itself is not used in the processing, but here the existence of the tenant ID is confirmed.
[0122] S42: The license granting unit 13 creates a guest license in the license information storage unit 43. That is, a license ID is assigned, the guest license is set as the service ID, a subcategory of the license selected by user A is set as the service class, and in the case of a license with an expiration date, a predetermined license expiration date is set.
[0123] S43: The license granting unit 13 stores the license ID of the guest license for user B in the user information storage unit .
[0124] S44: To report to the administrator of Tenant A, the license granting unit 13 acquires from the user information storage unit 42 the user ID, email address, etc. of the administrator of Tenant A who belongs to Tenant A and whose role is tenant administrator.
[0125] S45: The license granting unit 13 requests the email sending unit 14 to send an email to the administrator of tenant A notifying the administrator that a guest license has been granted to user B. The license granting unit 13 requests the email sending unit 14 to send an email to user B notifying the administrator that a guest license has been granted to user B.
[0126] S46: The email sending unit 14 sends an email to the administrator of tenant A, notifying that a guest license has been granted to user B. The terminal device 30A receives this email and displays a guest user participation completion notification email screen. An example of the guest user participation completion notification email screen is shown in FIG. 20.
[0127] S47: The email sending unit 14 sends an email to user B notifying that a guest license has been granted. The terminal device 30B receives this email and displays a guest user invitation completion notification email screen. An example of the guest user invitation completion notification email screen is shown in FIG. 21.
[0128] S48: The license granting unit 13 notifies the Web service processing unit 12 that the guest license has become valid.
[0129] S49: The Web service processing unit 12 generates a Web page that displays that the guest license has been validated, and transmits the Web page via the third communication unit 11 to the terminal device 30B.
[0130] S50: The first communication unit 31 of the terminal device 30B receives the web page, and the display control unit 32 displays it.
[0131] Fig. 19 is an example of an invitation acceptance setting screen 170 that is displayed when URL 157 is pressed on the invitation email screen of Fig. 17. The invitation acceptance setting screen 170 has a message 171 that reads, "User A has invited you to the following tenant as a guest. Do you want to accept the invitation?", a tenant name 172, a reject button 173, and an accept button 174.
[0132] In this way, user B can input whether or not to accept the granting of the guest license by accessing URL 157 in the email.
[0133] 20 shows a guest user invitation completion notification email screen 190 sent to the administrator. The guest user invitation completion notification email screen 190 includes a sender email address 191 (the system's email address), a destination email address 192 (the administrator's email address), a message 193 saying "We are informing you that User B has accepted the invitation to become a guest user of the next tenant," a tenant name 194, an invitee 195, a guest type 196, and an expiration date 197.
[0134] In this way, when User B accepts to join as a guest, the tenant administrator will also receive an email informing them that a guest user has been added, and the administrator can confirm the increase in user licenses, including the source of the guest invitation.
[0135] 21 shows a guest user participation completion notification email screen 180 sent to user B. The guest user participation completion notification email screen 180 includes a sender email address 181, a destination email address 182 (user B's email address), a message 183 saying "We are informing user B that a guest user license has been granted to him / her in the following tenant," a tenant name 184, an inviter 185, a guest type 186, and an expiration date 187.
[0136] In this way, when User B accepts participation as a guest, User B will receive an email informing them that their guest participation has been completed.
[0137] <Checking the expiration date of the guest license and what to do when it expires> Next, the process of checking the expiration date of a license and processing at the time of expiration will be described with reference to Fig. 22 to Fig. 29. Fig. 22 is an example of a sequence diagram illustrating the process in which the information processing system 10 proposes upgrading to a formal license when a guest license is executed. For ease of explanation, the explanation will be divided into Fig. 22A to Fig. 22C. Fig. 23 to Fig. 29 are example screens of the terminal device 30 referred to in the explanation of Fig. 22.
[0138] First, a case where the service class of the guest license is a license with a limited term will be described.
[0139] S51: At a predetermined time once a day, such as midnight, the application management unit 15 requests the license granting unit 13 to check the number of days remaining until the expiration date of the expiry date-limited license.
[0140] S52: The license granting unit 13 acquires the tenant IDs of all tenants from the tenant information storage unit 41.
[0141] S53: The license granting unit 13 acquires from the license information storage unit 43 the license ID of a time-limited license whose expiration date is approaching or has passed.
[0142] S54: The license granting unit 13 acquires the user information (user name, email address, etc.) associated with the license ID of step S53 from the user information storage unit .
[0143] S55: The license granting unit 13 acquires information on the administrator of each tenant (role of which is tenant administrator) from the user information storage unit .
[0144] S56: If there is one week (this is just an example, and it could be a few days or one month) remaining until the expiration date, the license granting unit 13 creates one-time authentication information and stores it in the authentication information storage unit 44 in association with user B (all information linked to the user, such as user ID, tenant ID, etc.).
[0145] S57: The license granting unit 13 sends the user information (user name, email address, etc.) of user B, the one-time authentication information, and the content of the email notifying that the expiration date is approaching to the email sending unit 14, requesting that the email be sent to user B. The license granting unit 13 sends the user information (user name, email address, etc.) of user B, the email address of the administrator, and the content of the email notifying that the expiration date is approaching to the email sending unit 14, requesting that the email be sent to the administrator of the same tenant as user B. The license granting unit 13 also generates a web page for upgrading the license (screen 250 requesting upgrade to the official version license in FIG. 27), and sets the URL of this web page in the content of the email. The one-time authentication information is set as a query parameter of the URL.
[0146] S58: For user B, who has one week left until the expiration date, the email sending unit 14 sends an email with the above URL to user B, stating that there is one week left until the expiration date. The terminal device 30B receives this email and displays an expiration notification email screen. An example of the expiration notification email screen is shown in FIG.
[0147] S59: If there is a guest user who has one week left until the expiration date, the email sending unit 14 sends an email to the administrator of the same tenant as user B, notifying him / her that the guest license has one week left.
[0148] S60: What happens if the expiration date has passed? If the expiration date has passed, the license granting unit 13 creates one-time authentication information, associates it with user B (all information associated with the user, such as a user ID and a tenant ID), and stores it in the authentication information storage unit 44.
[0149] S61: The license granting unit 13 sends the user information (user name, email address, etc.) of user B, the one-time authentication information, and the content of the email notifying that the expiration date has passed to the email sending unit 14, requesting that the email be sent to user B. The license granting unit 13 sends the user information (user name, email address, etc.) of user B, the email address of the administrator, and the content of the email notifying that the expiration date has passed to the email sending unit 14, requesting that the email be sent to the administrator of the same tenant as user B. The license granting unit 13 also generates a web page (service usage questionnaire screen 240 in FIG. 26) that displays a questionnaire, and sets the URL of this web page in the content of the email. The one-time authentication information is set as a query parameter of the URL.
[0150] S62: If the expiration date has passed, the email sending unit 14 sends an email with the above URL to user B notifying that the guest license has expired. The terminal device 30B receives this email and displays a license expiration notification screen. An example of the license expiration notification screen is shown in FIG. 24.
[0151] S63: If the expiration date has passed, the email sending unit 14 sends an email to the administrator of the same tenant as user B notifying that the guest license has expired.
[0152] 23 shows an example of an expiration notification email screen 210 indicating that one week remains on the guest license. The expiration notification email screen 210 includes a sender email address 211 (the system's email address), a destination email address 212 (user B's email address), a message 213 stating "The expiration date of the guest license for the next tenant is approaching," a tenant name 214, an expiration date 215, a message 216 stating "If you wish to continue using the service, please request the tenant administrator to add a formal license from the following URL," and a URL 217 (linked to an upgrade request screen 250 to a formal license in FIG. 27).
[0153] 24 shows an example of a license expiration notification screen 220 notifying that the validity period of the guest license has passed. The license expiration notification screen 220 includes a sender email address 221 (the system's email address), a destination email address 222 (user B's email address), a message 223 stating "The guest license for the next tenant has expired. You will no longer be able to use the service," a tenant name 224, an expiration date 225, a message 226 stating "If you wish to continue using the service, please request the tenant administrator to add a formal license from the following URL," and a URL 227 (linked to the service usage survey screen 240 in FIG. 26).
[0154] Next, with reference to FIG. 22B, a case where the guest license is a license with limited functionality will be described.
[0155] S64: At a fixed time once a day, such as midnight, the application management unit 15 requests the license granting unit 13 to check whether a certain period of time has passed since the application management unit 15 granted the license with limited functionality. This is to encourage the application management unit 15 to upgrade to a formal license.
[0156] S65: The license granting unit 13 acquires the tenant IDs of all the tenants from the tenant information storage unit 41.
[0157] S66: The license granting unit 13 acquires from the license information storage unit 43 a license ID for which a certain period of time has elapsed since the license with function restriction was granted.
[0158] S67: The license granting unit 13 acquires the user information (user name, email address, etc.) associated with the license ID of step S66 from the user information storage unit .
[0159] S68: The license granting unit 13 acquires information (user name, email address) of the administrator of each tenant (whose role is tenant administrator) from the tenant information storage unit 41.
[0160] S69: The license granting unit 13 creates one-time authentication information, associates it with user B (all information associated with the user, such as user ID, tenant ID, etc.), and stores it in the authentication information storage unit 44.
[0161] S70: The license granting unit 13 sends to the email sending unit 14 the user information of user B (user name, email address, etc.), one-time authentication information, and the content of an email indicating that a certain period of time has passed since the function-limited license was granted, and requests that the email be sent to user B. The license granting unit 13 sends to the email sending unit 14 the user information of user B (user name, email address, etc.), the email address of the administrator (which is the same as that of user B), and the content of an email indicating that a certain period of time has passed since the function-limited license was granted, and requests that the email be sent to the administrator. The license granting unit 13 also generates a web page for upgrading to a formal license (upgrade request screen 250 to a formal license in FIG. 27), and sets the URL of this web page in the content of the email. The one-time authentication information is set as a query parameter of the URL.
[0162] S71: After a certain period of time has passed since the license with limited functionality was granted to User B, the email sending unit 14 sends User B an email with the above URL to inform him that a certain period of time has passed since the license with limited functionality was granted (license upgrade). The terminal device 30B receives this email and displays a certain period expiration notification email screen. An example of the certain period expiration notification email screen is shown in FIG. 25.
[0163] S72: If there is a guest user for whom a certain period of time has passed since the license with limited functionality was granted, the email sending unit 14 sends an email to the administrator of the same tenant as user B informing them that a certain period of time has passed since the license with limited functionality was granted (license upgrade).
[0164] 25 shows an example of a fixed-period expiration notification email screen 230 for an email informing the user that a fixed period of time has elapsed since the issuance of a license with limited functionality. The fixed-period expiration notification email screen 230 includes a sender email address 231 (the system's email address), a destination email address 232 (user B's email address), a message 233 stating, "You are currently using the service as a guest user of the following tenant. This is to inform you about the official version license," a tenant name 234, a message 235 stating, "If you would like to use the official version service with the functional limitations removed, please request the tenant administrator to add a regular version license from the following URL," and a URL 236 (linked to an upgrade request screen 250 to the official version license in FIG. 27).
[0165] Next, with reference to FIG. 22C, a process will be described in which User B, who has received an email informing him that his guest license has expired, requests the issuance of a formal license.
[0166] S73: User B receives the email with the above URL notifying him / her that the guest license has expired, via the email software of terminal device 30B. User B clicks URL 227 displayed on license expiration notification screen 220 in Fig. 24. Operation acceptance unit 33 of terminal device 30B accepts the operation.
[0167] S74: The first communication unit 31 of the terminal device 30B connects to the URL 227.
[0168] S75: The third communication unit 11 of the information processing system 10 acquires one-time authentication information from the query parameter of the URL, and the Web service processing unit 12 requests the license granting unit 13 to authenticate the one-time authentication information.
[0169] S76: The license granting unit 13 determines whether the one-time authentication information is stored in the authentication information storage unit 44 or not.
[0170] S77: The license granting unit 13 sends the authentication result (success) to the Web service processing unit 12.
[0171] S78: Since the authentication is successful, the Web service processing unit 12 generates a questionnaire screen inquiring whether the user wishes to continue using the service, and transmits the questionnaire screen to the terminal device 30B via the third communication unit 11. An example of the service usage questionnaire screen is shown in Fig. 26. The questionnaire is displayed when the license has expired so that opinions at the time of expiration can be accumulated and the number of upgrades after expiration can be counted.
[0172] S79: The first communication unit 31 of the terminal device 30B receives the screen information of the service usage questionnaire screen, and the display control unit 32 displays it.
[0173] S80: User B inputs whether or not he / she wishes to continue using the service on the service usage questionnaire screen. The operation accepting unit 33 of the terminal device 30B accepts the operation.
[0174] S81: The first communication unit 31 of the terminal device 30B transmits the answer content to the information processing system 10.
[0175] S82: The third communication unit 11 of the information processing system 10 receives the reply, and the Web service processing unit 12 requests the application management unit 15 to record the reply.
[0176] S83: The application management unit 15 records the content of User B's answer in the application information storage unit 45.
[0177] S84: The application management unit 15 transmits to the Web service processing unit 12 a message that the response has been recorded.
[0178] S85: If the answer is "Yes" indicating a desire to continue using the service, the Web service processing unit 12 generates an upgrade request screen requesting an upgrade to the official version license and transmits it to the terminal device 30B via the third communication unit 11.
[0179] S86: The first communication unit 31 of the terminal device 30B receives the screen information of the upgrade request screen, and the display control unit 32 displays it. An example of the upgrade request screen is shown in FIG.
[0180] S87: User B inputs a comment to the administrator of Tenant A and presses the request button. The operation reception unit 33 of the terminal device 30B receives the operation.
[0181] S88: The first communication unit 31 of the terminal device 30B designates user B and the administrator of tenant A and transmits to the information processing system 10 a message indicating that the license will be upgraded to the official version license.
[0182] S89: The third communication unit 11 of the information processing system 10 receives the request to upgrade to the official version license, and the Web service processing unit 12 sends this request to the license granting unit 13.
[0183] S90: The license granting unit 13 acquires tenant information from the tenant information storage unit 41 by specifying, for example, the tenant ID to which user B belongs. Although the tenant information itself is not used in processing, the existence of the tenant ID is confirmed here.
[0184] S91: To report to the tenant administrator, the license granting unit 13 acquires information about the administrator of tenant A (whose role is tenant administrator) from the user information storage unit .
[0185] S92: The license granting unit 13 creates one-time authentication information, associates it with the administrator (all information associated with the administrator, such as the user ID, tenant ID, etc.), and stores the one-time authentication information in the license information storage unit 43.
[0186] S93: The license granting unit 13 sends the information of user B, the one-time authentication information, and the content of an email requesting an upgrade to a formal license for user B to the email sending unit 14, requesting that the email be sent to the administrator of tenant A. The license granting unit 13 also sets the URL of a web page that displays the formal license upgrade request screen 280 of FIG. 31 in the email.
[0187] S94: The email sending unit 14 sends an email to the administrator requesting that User B upgrade to the official version license. The administrator's terminal device 30C receives this email and displays an upgrade request email screen. An example of the upgrade request email screen is shown in FIG. 29.
[0188] S95: The license granting unit 13 notifies the Web service processing unit 12 that the upgrade request has been sent to the administrator.
[0189] S96: The Web service processing unit 12 generates an upgrade request completion screen, and transmits screen information of the upgrade request completion screen, including information that the upgrade request has been transmitted to the administrator, via the third communication unit 11 to the terminal device 30B.
[0190] S97: The first communication unit 31 of the terminal device 30B receives the screen information of the upgrade request completion screen, and the display control unit 32 displays it. An example of the upgrade request completion screen is shown in FIG.
[0191] 26 is an example of a service usage questionnaire screen 240 that is displayed when URL 227 in FIG. 24 is clicked. Service usage questionnaire screen 240 has a message 241 asking, "Do you want to continue using the service provision system in the future?", a "Yes" option 242, a "No" option 243, a comment input field 244, and a submit button 245. By having User B answer the questionnaire, the administrator of Tenant A can identify users who wish to continue using the service, and if there are still enough official version licenses, the administrator has the advantage of only having to perform the work of adding official version licenses once (notifying the user of the expiration and upgrading the license).
[0192] Fig. 27 shows an upgrade to a formal license request screen 250 that is displayed when "Yes" is selected in Fig. 26. The upgrade to a formal license request screen 250 has a message 251 asking "Do you want to request a formal user license for the following tenant from the tenant administrator?", a tenant name 252, a comment field 253, a cancel button 254, and a request button 255.
[0193] The upgrade request screen 250 to the official version license is also displayed when User B clicks URL 217 in Fig. 23 or URL 236 in Fig. 25. User B can add special notes to the request by entering a comment in the comment field for the tenant administrator.
[0194] 28 is an example of an upgrade request completion screen 260. The upgrade request completion screen 260 has a message 261 that reads, "An upgrade request has been sent to the tenant administrator."
[0195] 29 shows an example of an upgrade request email screen 270. The upgrade request email screen 270 includes a sender email address 271 (the system's email address), a destination email address 272 (the administrator's email address), a message 273 stating "You have received a request to upgrade to the official version user license for the next tenant," a tenant name 274, a user name 275, a comment 276, a message 277 stating "Please complete the license upgrade procedure from the following URL," and a URL 278. The administrator clicks the URL 278 (which connects to an official version license upgrade request screen 280) listed in the email.
[0196] <Requests for upgrading to a formal license and renewal procedures> Next, the process of requesting and updating to upgrade the guest license of the invited user to a formal license will be described with reference to Figures 30 to 32. Figure 30 is an example of a sequence diagram illustrating the request and update to upgrade the guest license of user B to a formal license by the administrator. Figures 31 and 32 are example screens of terminal device 30 referred to in the description of Figure 30.
[0197] S101: First, the administrator presses the URL 278 on the upgrade request email screen 270 of Fig. 29. The operation acceptance unit 33 of the terminal device 30C accepts the operation.
[0198] S102: The first communication unit 31 of the terminal device 30C connects to the URL278.
[0199] S103: The third communication unit 11 of the information processing system 10 acquires one-time authentication information from the query parameter of the URL 278, and the Web service processing unit 12 requests the license granting unit 13 to authenticate the one-time authentication information.
[0200] S104: The license granting unit 13 determines whether the one-time authentication information is stored in the authentication information storage unit 44 or not.
[0201] S105: The license granting unit 13 sends the authentication result (success) to the Web service processing unit 12.
[0202] S106: Since the authentication is successful, the Web service processing unit 12 generates a formal license upgrade request screen for requesting an upgrade to a formal license, and transmits the screen information to the terminal device 30C via the third communication unit 11. An example of the formal license upgrade request screen is shown in FIG.
[0203] S107: The first communication unit 31 of the terminal device 30C receives the screen information of the official version license upgrade request screen, and the display control unit 32 displays it.
[0204] S108: The administrator presses the accept button on the official license upgrade request screen to request an upgrade to the official license. The operation accepting unit 33 of the terminal device 30C accepts the operation.
[0205] S109: By pressing the accept button, the first communication unit 31 of the terminal device 30C designates the user B and the administrator of the tenant A and transmits a request to the information processing system 10 to upgrade the guest license to the official license.
[0206] S110: The third communication unit 11 of the information processing system 10 receives the request, and the Web service processing unit 12 requests the license granting unit 13 to upgrade the guest license to a formal license.
[0207] S111: The license granting unit 13 acquires tenant information from the tenant information storage unit 41, for example, by specifying the tenant ID to which the administrator belongs. Although the tenant information itself is not used in the process, the existence of the tenant ID is confirmed here.
[0208] S112: The license granting unit 13 searches the user information storage unit 42 using the tenant ID and the user ID of user B, and acquires the user information of user B (license ID, user name, email address, etc.).
[0209] S113: The license granting unit 13 updates the service ID of the guest license of user B associated with the license ID in the license information storage unit 43 to the official version license.
[0210] S114: The license granting unit 13 sends the email address of user B and the content of the email notifying that the user B has been upgraded to the official license to the email sending unit 14, and requests that the email be sent to user B.
[0211] S115: The email sending unit 14 sends an email to User B informing him that the guest license has been upgraded to a formal license. The terminal device 30B receives this email and displays an upgrade completion email screen. An example of the upgrade completion email screen is shown in FIG. 32.
[0212] S116: The license granting unit 13 notifies the Web service processing unit 12 that the upgrade to the official version license has been completed.
[0213] S117: The Web service processing unit 12 creates a Web page that displays the fact that the upgrade to the official version license has been completed, and transmits the Web page via the third communication unit 11 to the terminal device 30C.
[0214] S118: The first communication unit 31 of the terminal device 30C receives the Web page indicating that the upgrade to the official version license has been completed, and the display control unit 32 displays it.
[0215] 31 is an example of a formal license upgrade request screen 280 that is displayed when URL 278 in FIG. 29 is pressed. The formal license upgrade request screen 280 has a message 281 that reads, "User B has requested that you upgrade the following tenant. Do you want to accept the request?", a tenant name 282, a reject button 283, and an accept button 284. The administrator can accept or reject the license upgrade requested by User B.
[0216] 32 is an example of an upgrade completion email screen 290. The upgrade completion email screen 290 includes a sender email address 291 (the system's email address), a destination email address 292 (user B's email address), a message 293 stating "Upgrade to the official version license for the next tenant has been completed," a tenant name 294, and a message 295 stating "From now on, you can use the service without any restrictions such as functions or expiration dates." User B can understand that he or she can now use the service with an official version license.
[0217] <Major Effects> In the information processing system 10 of this embodiment, an existing user with a license sends an invitation to an unlicensed user to grant a license, and if the user accepts, a guest license is automatically granted, thereby saving the administrator the trouble of granting a license to a guest user.
[0218] <Other application examples> The best mode for carrying out the present invention has been described above using examples, but the present invention is not limited to these examples in any way, and various modifications and substitutions can be made within the scope that does not deviate from the gist of the present invention.
[0219] For example, in the above embodiment, user A invites user B one by one, but multiple users may be invited at once, or all users in the tenant may be invited.
[0220] Furthermore, the information processing system 10 may simultaneously issue a license invitation and a tenant invitation. That is, one or more licenses are automatically granted to a user who is invited to become a tenant.
[0221] Furthermore, in this embodiment, email is used as a method of notifying users and administrators, but a social network system (SNS) or the like may also be used.
[0222] Furthermore, in this embodiment, the execution of an application is taken as an example of a service, but the services provided to tenant users are not particularly limited and may include simple distribution of information, use of equipment, video conferencing, use of facilities, and the like.
[0223] Furthermore, the configuration examples in Fig. 5 and the like are divided according to main functions to facilitate understanding of the processing by the terminal device 30, the device 20, and the information processing system 10. The method of dividing the processing units and the names thereof do not limit the present invention. The processing by the terminal device 30, the device 20, and the information processing system 10 can be divided into even more processing units depending on the processing content. Furthermore, the processing can be divided so that one processing unit includes even more processes.
[0224] Additionally, the devices described in the examples are merely illustrative of one of several computing environments for implementing the embodiments disclosed herein. In one embodiment, information processing system 10 includes multiple computing devices, such as a server cluster, configured to communicate with each other via any type of communication link, including a network, shared memory, etc., and to perform the processes disclosed herein.
[0225] Furthermore, the information processing system 10 can be configured to share the processing steps disclosed in the present embodiment, such as those shown in Figures 13, 22, and 30, in various combinations. For example, a process executed by a specific unit can be executed by multiple information processing devices included in the information processing system 10. Furthermore, the information processing system 10 may be integrated into a single server device, or may be divided into multiple devices.
[0226] Each function of the above-described embodiments can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to perform each function by software, such as a processor implemented by an electronic circuit, as well as devices such as an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and conventional circuit modules designed to perform each of the above-described functions. [Explanation of symbols]
[0227] 10 Information Processing Systems 20 equipment 30 Terminal Equipment 40 External Service Systems 100 Service Delivery System [Prior art documents] [Patent documents]
[0228] [Patent Document 1] Japanese Patent Application Publication No. 2019-036141
Claims
1. An information processing system that provides a service according to a license granted to a user, a communication unit that, when receiving an invitation request for granting a license specifying a user, inquires of the user whether the user agrees to grant the license; a license granting unit that grants the license to the user when the user receives a response indicating that the user agrees to the granting of the license; When an upgrade to a formal license is requested by specifying the user from a terminal device connected to the URL of a web page requesting an upgrade to a formal license, The information processing system is characterized in that the license granting unit sends an email to the administrator of the tenant to which the user belongs, informing them that there is a request to upgrade to a formal license, and displaying the user's user name and the URL of a web page where the user can agree to the upgrade to a formal license.
2. 2. The information processing system according to claim 1, wherein the license granted to the user is a license with no functional limitations but a term of validity, or a license with no term of validity but with functional limitations.
3. 3. The information processing system according to claim 2, wherein the communication unit receives, together with the invitation request, a designation of a license with no functional limitations but a time limit, or a license with no time limit but a functional limitation.
4. If the user is granted a license with the above-mentioned functional limitations, the license granting unit, after a certain period of time has elapsed since granting the license with the function restrictions, displays a message instructing the user to upgrade to a formal license without the function restrictions; 4. The information processing system according to claim 2, wherein an email containing a URL of a web page requesting the user to upgrade to the official license is sent to the user.
5. If the said license with a time limit is granted to the said user, the license granting unit, when the expiration date is approaching, displays a message informing the user of an upgrade to a formal license with no expiration date; 4. The information processing system according to claim 2, wherein an email containing a URL of a web page requesting the user to upgrade to the official license is sent to the user.
6. If the license is limited to a certain period and the period has expired, the license granting unit sends an email to the user, the email including a message informing the user that the service cannot be used and a URL; Accepting a request from the terminal device connected to the URL as to whether or not the user wishes to continue using the service; 4. The information processing system according to claim 2, wherein when the terminal device transmits a message indicating that it wishes to continue using the service, a web page requesting an upgrade to a formal license is transmitted to the terminal device.
7. A license granting method performed by an information processing system that provides a service according to a license granted to a user, comprising: a step in which, when a communication unit receives an invitation request for granting a license specifying a user, the communication unit inquires of the user about consent to granting the license; a step of a license granting unit granting the license to the user when the user receives a response indicating that the user agrees to grant the license; When an upgrade to a formal license is requested by specifying the user from a terminal device connected to the URL of a web page requesting an upgrade to a formal license, The license granting method is characterized in that the license granting unit sends an email to the administrator of the tenant to which the user belongs, notifying the administrator that there is a request to upgrade to a formal license, and displaying the user's user name and the URL of a web page where the user can agree to the upgrade to a formal license.
8. An information processing system that provides services according to the license granted to the user, a communication unit that, when receiving an invitation request for granting a license specifying a user, inquires of the user whether the user agrees to grant the license; a license granting unit that grants the license to the user when the user has received a response indicating that the user has accepted the granting of the license; When an upgrade to a formal license is requested by specifying the user from a terminal device connected to the URL of a web page requesting an upgrade to a formal license, The license granting unit is a program for sending an email to the administrator of the tenant to which the user belongs, informing them of a request to upgrade to a formal license, along with the user's user name and the URL of a web page where the user can accept the upgrade to a formal license.
Citation Information
Patent Citations
Server device, invitation processing program, portable terminal, invitation processing system and invitation processing method
JP2005332187A
Cloud system, license management method for cloud service, and program
JP2012256248A
Methods and systems for realizing game center having player specific options and statistics
JP2015057102A
Information processing device
JP2019036141A
Communication system
JP2019197590A