CN112632022A - Object storage method and device, computer-readable storage medium and electronic equipment - Google Patents

Object storage method and device, computer-readable storage medium and electronic equipment Download PDF

Info

Publication number
CN112632022A
CN112632022A CN202011591429.4A CN202011591429A CN112632022A CN 112632022 A CN112632022 A CN 112632022A CN 202011591429 A CN202011591429 A CN 202011591429A CN 112632022 A CN112632022 A CN 112632022A
Authority
CN
China
Prior art keywords
object storage
user
cloud platform
request
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011591429.4A
Other languages
Chinese (zh)
Other versions
CN112632022B (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.)
Yidu Cloud Beijing Technology Co Ltd
Original Assignee
Yidu Cloud Beijing Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yidu Cloud Beijing Technology Co Ltd filed Critical Yidu Cloud Beijing Technology Co Ltd
Priority to CN202011591429.4A priority Critical patent/CN112632022B/en
Publication of CN112632022A publication Critical patent/CN112632022A/en
Application granted granted Critical
Publication of CN112632022B publication Critical patent/CN112632022B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

The disclosure relates to an object storage method and device, a computer readable storage medium and an electronic device, and relates to the technical field of computers, wherein the method comprises the following steps: receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user; acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation; signing the object storage request according to the user access code of the object storage user and a user identity authentication key; and storing the object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client. The method and the system realize the integration of object storage and cloud platform users.

Description

Object storage method and device, computer-readable storage medium and electronic equipment
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to an object storage method, an object storage device, a computer readable storage medium and electronic equipment.
Background
With the development of science and technology, cloud technologies are more and more appeared in daily life, and the most common technologies include a cloud platform, a cloud server cluster and the like; the cloud platform can comprise a set of independent user management system, and management of cloud platform users is realized based on the user management system; the cloud server cluster comprises a management system of the object storage users, and management of the object storage users is achieved based on the user management system, so that object storage is achieved.
Specifically, the object Storage is implemented by a user management system that is individually authorized by a user through S3(Simple Storage Service) provided by a distributed file system (the distributed file system is disposed in a cloud server cluster). Currently, in a specific application process of object storage, when a user sends an object storage request to S3 through a client, the object storage request sent by the client needs to include a user access code and signature information; the user login password is used for identifying the user, and the signature information is generated by calculation of the user login password, the request time, the request type and the like.
However, the above method has the following drawbacks: on one hand, because a user management system of the cloud platform and a management system of an object storage user of the cloud server cluster exist independently, the cloud platform user and the object storage user cannot be fused, and the user management efficiency is low; on the other hand, if the interface provided by the cloud platform is directly used for object storage, the client cannot be authorized to realize seamless docking because the interface is unique to the cloud platform, and thus the object storage cannot be realized; on the other hand, since the user access code and the signature information are required when the request is sent, the problem of low security caused by the leakage of the user access code can be caused.
Based on this, it is necessary to provide a new object storage method.
It is to be noted that the information invented in the above background section is only for enhancing the understanding of the background of the present invention, and therefore, may include information that does not constitute prior art known to those of ordinary skill in the art.
Disclosure of Invention
The present invention is directed to an object storage method, an object storage apparatus, a computer-readable storage medium, and an electronic device, which overcome at least some of the problems that cloud platform users cannot be merged with object storage users due to limitations and disadvantages of the related art.
According to an aspect of the present disclosure, there is provided an object storage method including:
receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user;
acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation;
signing the object storage request according to the user access code of the object storage user and a user identity authentication key;
and storing the object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client.
In an exemplary embodiment of the present disclosure, the header information further includes a cloud platform password corresponding to the cloud platform user;
acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation, wherein the method comprises the following steps:
logging in the cloud platform according to the cloud platform user and the cloud platform password;
determining an object storage user corresponding to the cloud platform user according to the request token and a preset mapping relation;
and determining the user access code of the object storage user and a user identity authentication key.
In an exemplary embodiment of the present disclosure, the object storage method further includes:
creating the cloud platform user and the object storage user, and establishing a mapping relation between the cloud platform user and the object storage user; the cloud platform users and the object storage users are mapped one by one;
and binding the user access code and the user identity authentication key of the object storage user to the user attribute of the cloud platform user based on the mapping relation.
In an exemplary embodiment of the present disclosure, the object storage users include main object storage users and sub-object storage users, each main object storage user includes one or more sub-object storage users;
wherein, determining the user access code and the user authentication key of the object storage user comprises:
judging whether the object storage user is a main object storage user or not;
and when the object storage user is determined to be a main object storage user, acquiring a user access code and a user identity authentication key of the main object storage user.
In an exemplary embodiment of the present disclosure, the object storage method further includes:
when the object storage user is determined to be a sub-object storage user, determining a main object storage user corresponding to the sub-object storage user;
and acquiring the user access code and the user identity authentication key of the main object storage user.
In an exemplary embodiment of the present disclosure, storing object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client includes:
sending the signed object storage request to an object storage cloud server cluster, and receiving a confirmation message of successful storage sent by the object storage cloud server cluster after storing the object storage metadata included in the signed object storage request;
and generating target information according to the confirmation message of successful storage and the cloud platform information corresponding to the object storage request, and returning the target information to the client.
In an exemplary embodiment of the present disclosure, the cloud platform information corresponding to the object storage request includes one or more of the object storage user, rights information of the object storage user, and cost information generated by storing the object storage metadata;
generating target information according to the confirmation message of successful storage and the cloud platform information corresponding to the object storage request, wherein the generating target information comprises:
calculating cost information generated by storing the object storage metadata according to the cloud platform user;
determining the authority information according to the user category to which the object storage user belongs;
and generating the target information according to the expense information, the object storage user, the authority information and the confirmation message of successful storage.
According to an aspect of the present disclosure, there is provided an object storage apparatus including:
the request analysis module is used for receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user;
the key acquisition module is used for acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation;
the signature module is used for signing the object storage request according to the user access code of the object storage user and the user identity authentication key;
and the storage module is used for storing the object storage metadata included in the signed object storage request and returning a confirmation message of successful storage to the client.
According to an aspect of the present disclosure, there is provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the object storage method of any one of the above.
According to an aspect of the present disclosure, there is provided an electronic device including:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform any of the object storage methods described above via execution of the executable instructions.
On one hand, the object storage method provided by the embodiment of the invention receives an object storage request sent by a client, responds to the object storage request and analyzes the object storage request to obtain a request token and header information; then, according to the request token and a preset mapping relation, acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from the cloud platform; signing the object storage request according to the user access code of the object storage user and the user identity authentication key; finally, object storage metadata included in the signed object storage request is stored, and a confirmation message of successful storage is returned to the client, and as the object storage user, the user access code of the object storage user and the user identity verification key can be directly obtained from the cloud platform according to the mapping relation, and the object storage request is signed to realize the storage of the object metadata, the integration of the object storage user and the cloud platform user is realized, and the problems that in the prior art, the cloud platform user and the object storage user cannot be integrated due to the fact that a user management system of the cloud platform and a management system of the object storage user of a cloud server cluster exist independently, and further the user management efficiency is low are solved; on the other hand, the object storage request is signed by storing the user access code of the user and the user identity authentication key according to the object; finally, the object storage metadata included in the signed object storage request is stored, so that the problem that in the prior art, as the interface is unique to a cloud platform, a client cannot be authorized to realize seamless docking and further cannot realize object storage is solved; on the other hand, the object storage request only comprises the cloud platform user, and the user access code and the user identity verification key of the object storage user are obtained from the cloud platform, so that the problem that in the prior art, the user access code and the signature information are needed when the request is sent, and the user access code is leaked, so that the safety is low is solved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention. It is obvious that the drawings in the following description are only some embodiments of the invention, and that for a person skilled in the art, other drawings can be derived from them without inventive effort.
Fig. 1 schematically shows a flowchart of an object storage method according to an exemplary embodiment of the present invention.
FIG. 2 schematically illustrates a block diagram of an object storage system according to an exemplary embodiment of the present invention.
Fig. 3 schematically shows a flowchart of another object storage method according to an exemplary embodiment of the present invention.
Fig. 4 is a flowchart schematically illustrating a method for obtaining an object storage user corresponding to the cloud platform user from a cloud platform according to the request token and a preset mapping relationship, and a user access code and a user authentication key of the object storage user according to an exemplary embodiment of the present invention.
Fig. 5 is a flowchart schematically illustrating a method for storing object storage metadata included in a signed object storage request and returning a confirmation message of successful storage to the client according to an exemplary embodiment of the present invention.
Fig. 6 is a flowchart schematically illustrating a method for generating target information according to the confirmation message that the storage is successful and the cloud platform information corresponding to the object storage request, according to an exemplary embodiment of the present invention.
Fig. 7 schematically shows a flowchart of another object storage method according to an exemplary embodiment of the present invention.
Fig. 8 schematically illustrates a block diagram of an object storage apparatus according to an exemplary embodiment of the present invention.
Fig. 9 schematically illustrates an electronic device for implementing the above object storage method according to an exemplary embodiment of the present invention.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention may be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known technical solutions have not been shown or described in detail to avoid obscuring aspects of the invention.
Furthermore, the drawings are merely schematic illustrations of the invention and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and thus their repetitive description will be omitted. Some of the block diagrams shown in the figures are functional entities and do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
In the present exemplary embodiment, first, an object storage method is provided, where the method may be performed in an object storage gateway and a server, a server cluster or a cloud server where a cloud platform is located; of course, those skilled in the art may also operate the method of the present invention on other platforms as needed, and this is not particularly limited in this exemplary embodiment. Referring to fig. 1, the object storage method may include the steps of:
s110, receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user;
s120, acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation;
s130, signing the object storage request according to the user access code of the object storage user and a user identity verification key;
and S140, storing the object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client.
In the object storage method, on one hand, the object storage request sent by the client is received, and the object storage request is responded to and analyzed to obtain a request token and header information; then, according to the request token and a preset mapping relation, acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from the cloud platform; signing the object storage request according to the user access code of the object storage user and the user identity authentication key; finally, object storage metadata included in the signed object storage request is stored, and a confirmation message of successful storage is returned to the client, and as the object storage user, the user access code of the object storage user and the user identity verification key can be directly obtained from the cloud platform according to the mapping relation, and the object storage request is signed to realize the storage of the object metadata, the integration of the object storage user and the cloud platform user is realized, and the problems that in the prior art, the cloud platform user and the object storage user cannot be integrated due to the fact that a user management system of the cloud platform and a management system of the object storage user of a cloud server cluster exist independently, and further the user management efficiency is low are solved; on the other hand, the object storage request is signed by storing the user access code of the user and the user identity authentication key according to the object; finally, the object storage metadata included in the signed object storage request is stored, so that the problem that in the prior art, as the interface is unique to a cloud platform, a client cannot be authorized to realize seamless docking and further cannot realize object storage is solved; on the other hand, the object storage request only comprises the cloud platform user, and the user access code and the user identity verification key of the object storage user are obtained from the cloud platform, so that the problem that in the prior art, the user access code and the signature information are needed when the request is sent, and the user access code is leaked, so that the safety is low is solved.
Hereinafter, each step involved in the object storage method of the present disclosure will be explained and explained in detail with reference to the drawings.
First, the terms referred to in the present disclosure are explained and explained.
Object-based Storage, which is an Object-oriented or file-oriented mass internet Storage, may also be referred to directly as cloud Storage. Although the object is a file, the object is an encapsulated file (the object in programming has the characteristic of encapsulation), that is, in the object storage cloud server cluster, the file cannot be directly opened/modified, but the file can be uploaded, downloaded and the like. The most popular usage scenario of object storage is to store static content (videos, pictures, files, software installation packages, etc.) of internet/mobile internet applications such as websites and mobile applications.
Ceph is a uniform distributed storage system, the object storage cloud server cluster recorded in the disclosure can be Ceph, and the object storage cloud server cluster has the characteristics of high performance, high user availability, high expansibility, rich characteristics and the like.
Next, the object storage cloud server cluster of the present disclosure is explained and explained.
Specifically, referring to fig. 2, the object storage cloud server cluster may include a client 210, an intermediate server 220, and a cloud server cluster 230, that is, an object storage cloud server cluster described later. The client, the intermediate server and the cloud server cluster are sequentially connected through a network.
Specifically, the client may be configured to generate an object storage request and send the object storage request to the intermediate server; the client may include an object storage client, a linux 3 client, or other clients, which is not limited in this example.
An intermediate server may be used to implement the object storage method described in the disclosure. The intermediate server may include an object storage gateway 221 and a cloud platform 222, where the object storage gateway is configured to receive an object storage request, acquire an object storage user corresponding to a cloud platform user from the cloud platform, a user access code and a user authentication key of the object storage user, and generate a signature to implement storage of object storage metadata; the cloud platform is used for storing the mapping relation, the user access code of the object storage user and the user identity authentication key.
Further, the cloud server cluster may be configured to store the signed object storage metadata; the cloud server cluster may be a Ceph object store, or may be other object stores, such as a COS object store, which is not limited in this example.
Hereinafter, steps S110 to S140 will be explained and explained with reference to the object storage cloud server cluster.
In step S110, an object storage request sent by a client is received, and the object storage request is analyzed in response to the object storage request, so as to obtain a request token and header information; wherein the header information includes a cloud platform user.
Specifically, referring to fig. 2, the object storage gateway receives an object storage request sent by an object storage client, and analyzes the object storage request in response to the object storage request to obtain a request Token (Token) and Header information (Header); the header information includes a cloud platform user, that is, a login name and a login password of the user on the cloud platform. It should be added that, by writing the login name (cloud platform user) and the login password (also called cloud platform password) of the user on the cloud platform into the header information, the object storage gateway can log in the cloud platform according to the login name and the login password, thereby implementing the login of the object storage; meanwhile, the login password of the user on the cloud platform can be set by the user, so that the login key of the object storage user on the object storage cloud server cluster is prevented from being written in the object storage request (the login key of the user on the object storage cloud server cluster is generated by the object storage cloud server cluster, and the login key is not convenient to input and record without any rule, so that the input process is complicated).
In step S120, according to the request token and a preset mapping relationship, an object storage user corresponding to the cloud platform user, a user access code of the object storage user, and a user authentication key are obtained from a cloud platform.
In this exemplary embodiment, in order to obtain the object storage user, a mapping relationship needs to be established first. Specifically, referring to fig. 3, the object storage method may further include steps S310 to S320. Wherein:
in step S310, creating the cloud platform user and the object storage user, and establishing a mapping relationship between the cloud platform user and the object storage user; the cloud platform users and the object storage users are mapped one by one;
in step S320, based on the mapping relationship, the user access code and the user authentication key of the object storage user are bound to the user attribute of the cloud platform user.
Hereinafter, steps S310 to S320 will be explained and explained. Specifically, firstly, a cloud platform user and an object storage user are created in a cloud platform; namely, when the cloud platform users are created, an object storage user is created at the same time, and then a one-to-one mapping relation between the cloud platform users and the object storage users is established, namely, each cloud platform user has only one object storage user corresponding to the object storage user; secondly, the AK (access key id) and SK (secret access key id, user identity authentication key) of the object storage user in the object storage cloud server cluster need to be bound to the user attribute of the cloud platform user based on the mapping relationship.
Further, after the mapping relation is established, the object storage user can be obtained from the cloud platform based on the mapping relation. Specifically, as shown in fig. 4, acquiring an object storage user corresponding to the cloud platform user from a cloud platform according to the request token and a preset mapping relationship, and a user access code and a user identity authentication key of the object storage user may include steps S410 to S430. Wherein:
in step S410, the cloud platform is logged in according to the cloud platform user and the cloud platform password.
In step S420, determining an object storage user corresponding to the cloud platform user according to the request token and a preset mapping relationship; the object storage users comprise main object storage users and sub-object storage users, and each main object storage user comprises one or more sub-object storage users.
In step S430, it is determined that the object stores the user access code of the user and the user authentication key.
Specifically, first, it is determined whether the object storage user is a main object storage user; and secondly, when the object storage user is determined to be a main object storage user, acquiring a user access code and a user identity authentication key of the main object storage user.
Further, when the object storage user is determined to be a sub-object storage user, determining a main object storage user corresponding to the sub-object storage user; and acquiring the user access code and the user identity authentication key of the main object storage user.
Hereinafter, steps S410 to S430 will be explained and explained. Firstly, the object storage gateway can log in a cloud platform according to a cloud platform user obtained through analysis and a cloud platform password corresponding to the cloud platform user, and then obtains an object storage user corresponding to the cloud platform user based on a request token; finally, when the object storage user is determined to be the main object storage user, the user of the main object storage user can be directly obtained; if the object storage user is a sub-object storage user, a main object storage user corresponding to the sub-object storage user can be determined, and a user access code and a user authentication key corresponding to the main object storage user are obtained.
In the method schematically shown in fig. 4, a sub-account (user) of an object storage user is bound with a cloud platform account (cloud platform user), so that the problem that an object storage client does not sense because the sub-account is a virtual account is avoided, the sub-account can be converted into a main account for object storage, access forwarding control is performed according to the sub-account authority, and the problem that the existing S3 object storage cannot provide a flexible sub-account function is avoided; meanwhile, because the request Token (Token) has strict time limit, when the request Token is invalid, the user access code and the user identity authentication key of the user cannot be stored in the corresponding main object, so that the safety of the user access code and the user identity authentication key is further improved, and the problems that the object storage cannot realize login and cannot carry the Token are solved.
In step S130, the object storage metadata in the object storage request is signed according to the user access code of the object storage user and the user authentication key.
Specifically, after the user access code and the user authentication key are obtained, in order to store the object storage metadata in the object storage cloud server cluster, the user access code and the user authentication key are further used to sign the object storage metadata, so that the identity of a sender (an object storage user) of the object storage request can be authenticated. By the method, the problem that the generation efficiency of the object storage request is low due to the fact that the user access code and the signature information (the signature information is generated by the user identity authentication key, the request time and the request type) need to be added in the process of generating the object storage request by the object storage client is solved, the security of the object storage request is improved, and the security of the user access code and the security of the user identity authentication key are improved.
In step S140, the signed object storage metadata is stored, and a confirmation message indicating successful storage is returned to the client.
In the present exemplary embodiment, as shown in fig. 5, storing the signed object storage metadata and returning the confirmation message that the storage is successful to the client may include steps S510 to S520. Wherein:
in step S510, the signed object storage request is sent to an object storage cloud server cluster, and a confirmation message that the object storage cloud server cluster successfully stores the object storage metadata included in the signed object storage request is received.
In this example embodiment, first, a signed object storage request is sent to an object storage cloud server cluster, after receiving the signed object storage request, the object storage cloud server cluster may perform identity verification on an object storage user corresponding to the object storage request according to the signature, after the identity verification is completed, object storage metadata included in the object storage request may be stored according to a bucket of the object storage user, a confirmation message including information of the bucket where the object storage metadata is located is generated, and then the confirmation message is sent to an object storage gateway. Since one object storage user may own one or more buckets, the acknowledgement message may further include used information and unused information of the bucket of the object storage user, and the like, which is not limited in this example.
In step S520, generating target information according to the confirmation message that the storage is successful and the cloud platform information corresponding to the object storage request, and returning the target information to the client; the cloud platform information corresponding to the object storage request comprises the object storage user, authority information of the object storage user, cost information generated by storing the object storage metadata and the like.
Specifically, as shown in fig. 6, generating the target information according to the confirmation message that the storage is successful and the cloud platform information corresponding to the object storage request may include steps S610 to S630. Wherein:
in step S610, calculating cost information generated by storing the object storage metadata according to the cloud platform user;
in step S620, determining the permission information according to the user category to which the object storage user belongs;
in step S630, the target information is generated according to the fee information, the object storage user, the authority information, and the confirmation message of successful storage.
Further, after the target information is generated, the target information may be sent to the client, so that the client displays the target information, and a cloud platform user (an object storage user) may view the target information through the client. It should be further added here that the cloud platform information may further include statistical information of the cloud platform itself, quota information, and the like, which is not limited in this example.
Hereinafter, the object storage method of the present disclosure is further explained and explained with reference to fig. 7. Referring to fig. 7, the object storage method may include the steps of:
step S710, creating a cloud platform user and an object storage user corresponding to the cloud platform user, and binding AK and SK of the object storage user to the cloud platform user attribute; each user of the cloud platform has a unique object storage user corresponding to the user;
step S720, the client sends an object storage request comprising a token and a header through an Http request, the object storage gateway obtains AK and SK from a cloud platform user database, and then the object storage request is re-signed;
step 730, the object storage gateway forwards the signed object storage request to a back-end object storage cloud server cluster, and the object storage cloud server cluster stores object storage metadata included in the object storage request after the identity of an object storage user is verified;
step S740, the object storage cloud server cluster returns confirmation information of successful storage, and the object storage gateway adds corresponding cloud platform information to the confirmation information to generate target information and returns the target information to the client.
According to the object storage account system using the cloud platform account system, the scheme that the object storage is directly used through the cloud platform account number is adopted, and unified management of object storage users and cloud platform users is achieved; in addition, the object storage user can be combined with the cloud platform user, and can also be combined with other platform user systems, so that multi-user sharing is realized; further, the problem that due to the fact that object storage is provided with a user management system which is authorized independently by S3 through Ceph, an Openstack cloud platform has a set of user management system, when the object storage is integrated into the Openstack cloud platform, multi-level identity management of the object storage user management system cannot be met through cloud platform user authorization, layering does not exist on users, and the cloud platform cannot be combined with an existing user system of the cloud platform can be solved.
The present disclosure also provides an object storage device. Referring to fig. 8, the object storage may include a request parsing module 810, a key acquisition module 820, a signature module 830, and a storage module 840. Wherein:
the request parsing module 810 may be configured to receive an object storage request sent by a client, parse the object storage request in response to the object storage request, and obtain a request token and header information; wherein the header information comprises a cloud platform user;
the key obtaining module 820 may be configured to obtain, from the cloud platform, an object storage user corresponding to the cloud platform user, a user access code of the object storage user, and a user identity authentication key according to the request token and a preset mapping relationship;
the signing module 830 may be configured to sign the object storage metadata in the object storage request according to the user access code of the object storage user and the user authentication key;
the storage module 840 may be configured to store the signed object storage metadata, and return a confirmation message that the storage is successful to the client.
In an exemplary embodiment of the present disclosure, the header information further includes a cloud platform password corresponding to the cloud platform user;
acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation, wherein the method comprises the following steps:
logging in the cloud platform according to the cloud platform user and the cloud platform password;
determining an object storage user corresponding to the cloud platform user according to the request token and a preset mapping relation;
and determining the user access code of the object storage user and a user identity authentication key.
In an exemplary embodiment of the present disclosure, the object storage further includes:
the mapping relation establishing module can be used for establishing the cloud platform user and the object storage user and establishing the mapping relation between the cloud platform user and the object storage user; the cloud platform users and the object storage users are mapped one by one;
and the binding module can be used for binding the user access code and the user identity authentication key of the object storage user to the user attribute of the cloud platform user based on the mapping relationship.
In an exemplary embodiment of the present disclosure, the object storage users include main object storage users and sub-object storage users, each main object storage user includes one or more sub-object storage users;
wherein, determining the user access code and the user authentication key of the object storage user comprises:
judging whether the object storage user is a main object storage user or not;
and when the object storage user is determined to be a main object storage user, acquiring a user access code and a user identity authentication key of the main object storage user.
In an exemplary embodiment of the present disclosure, the object storage further includes:
the main object storage user determining module may be configured to determine, when it is determined that the object storage user is a sub-object storage user, a main object storage user corresponding to the sub-object storage user;
the access code determining module may be configured to obtain a user access code and a user authentication key of the main object storage user.
In an exemplary embodiment of the present disclosure, storing object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client includes:
sending the signed object storage request to an object storage cloud server cluster, and receiving a confirmation message of successful storage sent by the object storage cloud server cluster after storing the object storage metadata included in the signed object storage request;
and generating target information according to the confirmation message of successful storage and the cloud platform information corresponding to the object storage request, and returning the target information to the client.
In an exemplary embodiment of the present disclosure, the cloud platform information corresponding to the object storage request includes one or more of the object storage user, rights information of the object storage user, and cost information generated by storing the object storage metadata;
generating target information according to the confirmation message of successful storage and the cloud platform information corresponding to the object storage request, wherein the generating target information comprises:
calculating cost information generated by storing the object storage metadata according to the cloud platform user;
determining the authority information according to the user category to which the object storage user belongs;
and generating the target information according to the expense information, the object storage user, the authority information and the confirmation message of successful storage.
The specific details of each module in the object storage device have been described in detail in the corresponding object storage method, and therefore are not described herein again.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the invention. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Moreover, although the steps of the methods of the present invention are depicted in the drawings in a particular order, this does not require or imply that the steps must be performed in this particular order, or that all of the depicted steps must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions, etc.
In an exemplary embodiment of the present invention, there is also provided an electronic device capable of implementing the above method.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or program product. Thus, various aspects of the invention may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
An electronic device 900 according to this embodiment of the invention is described below with reference to fig. 9. The electronic device 900 shown in fig. 9 is only an example and should not bring any limitations to the function and scope of use of the embodiments of the present invention.
As shown in fig. 9, the electronic device 900 is embodied in the form of a general purpose computing device. Components of electronic device 900 may include, but are not limited to: the at least one processing unit 910, the at least one storage unit 920, a bus 930 connecting different system components (including the storage unit 920 and the processing unit 910), and a display unit 940.
Wherein the storage unit stores program code that is executable by the processing unit 910 to cause the processing unit 910 to perform steps according to various exemplary embodiments of the present invention described in the above section "exemplary methods" of the present specification. For example, the processing unit 910 may execute step S110 as shown in fig. 1: receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user; step S120: acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation; step S130: signing the object storage request according to the user access code of the object storage user and a user identity authentication key; step S140: and storing the object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client.
The storage unit 920 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM)9201 and/or a cache memory unit 9202, and may further include a read only memory unit (ROM) 9203.
Storage unit 920 may also include a program/utility 9204 having a set (at least one) of program modules 9205, such program modules 9205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may comprise an implementation of a network environment.
Bus 930 can be any of several types of bus structures including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
The electronic device 900 may also communicate with one or more external devices 1000 (e.g., keyboard, pointing device, bluetooth device, etc.), with one or more devices that enable a user to interact with the electronic device 900, and/or with any devices (e.g., router, modem, etc.) that enable the electronic device 900 to communicate with one or more other computing devices. Such communication may occur via input/output (I/O) interface 950. Also, the electronic device 900 may communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN) and/or a public network, such as the Internet) via the network adapter 960. As shown, the network adapter 960 communicates with the other modules of the electronic device 900 via the bus 930. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with the electronic device 900, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiment of the present invention can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to make a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) execute the method according to the embodiment of the present invention.
In an exemplary embodiment of the present invention, there is also provided a computer-readable storage medium having stored thereon a program product capable of implementing the above-described method of the present specification. In some possible embodiments, aspects of the invention may also be implemented in the form of a program product comprising program code means for causing a terminal device to carry out the steps according to various exemplary embodiments of the invention described in the above section "exemplary methods" of the present description, when said program product is run on the terminal device.
According to the program product for realizing the method, the portable compact disc read only memory (CD-ROM) can be adopted, the program code is included, and the program product can be operated on terminal equipment, such as a personal computer. However, the program product of the present invention is not limited in this regard and, in the present document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
A computer readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., through the internet using an internet service provider).
Furthermore, the above-described figures are merely schematic illustrations of processes involved in methods according to exemplary embodiments of the invention, and are not intended to be limiting. It will be readily understood that the processes shown in the above figures are not intended to indicate or limit the chronological order of the processes. In addition, it is also readily understood that these processes may be performed synchronously or asynchronously, e.g., in multiple modules.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.

Claims (10)

1. An object storage method, comprising:
receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user;
acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation;
signing the object storage request according to the user access code of the object storage user and a user identity authentication key;
and storing the object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client.
2. The object storage method according to claim 1, wherein the header information further includes a cloud platform password corresponding to the cloud platform user;
acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation, wherein the method comprises the following steps:
logging in the cloud platform according to the cloud platform user and the cloud platform password;
determining an object storage user corresponding to the cloud platform user according to the request token and a preset mapping relation;
and determining the user access code of the object storage user and a user identity authentication key.
3. The object storage method according to claim 2, further comprising:
creating the cloud platform user and the object storage user, and establishing a mapping relation between the cloud platform user and the object storage user; the cloud platform users and the object storage users are mapped one by one;
and binding the user access code and the user identity authentication key of the object storage user to the user attribute of the cloud platform user based on the mapping relation.
4. The object storage method according to claim 2, wherein the object storage users include main object storage users and sub-object storage users, each main object storage user includes one or more sub-object storage users;
wherein, determining the user access code and the user authentication key of the object storage user comprises:
judging whether the object storage user is a main object storage user or not;
and when the object storage user is determined to be a main object storage user, acquiring a user access code and a user identity authentication key of the main object storage user.
5. The object storage method according to claim 4, further comprising:
when the object storage user is determined to be a sub-object storage user, determining a main object storage user corresponding to the sub-object storage user;
and acquiring the user access code and the user identity authentication key of the main object storage user.
6. The object storage method according to claim 1, wherein storing the object storage metadata included in the signed object storage request, and returning a confirmation message of successful storage to the client comprises:
sending the signed object storage request to an object storage cloud server cluster, and receiving a confirmation message of successful storage sent by the object storage cloud server cluster after storing the object storage metadata included in the signed object storage request;
and generating target information according to the confirmation message of successful storage and the cloud platform information corresponding to the object storage request, and returning the target information to the client.
7. The object storage method according to claim 6, wherein the cloud platform information corresponding to the object storage request includes one or more of the object storage user, rights information of the object storage user, and cost information generated by storing the object storage metadata;
generating target information according to the confirmation message of successful storage and the cloud platform information corresponding to the object storage request, wherein the generating target information comprises:
calculating cost information generated by storing the object storage metadata according to the cloud platform user;
determining the authority information according to the user category to which the object storage user belongs;
and generating the target information according to the expense information, the object storage user, the authority information and the confirmation message of successful storage.
8. An object storage device, comprising:
the request analysis module is used for receiving an object storage request sent by a client, responding to the object storage request, and analyzing the object storage request to obtain a request token and header information; wherein the header information comprises a cloud platform user;
the key acquisition module is used for acquiring an object storage user corresponding to the cloud platform user, a user access code of the object storage user and a user identity authentication key from a cloud platform according to the request token and a preset mapping relation;
the signature module is used for signing the object storage request according to the user access code of the object storage user and the user identity authentication key;
and the storage module is used for storing the object storage metadata included in the signed object storage request and returning a confirmation message of successful storage to the client.
9. A computer-readable storage medium on which a computer program is stored, the computer program, when being executed by a processor, implementing the object storage method of any one of claims 1 to 7.
10. An electronic device, comprising:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform the object storage method of any of claims 1-7 via execution of the executable instructions.
CN202011591429.4A 2020-12-29 2020-12-29 Object storage method and device, computer readable storage medium and electronic equipment Active CN112632022B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011591429.4A CN112632022B (en) 2020-12-29 2020-12-29 Object storage method and device, computer readable storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011591429.4A CN112632022B (en) 2020-12-29 2020-12-29 Object storage method and device, computer readable storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN112632022A true CN112632022A (en) 2021-04-09
CN112632022B CN112632022B (en) 2023-11-24

Family

ID=75285916

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011591429.4A Active CN112632022B (en) 2020-12-29 2020-12-29 Object storage method and device, computer readable storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN112632022B (en)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103002029A (en) * 2012-11-26 2013-03-27 北京百度网讯科技有限公司 Management method, system and client for uploaded files
CN104219477A (en) * 2014-09-11 2014-12-17 太仓思比科微电子技术有限公司 Remote memory system applied to robot monitoring module
US20170359317A1 (en) * 2015-09-17 2017-12-14 Secturion Systems, Inc. Cloud storage using encryption gateway with certificate authority identification
CN108259585A (en) * 2018-01-05 2018-07-06 携程旅游信息技术(上海)有限公司 Call center's recording cloud storage method, system, equipment and storage medium
CN108965480A (en) * 2018-09-07 2018-12-07 平安科技(深圳)有限公司 Cloud desktop login management-control method, device and computer readable storage medium
CN109862009A (en) * 2019-02-01 2019-06-07 武汉思普崚技术有限公司 A kind of client identity method of calibration and device
CN111031037A (en) * 2019-12-12 2020-04-17 北京金山云网络技术有限公司 Authentication method and device for object storage service and electronic equipment
CN111914229A (en) * 2020-07-15 2020-11-10 中国民航信息网络股份有限公司 Identity authentication method and device, electronic equipment and storage medium
CN111949974A (en) * 2020-08-04 2020-11-17 北京字节跳动网络技术有限公司 Authentication method and device, computer equipment and storage medium
CN111988262A (en) * 2019-05-21 2020-11-24 顺丰科技有限公司 Authentication method, authentication device, server and storage medium

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103002029A (en) * 2012-11-26 2013-03-27 北京百度网讯科技有限公司 Management method, system and client for uploaded files
CN104219477A (en) * 2014-09-11 2014-12-17 太仓思比科微电子技术有限公司 Remote memory system applied to robot monitoring module
US20170359317A1 (en) * 2015-09-17 2017-12-14 Secturion Systems, Inc. Cloud storage using encryption gateway with certificate authority identification
CN108259585A (en) * 2018-01-05 2018-07-06 携程旅游信息技术(上海)有限公司 Call center's recording cloud storage method, system, equipment and storage medium
CN108965480A (en) * 2018-09-07 2018-12-07 平安科技(深圳)有限公司 Cloud desktop login management-control method, device and computer readable storage medium
CN109862009A (en) * 2019-02-01 2019-06-07 武汉思普崚技术有限公司 A kind of client identity method of calibration and device
CN111988262A (en) * 2019-05-21 2020-11-24 顺丰科技有限公司 Authentication method, authentication device, server and storage medium
CN111031037A (en) * 2019-12-12 2020-04-17 北京金山云网络技术有限公司 Authentication method and device for object storage service and electronic equipment
CN111914229A (en) * 2020-07-15 2020-11-10 中国民航信息网络股份有限公司 Identity authentication method and device, electronic equipment and storage medium
CN111949974A (en) * 2020-08-04 2020-11-17 北京字节跳动网络技术有限公司 Authentication method and device, computer equipment and storage medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JINGJING YAO 等: "QoS-Aware Joint BBU-RRH Mapping and User Association in Cloud-RANs", 《IEEE TRANSACTIONS ON GREEN COMMUNICATIONS AND NETWORKING》, vol. 2, no. 4, pages 881 - 889, XP011702760, DOI: 10.1109/TGCN.2018.2837867 *
余宇劲 等: "基于多云存储的Android密钥管理技术", 《计算机应用与软件》, vol. 37, no. 9, pages 286 - 290 *
杨泽平 等: "基于OpenStack的创新实验云平台的研究", 《实验技术与管理》, vol. 33, no. 5, pages 147 - 150 *

Also Published As

Publication number Publication date
CN112632022B (en) 2023-11-24

Similar Documents

Publication Publication Date Title
US9864852B2 (en) Approaches for providing multi-factor authentication credentials
US10362026B2 (en) Providing multi-factor authentication credentials via device notifications
CN110839087B (en) Interface calling method and device, electronic equipment and computer readable storage medium
CN107613005B (en) Reverse proxy method and device, electronic device and storage medium
CN107528830B (en) Account login method, system and storage medium
CN112187799B (en) Resource access policy generation method and device, storage medium and electronic equipment
US10841297B2 (en) Providing multi-factor authentication credentials via device notifications
CN110445745A (en) Information processing method and its system, computer system and computer-readable medium
CN111199037B (en) Login method, system and device
CN109800557B (en) Block chain-based integrated processing method, device, server, equipment and medium
CN113225351A (en) Request processing method and device, storage medium and electronic equipment
CN112560003A (en) User authority management method and device
CN112565236B (en) Information authentication method, device, computer equipment and storage medium
CN113393239A (en) Transaction processing method, system, device, electronic equipment and storage medium
CN112632022B (en) Object storage method and device, computer readable storage medium and electronic equipment
CN112994882B (en) Authentication method, device, medium and equipment based on block chain
US20220311616A1 (en) Connection resilient multi-factor authentication
KR102357163B1 (en) Cloud computing system using postpaid billing and methods of providing cloud service
CN106899550B (en) Cloud platform resource monitoring method and device
CN111104363B (en) FPGA cloud platform using method, device, equipment and medium
CN115664686A (en) Login method, login device, computer equipment and storage medium
CA2991067A1 (en) Providing multi-factor authentication credentials via device notifications
US20230126238A1 (en) Security for usb-based device configuration
CN109462604A (en) A kind of data transmission method, device, equipment and storage medium
CN109615380A (en) Method, apparatus, computer equipment and the storage medium of user identity authentication

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
TA01 Transfer of patent application right

Effective date of registration: 20210820

Address after: 211899 floor 15, building a, Yangzi science and innovation center, Jiangbei new area, Nanjing, Jiangsu

Applicant after: NANJING YIDUYUN MEDICAL TECHNOLOGY Co.,Ltd.

Address before: 100191 room 801, 8th floor, building 9, 35 Huayuan North Road, Haidian District, Beijing

Applicant before: YIDU CLOUD Ltd.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230330

Address after: 100191 room 801, 8th floor, building 9, 35 Huayuan North Road, Haidian District, Beijing

Applicant after: YIDU CLOUD Ltd.

Address before: 211899 floor 15, building a, Yangzi science and innovation center, Jiangbei new area, Nanjing, Jiangsu

Applicant before: NANJING YIDUYUN MEDICAL TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant