CN110493175B - Information processing method, electronic equipment and storage medium - Google Patents

Information processing method, electronic equipment and storage medium Download PDF

Info

Publication number
CN110493175B
CN110493175B CN201910586527.XA CN201910586527A CN110493175B CN 110493175 B CN110493175 B CN 110493175B CN 201910586527 A CN201910586527 A CN 201910586527A CN 110493175 B CN110493175 B CN 110493175B
Authority
CN
China
Prior art keywords
server
jupyterhub
account
storage resource
terminal request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910586527.XA
Other languages
Chinese (zh)
Other versions
CN110493175A (en
Inventor
周明
高峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201910586527.XA priority Critical patent/CN110493175B/en
Publication of CN110493175A publication Critical patent/CN110493175A/en
Application granted granted Critical
Publication of CN110493175B publication Critical patent/CN110493175B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Abstract

The embodiment of the application discloses an information processing method, which comprises the following steps: receiving a terminal request; the terminal request carries a first account; sending a terminal request to a first jupyterhub server corresponding to a first account; controlling a first account to access a first storage resource through a first jupyterhub server; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of the physical machine corresponding to the first jupyterhub server. The embodiment of the application also discloses an electronic device and a storage medium.

Description

Information processing method, electronic equipment and storage medium
Technical Field
The present application relates to, but not limited to, the field of computer technologies, and in particular, to an information processing method, an electronic device, and a storage medium.
Background
In the related art, jupyter is used for providing an interactive notebook, so that research personnel can create and share Python documents through the World Wide Web (Web); however, although writing of codes is simplified by using the jupyter, the jupyter only supports the development operation of a single user and cannot realize the secure isolation between the physical resources corresponding to a plurality of users.
Disclosure of Invention
In order to solve the above technical problems, embodiments of the present application are expected to provide an information processing method, an electronic device, and a storage medium, so as to solve the problem that, in the related art, a jupyter only supports research and development operations of a single user and cannot implement security isolation between physical resources corresponding to multiple users, and implement resource sharing and security isolation between multiple users.
The technical scheme of the application is realized as follows:
an information processing method, the method comprising:
receiving a terminal request; the terminal request carries a first account;
sending the terminal request to a first jupyterhub server corresponding to the first account;
controlling, by the first jupyterhub server, the first account to access a first storage resource; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of a physical machine corresponding to the first jupyterhub server.
Optionally, the sending the terminal request to a first jupyterhub server corresponding to the first account includes:
generating a lua script through the nginx server;
acquiring the first account from the terminal request through the lua script;
if the preset list stored by the nginx server comprises a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server;
and sending the terminal request to the first jupyterhub server through the nginx server.
Optionally, the method further includes:
if the preset list does not include a second jupyterhub server corresponding to the first account, sending the first account to an authentication server; the authentication server is in signal connection with the first jupyterhub server;
and receiving a first jupyterhub server allocated to the first account by the authentication server.
Optionally, the method further includes:
receiving the preset list sent by an authentication server through the nginx server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server has a signal connection with the nginx server.
Optionally, the controlling, by the first jupyterhub server, the first account to access the first storage resource includes:
creating, by the first jupyterhub server, a second account associated with the first account;
determining the first storage resource corresponding to the second account from the second storage resource;
determining the operation authority of the second account on the first storage resource;
controlling, by the first jupyterhub server, the second account to access the first storage resource based on the operating permission.
Optionally, the creating, by the first jupyterhub server, a second account associated with the first account includes:
verifying the first account by the first jupyterhub server;
and if the first account is allowed to access the first storage resource according to the verification result, creating the second account through the first jupyterhub server.
Optionally, the verifying the first account by the first jupyterhub server includes:
receiving a preset list sent by an authentication server through the first jupyterhub server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server is in signal connection with the first jupyterhub server;
and verifying the first account through the first jupyterhub server according to the preset list to obtain the verification result.
An electronic device, the electronic device comprising: a processor, a memory, and a communication bus;
the communication bus is used for realizing communication connection between the processor and the memory;
the processor is used for executing the information processing program stored in the memory so as to realize the following steps:
receiving a terminal request; the terminal request carries a first account;
sending the terminal request to a first jupyterhub server corresponding to the first account;
controlling, by the first jupyterhub server, the first account to access a first storage resource; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of a physical machine corresponding to the first jupyterhub server.
Optionally, the processor is further configured to implement the following steps:
generating a lua script through the nginx server;
acquiring the first account from the terminal request through the lua script;
if the preset list stored by the nginx server comprises a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server;
and sending the terminal request to the first jupyterhub server through the nginx server.
A storage medium storing one or more programs, the one or more programs being executable by one or more processors to implement the steps of the method of information processing as described above.
The information processing method, the electronic device and the storage medium provided by the embodiment of the application receive a terminal request; the terminal request carries a first account; sending a terminal request to a first jupyterhub server corresponding to a first account; controlling a first account to access a first storage resource through a first jupyterhub server; the first storage resource comprises a storage resource corresponding to a first account in a second storage resource of a physical machine corresponding to a first jupyterhub server; that is to say, in the embodiment of the application, the storage resources associated with the jupyterhub servers corresponding to different accounts are unique, so that after receiving the terminal request, the electronic device may send the terminal request to the first jupyterhub server corresponding to the first account based on the first account carried by the terminal request, and further, the electronic device controls the first account to access the first storage resource corresponding to the first account through the first jupyterhub server; the problem that the jupyter in the related technology only supports the research and development operation of a single user and cannot realize the safety isolation among the physical resources corresponding to a plurality of users is solved, and the resource sharing and the safety isolation among the plurality of users are realized.
Drawings
Fig. 1 is a schematic flowchart of an information processing method according to an embodiment of the present application;
fig. 2 is a schematic flowchart of another information processing method provided in an embodiment of the present application;
fig. 3 is a schematic view of a topology of an electronic device according to an embodiment of the present application;
fig. 4 is a schematic flowchart of another information processing method provided in an embodiment of the present application;
fig. 5 is a schematic diagram of a network topology provided in an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application.
In the related art, the Jupyter official gives the Jupyperhub branch, and single-machine multi-user use can be realized, but the scheme is limited to one machine, and if remote start is developed, all the cluster machines are required to create a user on the system, and the cost of creating the user is not too large for a large user quantity. In addition, in the related art, jupyter can be made into containers, and the containers can be packaged in a machine to serve; however, the operation of the container in this solution requires certain basic resources, the container can only provide services and is not reliable, and much effort is required for resource management under the container to solve, so that the cost of the solution is not high.
Based on the foregoing, an embodiment of the present application provides an information processing method applied to an electronic device, and as shown in fig. 1, the method includes the following steps:
step 101, receiving a terminal request.
The terminal request carries a first account.
In the embodiment of the application, the first account is used for identifying a terminal corresponding to the terminal request. The terminal requests at least for requesting access to a storage resource associated with a certain jupyterhub server.
In practical applications, a user sends a terminal request to an electronic device through a terminal, and the electronic device receives the terminal request from the terminal.
And 102, sending the terminal request to a first jupyterhub server corresponding to the first account.
In the embodiment of the application, the account and the jupyterhub server have a corresponding relation; for example, an account may have a unique jupyterhub server associated with it; alternatively, multiple accounts may correspond to the same jupyterhub server; alternatively, one account may correspond to a plurality of jupyterhub servers.
In the embodiment of the application, after receiving the terminal request, the electronic device may acquire the first account from the terminal request, and then send the terminal request to the first jupyterhub server corresponding to the first account.
In practical application, the electronic device can realize the distribution operation from the terminal request to the jupyterhub server corresponding to the terminal request through the inlet component of the electronic device; here, the portal component has at least a function of performing uniform distribution processing of terminal requests.
And 103, controlling the first account to access the first storage resource through the first jupyterhub server.
The first storage resource comprises a storage resource corresponding to the first account in a second storage resource of the physical machine corresponding to the first jupyterhub server.
In the embodiment of the application, the storage resources associated with the jupyterhub servers corresponding to different accounts are unique; that is, no matter whether the account and the jupyterhub server are in a one-to-one correspondence relationship, or the account and the jupyterhub server are in a one-to-many correspondence relationship, or the account and the jupyterhub server are in a many-to-one correspondence relationship, as long as the jupyterhub server corresponding to the account is determined, the storage resource that can be accessed by the account at the corresponding jupyterhub server is unique.
In practical application, after the electronic device sends the terminal request to the first jupyterhub server corresponding to the first account, the first account can be controlled by the first jupyterhub server to access the unique first storage resource corresponding to the first account; therefore, the resource safety isolation among the accounts is realized; meanwhile, storage resources related to the same jupyterhub server can be shared among different accounts.
The information processing method provided by the embodiment of the application receives a terminal request; the terminal request carries a first account; sending a terminal request to a first jupyterhub server corresponding to a first account; controlling a first account to access a first storage resource through a first jupyterhub server; the first storage resource comprises a storage resource corresponding to a first account in a second storage resource of a physical machine corresponding to a first jupyterhub server; that is to say, in the embodiment of the application, the storage resources associated with the jupyterhub servers corresponding to different accounts are unique, so that after receiving the terminal request, the electronic device may send the terminal request to the first jupyterhub server corresponding to the first account based on the first account carried by the terminal request, and further, the electronic device controls the first account to access the first storage resource corresponding to the first account through the first jupyterhub server; the problem that the jupyter in the related technology only supports the research and development operation of a single user and cannot realize the safety isolation among the physical resources corresponding to a plurality of users is solved, and the resource sharing and the safety isolation among the plurality of users are realized.
Based on the foregoing embodiments, an embodiment of the present application provides an information processing method applied to an electronic device, and as shown in fig. 2, the method includes the following steps:
here, referring to the network topology shown in fig. 3, the electronic device 3, the terminal 31, and the authentication server 32 according to the embodiment of the present application will be briefly described. Here, the user sends a terminal request to the electronic device 3 through a client on the terminal using the first account. The electronic devices include, but are not limited to, a nginx server 33, a first jupyterhub server 34, a third jupyterhub server 35, and a fourth jupyterhub server 36; the nginx server 33 is used for uniformly distributing and processing the terminal requests; at least a first jupyterhub server 34, a third jupyterhub server 35 and a fourth jupyterhub server 36 form a jupyterhub server cluster; the first, third and fourth jupyterhub servers 34, 35 and 36 respectively correspond to storage resources of different physical machines.
Step 201, receiving a terminal request.
The terminal request carries a first account.
Step 202, generating the lua script through the nginx server.
In the embodiment of the present application, the portal component includes, but is not limited to, a nginx server; furthermore, the electronic device may receive a terminal request from a client on the terminal through the nginx server.
Here, the electronic device may make a lua development on the nginx server, and generate a lua script through the nginx server. Further, the electronic device may retrieve the data stream based on the lua script, create a buffer and write the retrieved data stream to the buffer.
Step 203, obtaining the first account from the terminal request through the lua script.
In this embodiment of the application, the electronic device obtains the first account from the terminal request through the lua script, where the obtaining of the first account from a Uniform Resource Locator (URL), a cookie, a header, or data requested by the terminal may include obtaining the first account by the electronic device. In the embodiment of the present application, the username referred to below is equivalent to the first account.
Illustratively, a terminal sends a terminal request to an electronic device based on an HTTP protocol, and then, in the terminal request sent by a user through a client on the terminal, the following situations may occur according to a scenario: the URL comprises a username and a client identifier client _ id; the cookie has a username; a referrer is arranged in the header, and the username can be also taken by splitting the referrer; a username also appears in the request parameter data.
In practical application, the electronic device generates the lua script through the nginx server, and after receiving a terminal request sent by a client on the terminal through the nginx server, the electronic device can acquire the first account from the terminal request through the lua script.
In this embodiment of the application, the electronic device sends the received terminal request to the jupyterhub server corresponding to the first account, which may be implemented by the method in steps 204 to 205 or steps 206 to 207.
Step 204, if the preset list stored by the nginx server includes a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server.
In the embodiment of the present application, the preset list is stored in the buffer area described above. It should be noted that the preset list may be generated by the electronic device through the nginx server; of course, the preset list may be generated by the external device of the electronic device. Here, the preset list generated by the external device of the electronic device can reduce the calculation amount of the nginx server, and improve the distribution effect of the nginx server. The data stream that the electronic device may retrieve based on the lua script above comprises a preset list.
In practical application, after the electronic device acquires the first account, the electronic device preferentially reads the preset list in the buffer area, and if the second jupyterhub server corresponding to the first account is found based on the preset list, the second jupyterhub server is determined to be the first jupyterhub server, namely, the target jupyterhub server corresponding to the first account.
And step 205, sending the terminal request to the first jupyterhub server through the nginx server.
In the embodiment of the application, if the electronic device determines the first jupyterhub server corresponding to the first account based on the preset list, the electronic device sends a terminal request to the first jupyterhub server through the nginx server, so that a user can access the storage resource associated with the first jupyterhub server based on the first account.
Step 206, if the preset list does not include the second jupyterhub server corresponding to the first account, sending the first account to the authentication server.
The authentication server and the first jupyterhub server have signal connection.
In the embodiment of the application, if it is determined that the preset list does not include the second jupyterhub server corresponding to the first account, the electronic device sends the first account to the authentication server, and then determines the first jupyterhub server corresponding to the first account by means of the authentication server.
It should be noted that the electronic device determines that the preset list does not include the second jupyterhub server corresponding to the first account, and may be an update delay of the preset list of the buffer area; or the preset list of the real-time update of the buffer does not include the second jupyterhub server corresponding to the first account.
Step 207, receiving a first jupyterhub server allocated to the first account by the authentication server.
In the embodiment of the application, the electronic device determines that the preset list does not include a second jupyterhub server corresponding to the first account, sends the first account to the authentication server, and further receives the first jupyterhub server allocated to the first account by the authentication server.
Here, the first jupyterhub server allocated by the authentication server to the first account may be the first jupyterhub server allocated by the authentication server to the first account based on the preset list generated by the authentication server.
In practical application, if the jupyterhub server corresponding to the first account is not in the preset list updated in the buffer in real time, which indicates that the first account belongs to the first login, the electronic device transmits the first account carried in the terminal request to the authentication server, the authentication server completes authentication according to the account name and the password of the first account, and after the authentication is passed, the information corresponding to the sub-jupyterhub server is returned according to the first account.
Further, in combination with the foregoing method flow, the information processing method according to the embodiment of the present application may further include the following steps: and receiving the preset list sent by the authentication server through the nginx server.
The preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server has a signal connection with the nginx server.
In the embodiment of the application, the nginx server realizes dynamic separation of different accounts by means of the preset list sent by the authentication server, and the phenomenon that the user experience is not ideal due to centralized use of storage resources of a certain jupyterhub server is prevented.
It should be noted that, for the descriptions of the same steps and the same contents in this embodiment as those in other embodiments, reference may be made to the descriptions in other embodiments, which are not described herein again.
Based on the foregoing embodiments, an embodiment of the present application provides an information processing method applied to an electronic device, and as shown in fig. 4, the method includes the following steps:
step 401, receiving a terminal request.
The terminal request carries a first account.
Step 402, sending the terminal request to a first jupyterhub server corresponding to the first account.
Step 403, creating a second account associated with the first account through the first jupyterhub server.
In this embodiment of the application, the second account may be referred to as an operating system account, different second accounts correspond to different processes, and different second accounts have different storage resources that can be accessed on a physical machine associated with the first jupyterhub server.
In the embodiment of the application, the integrated and called storage resources started by the user by using the second account corresponding to the first account are all within the corresponding operating system account authority range; therefore, the isolation of the storage resources is realized by using the authority isolation among the operating system accounts.
In the embodiment of the application, the account name and the password of the second account are the same as those of the first account. The electronic device invokes a system command through the first jupyterhub server to create a second account associated with the first account.
In this embodiment of the present application, step 403 creates, by the first jupyterhub server, a second account associated with the first account, including:
step 403a, the first account is verified by the first jupyterhub server.
In this embodiment of the application, the step 403a of verifying the first account by the first jupyterhub server includes:
firstly, receiving a preset list sent by an authentication server through a first jupyterhub server; the preset list comprises mapping relations between a plurality of accounts generated by the authentication server and a plurality of jupyterhub servers.
The authentication server and the first jupyterhub server have signal connection.
And secondly, verifying the first account through the first jupyterhub server according to the preset list to obtain a verification result.
It should be noted that, the electronic device verifies the first account received by the first jupyterhub server of the electronic device, which can prevent the first account from being attacked maliciously in the process of using the storage resource associated with the first jupyterhub server, improve the security of the use of the storage resource, and improve the stability of the electronic device.
Step 403b, if the first account is allowed to access the first storage resource according to the verification result, creating a second account through the first jupyterhub server.
Step 404, determining a first storage resource corresponding to the second account from the second storage resources.
Step 405, determining the operation authority of the second account on the first storage resource.
In the embodiment of the present application, the operation authority includes, but is not limited to, addition, deletion, and modification.
And 406, controlling the second account to access the first storage resource based on the operation authority through the first jupyterhub server.
In the embodiment of the application, when the electronic device determines the operation authority of the second account on the first storage resource, the first jupyterhub server controls the second account to access the first storage resource based on the operation authority, so that different users are ensured to access the unique storage resource by using the second accounts associated with different first accounts, the storage resources corresponding to the users are isolated from each other, and the operation safety is ensured.
As can be seen from the above, in the electronic device provided in the embodiment of the present invention, the dynamic separator is added before the jupyterhub, so as to reasonably allocate the storage resource on the physical machine associated with the jupyterhub, and the functions of interface authentication and automatic system account creation are added at the jupyterhub; the high availability and the strong stability of the electronic equipment are realized; does not need to spend a large amount of research and development cost and meets the large-scale user quantity.
It should be noted that, for the descriptions of the same steps and the same contents in this embodiment as those in other embodiments, reference may be made to the descriptions in other embodiments, which are not described herein again.
Based on the foregoing embodiments, an embodiment of the present application provides an electronic device, which may be applied to an information processing method provided in the embodiments corresponding to fig. 1, 2, and 4, and as shown in fig. 5, the electronic device 5 includes: a processor 51, a memory 52 and a communication bus 53, the electronic device 5 corresponding to the electronic device 3 in fig. 3, wherein:
the communication bus 53 is used to realize a communication connection between the processor 51 and the memory 52.
The processor 51 is configured to execute the information processing program stored in the memory 52 to implement the following steps:
receiving a terminal request; the terminal request carries a first account;
sending a terminal request to a first jupyterhub server corresponding to a first account;
controlling a first account to access a first storage resource through a first jupyterhub server; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of the physical machine corresponding to the first jupyterhub server.
In other embodiments of the present application, the processor 51 is configured to execute an information processing program stored in the memory 52 to implement the following steps:
generating a lua script through the nginx server;
acquiring a first account from a terminal request through a lua script;
if the preset list stored by the nginx server comprises a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server;
and sending a terminal request to a first jupyterhub server through the nginx server.
In other embodiments of the present application, the processor 51 is configured to execute an information processing program stored in the memory 52 to implement the following steps:
if the preset list does not include a second jupyterhub server corresponding to the first account, sending the first account to an authentication server; the authentication server is in signal connection with the first jupyterhub server;
and receiving a first jupyterhub server allocated to the first account by the authentication server.
In other embodiments of the present application, the processor 51 is configured to execute an information processing program stored in the memory 52 to implement the following steps:
receiving a preset list sent by an authentication server through a nginx server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server has a signal connection with the nginx server.
In other embodiments of the present application, the processor 51 is configured to execute an information processing program stored in the memory 52 to implement the following steps:
creating, by the first jupyterhub server, a second account associated with the first account;
determining a first storage resource corresponding to the second account from the second storage resource;
determining the operation authority of the second account on the first storage resource;
and controlling the second account to access the first storage resource based on the operation authority through the first jupyterhub server.
In other embodiments of the present application, the processor 51 is configured to execute an information processing program stored in the memory 52 to implement the following steps:
verifying the first account through the first jupyterhub server;
and if the verification result allows the first account to access the first storage resource, creating a second account through the first jupyterhub server.
In other embodiments of the present application, the processor 51 is configured to execute an information processing program stored in the memory 52 to implement the following steps:
receiving a preset list sent by an authentication server through a first jupyterhub server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server is in signal connection with the first jupyterhub server;
and verifying the first account through the first jupyterhub server according to the preset list to obtain a verification result.
It should be noted that, for a specific implementation process of the step executed by the processor in this embodiment, reference may be made to the implementation process in the information processing method provided in the embodiments corresponding to fig. 1, 2, and 4, and details are not described here again.
Based on the foregoing embodiments, embodiments of the application provide a computer-readable storage medium storing one or more programs, the one or more programs being executable by one or more processors to implement the steps of:
receiving a terminal request; the terminal request carries a first account;
sending a terminal request to a first jupyterhub server corresponding to a first account;
controlling a first account to access a first storage resource through a first jupyterhub server; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of the physical machine corresponding to the first jupyterhub server.
In other embodiments of the present application, the one or more programs are executable by the one or more processors and further implement the steps of:
generating a lua script through the nginx server;
acquiring a first account from a terminal request through a lua script;
if the preset list stored by the nginx server comprises a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server;
and sending a terminal request to a first jupyterhub server through the nginx server.
In other embodiments of the present application, the one or more programs are executable by the one or more processors and further implement the steps of:
if the preset list does not include a second jupyterhub server corresponding to the first account, sending the first account to an authentication server; the authentication server is in signal connection with the first jupyterhub server;
and receiving a first jupyterhub server allocated to the first account by the authentication server.
In other embodiments of the present application, the one or more programs are executable by the one or more processors and further implement the steps of:
receiving a preset list sent by an authentication server through a nginx server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server has a signal connection with the nginx server.
In other embodiments of the present application, the one or more programs are executable by the one or more processors and further implement the steps of:
creating, by the first jupyterhub server, a second account associated with the first account;
determining a first storage resource corresponding to the second account from the second storage resource;
determining the operation authority of the second account on the first storage resource;
and controlling the second account to access the first storage resource based on the operation authority through the first jupyterhub server.
In other embodiments of the present application, the one or more programs are executable by the one or more processors and further implement the steps of:
verifying the first account through the first jupyterhub server;
and if the verification result allows the first account to access the first storage resource, creating a second account through the first jupyterhub server.
In other embodiments of the present application, the one or more programs are executable by the one or more processors and further implement the steps of:
receiving a preset list sent by an authentication server through a first jupyterhub server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server is in signal connection with the first jupyterhub server;
and verifying the first account through the first jupyterhub server according to the preset list to obtain a verification result.
It should be noted that, for a specific implementation process of the step executed by the processor in this embodiment, reference may be made to the implementation process in the information processing method provided in the embodiments corresponding to fig. 1, 2, and 4, and details are not described here again.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of a hardware embodiment, a software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above description is only a preferred embodiment of the present application, and is not intended to limit the scope of the present application.

Claims (10)

1. An information processing method, the method comprising:
receiving a terminal request; the terminal request carries a first account;
sending the terminal request to a first jupyterhub server corresponding to the first account;
controlling, by the first jupyterhub server, the first account to access a first storage resource; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of a physical machine corresponding to the first jupyterhub server.
2. The method of claim 1, wherein sending the terminal request to a first jupyterhub server corresponding to the first account comprises:
generating a lua script through the nginx server;
acquiring the first account from the terminal request through the lua script;
if the preset list stored by the nginx server comprises a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server;
and sending the terminal request to the first jupyterhub server through the nginx server.
3. The method of claim 2, further comprising:
if the preset list does not include a second jupyterhub server corresponding to the first account, sending the first account to an authentication server; the authentication server is in signal connection with the first jupyterhub server;
and receiving a first jupyterhub server allocated to the first account by the authentication server.
4. The method of claim 2, further comprising:
receiving the preset list sent by an authentication server through the nginx server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server has a signal connection with the nginx server.
5. The method of claim 1, wherein controlling, by the first jupyterhub server, access to the first storage resource by the first account comprises:
creating, by the first jupyterhub server, a second account associated with the first account;
determining the first storage resource corresponding to the second account from the second storage resource;
determining the operation authority of the second account on the first storage resource;
controlling, by the first jupyterhub server, the second account to access the first storage resource based on the operating permission.
6. The method of claim 5, wherein creating, by the first jupyterhub server, a second account associated with the first account comprises:
verifying the first account by the first jupyterhub server;
and if the first account is allowed to access the first storage resource according to the verification result, creating the second account through the first jupyterhub server.
7. The method of claim 6, wherein the verifying the first account with the first jupyterhub server comprises:
receiving a preset list sent by an authentication server through the first jupyterhub server; the preset list comprises mapping relations between a plurality of accounts and a plurality of jupyterhub servers, wherein the mapping relations are generated by the authentication server; the authentication server is in signal connection with the first jupyterhub server;
and verifying the first account through the first jupyterhub server according to the preset list to obtain the verification result.
8. An electronic device, characterized in that the electronic device comprises: a processor, a memory, and a communication bus;
the communication bus is used for realizing communication connection between the processor and the memory;
the processor is used for executing the information processing program stored in the memory so as to realize the following steps:
receiving a terminal request; the terminal request carries a first account;
sending the terminal request to a first jupyterhub server corresponding to the first account;
controlling, by the first jupyterhub server, the first account to access a first storage resource; the first storage resource comprises a storage resource corresponding to the first account in a second storage resource of a physical machine corresponding to the first jupyterhub server.
9. The electronic device of claim 8, wherein the processor is further configured to:
generating a lua script through the nginx server;
acquiring the first account from the terminal request through the lua script;
if the preset list stored by the nginx server comprises a second jupyterhub server corresponding to the first account, determining that the second jupyterhub server is the first jupyterhub server;
and sending the terminal request to the first jupyterhub server through the nginx server.
10. A storage medium characterized by storing one or more programs, which are executable by one or more processors to implement the steps of the method of information processing according to any one of claims 1 to 7.
CN201910586527.XA 2019-07-01 2019-07-01 Information processing method, electronic equipment and storage medium Active CN110493175B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910586527.XA CN110493175B (en) 2019-07-01 2019-07-01 Information processing method, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910586527.XA CN110493175B (en) 2019-07-01 2019-07-01 Information processing method, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN110493175A CN110493175A (en) 2019-11-22
CN110493175B true CN110493175B (en) 2020-09-25

Family

ID=68546415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910586527.XA Active CN110493175B (en) 2019-07-01 2019-07-01 Information processing method, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110493175B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256399B (en) * 2020-10-28 2022-08-19 四川长虹电器股份有限公司 Docker-based Jupitter Lab multi-user remote development method and system
CN112988165A (en) * 2021-04-15 2021-06-18 成都新希望金融信息有限公司 Kubernetes-based interactive modeling method and device, electronic equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104838630A (en) * 2012-10-10 2015-08-12 思杰系统有限公司 Policy-based application management
CN105808240A (en) * 2016-03-01 2016-07-27 北京量邦信息科技股份有限公司 Method for realizing user isolation under online programming environment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9553919B2 (en) * 2013-02-27 2017-01-24 Quixey, Inc. Techniques for sharing application states
US11228646B2 (en) * 2017-08-02 2022-01-18 DataCoral, Inc. Systems and methods for generating, deploying, and managing data infrastructure stacks
CN109067866A (en) * 2018-07-27 2018-12-21 北京金山云网络技术有限公司 A kind of resource share method, device, electronic equipment and storage medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104838630A (en) * 2012-10-10 2015-08-12 思杰系统有限公司 Policy-based application management
CN105808240A (en) * 2016-03-01 2016-07-27 北京量邦信息科技股份有限公司 Method for realizing user isolation under online programming environment

Also Published As

Publication number Publication date
CN110493175A (en) 2019-11-22

Similar Documents

Publication Publication Date Title
US11088903B2 (en) Hybrid cloud network configuration management
CN103384237B (en) Method for sharing IaaS cloud account, shared platform and network device
CN107577516B (en) Virtual machine password resetting method, device and system
JP6190949B2 (en) Automatic configuration of access to virtual infrastructure manager by virtual network function manager
CN108540433B (en) User identity verification method and device
US9596501B2 (en) Remote control processing method, device and system
WO2018145605A1 (en) Authentication method and server, and access control device
US9525592B2 (en) Client/server network environment setup method and system
CN108881228B (en) Cloud registration activation method, device, equipment and storage medium
CN107426339B (en) Access method, device and system of data connection channel
CN110069909B (en) Method and device for login of third-party system without secret
CN110740121B (en) Resource subscription system and method
CN103166783A (en) Resource control method and resource control device
CN109450976B (en) Method and device for accessing service system
US8893004B2 (en) User interface proxy method and system
KR20140035382A (en) Method for allowing user access, client, server, and system
CN110493175B (en) Information processing method, electronic equipment and storage medium
US20150082027A1 (en) Drm method and drm system for supporting offline sharing of digital contents
CN104239125B (en) Object processing method, distributed file system and client device
WO2017185992A1 (en) Method and apparatus for transmitting request message
CN105792247B (en) data pushing method and device
CN110138765B (en) Data processing method, data processing device, computer equipment and computer readable storage medium
CN111865897A (en) Cloud service management method and device
CN104967515B (en) A kind of identity identifying method and server
CN113407361A (en) Desktop access control method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant