CN110166456A - 云数据读取方法及装置 - Google Patents

云数据读取方法及装置 Download PDF

Info

Publication number
CN110166456A
CN110166456A CN201910427698.8A CN201910427698A CN110166456A CN 110166456 A CN110166456 A CN 110166456A CN 201910427698 A CN201910427698 A CN 201910427698A CN 110166456 A CN110166456 A CN 110166456A
Authority
CN
China
Prior art keywords
user
target
data
target user
server
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.)
Pending
Application number
CN201910427698.8A
Other languages
English (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.)
Hanyun Fengpeng (chongqing) Technology Co Ltd
Hanyun Technology Co Ltd
Original Assignee
Hanyun Fengpeng (chongqing) Technology Co Ltd
Hanyun 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 Hanyun Fengpeng (chongqing) Technology Co Ltd, Hanyun Technology Co Ltd filed Critical Hanyun Fengpeng (chongqing) Technology Co Ltd
Priority to CN201910427698.8A priority Critical patent/CN110166456A/zh
Publication of CN110166456A publication Critical patent/CN110166456A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供一种云数据读取方法及装置,所述方法包括:获取目标用户发起的数据读取请求,数据读取请求中包含目标用户的用户信息,以及目标用户期望读取的目标数据;根据目标用户的用户信息,对目标用户的身份进行认证;若判断获知目标用户的身份认证通过,则从服务端中的与目标用户对应的主题中获取目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。本发明实施例提供的云数据读取方法及装置,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。

Description

云数据读取方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种云数据读取方法及装置。
背景技术
设备数据采集和分析是工业互联网平台为工业企业提供的两大必备服务,但也有一些企业具备自主研发的能力,他们比平台更了解自己的业务,希望只使用工业互联网平台的设备接入和数据采集服务,由自己完成数据分析。这就需要一种从工业互联网平台侧获取设备数据的合理方式,使工业互联网平台能够为用户提供高效的云接入服务。
现有技术中,工业互联网平台都为用户提供了以RESTful API查询的方式,获取存储在该平台上的设备数据,但RESTful API查询基于HTTP短连接,存在多次调用、实时性差等问题,频繁的API调用也会大幅增加工业互联网平台的负载,无法满足用户向工业互联网平台高速、实时订阅数据的迫切需求。
发明内容
本发明实施例的目的是提供一种克服上述问题或者至少部分地解决上述问题的云数据读取方法及装置。
为了解决上述技术问题,一方面,本发明实施例提供一种云数据读取方法,包括:
获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
另一方面,本发明实施例提供一种云数据读取装置,包括:
获取模块,用于获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
认证模块,用于根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
数据读取模块,用于若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
再一方面,本发明实施例提供一种电子设备,包括存储器、处理器,以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现上述方法的步骤。
又一方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现上述方法的步骤。
本发明实施例提供的云数据读取方法及装置,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
附图说明
图1为本发明实施例提供的云数据读取方法示意图;
图2为本发明实施例提供的云数据读取装置示意图;
图3为本发明实施例提供的电子设备的结构示意图。
具体实施方式
为了使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的云数据读取方法示意图,如图1所示,本发明实施例提供一种云数据读取方法,其执行主体为云数据读取装置,云数据读取装置可以作为一个单独的设备,也可以是工业互联网平台的一部分。该方法包括:
步骤S101、获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
步骤S102、根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
步骤S103、若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
具体来说,设备数据采集和分析是工业互联网平台为工业企业提供的两大必备服务,但也有一些企业具备自主研发的能力,他们比平台更了解自己的业务,希望只使用平台的设备接入和数据采集服务,由自己完成数据分析。这就需要一种从平台侧获取设备数据的合理方式,使工业互联网平台能够为用户提供高效的云接入服务。
工业互联网系统包括若干个工业设备、若干个客户端和工业互联网平台构成,其中,工业互联网平台中包括若干个服务端。工业互联网系统的系统架构采用Kafka分布式消息系统架构。若干个工业设备是数据的生产者;工业互联网平台用于数据的存储、管理和分发;用户需要通过客户端读取存储在工业互联网平台中的属于自己的数据,因此,客户端是数据的消费者。工业互联网平台中的服务端受Zookeeper管理。
所有的工业设备、服务端和客户端,都可以为多个,采用分布式云存储架构,用户读取数据的吞吐量支持横向水平扩容,吞吐量可以随着业务数据量的增长而扩展,不影响原有业务,不改动软件,无需停机即可拓展机器,只需增加服务端资源和带宽资源。
每一用户在工业互联网平台中的服务端申请云接入服务时,都会被分配一个对应的主题,该主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的工业设备产生的数据源发送到工业互联网平台之后,被存储在同一主题中。
一个服务端至少运行一个应用实例,用于实现数据的存储、管理和分发。一个主题包括多个分区,每一分区等同于一个有序的数据存储队列,存放n条数据。
本发明实施例涉及的云数据读取装置,包括获取模块、认证模块和数据读取模块。
当某一目标用户需要读取属于自己的,被存储在工业互联网平台中的数据时,首先需要通过客户端向云数据读取装置发送数据读取请求。
云数据读取装置中的获取模块获取目标用户发起的数据读取请求,该数据读取请求中包含目标用户的用户信息,以及目标用户期望读取的目标数据。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
然后,云数据读取装置中的认证模块根据目标用户的用户信息,对目标用户的身份进行认证。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块根据用户甲的用户名和密码,对用户甲的身份进行认证,并得出认证结果。
最后,如果目标用户的身份认证通过,则通过数据读取模块从服务端中的与目标用户对应的主题中获取目标数据。如果目标用户的身份认证通过,则向目标用户发起数据读取请求时使用的客户端反馈认证失败信息。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块根据用户甲的用户名和密码,对用户甲的身份进行认证,并得出认证结果。
如果用户甲的身份认证通过,则通过数据读取模块从服务端中的与用户甲对应的主题中获取123.wmv。如果用户甲的身份认证通过,则向用户甲发起数据读取请求时使用的客户端反馈认证失败信息。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
在上述实施例的基础上,进一步地,所述用户信息包括用户名和密码,所述密码包括签名、时间戳和随机字符串。
具体来说,当某一目标用户需要读取属于自己的,被存储在工业互联网平台中的数据时,首先需要通过客户端向云数据读取装置发送数据读取请求。
客户端在生成数据读取请求时,首先计算签名。
用户在工业互联网平台注册后,就会得到一组安全秘钥{userKey,userSecret},其中userKey是可公开的,代表某个用户,userSecret是签名所用的秘钥,不能泄露。
为了避免攻击者通过网络抓包获取到完整请求并进行重放攻击,签名的内容由userKey、timestamp、nonce组成,三个参数的顺序不能变。timestamp是计算签名时的系统时间,即,时间戳,nonce是随机生成的字符串(例如,长度可以设置为32位)。
签名内容content的计算公式如下:
content=userKey+“-”+timestamp+“-”+nonce
其中,“-”为分隔符,这里约定为英文的短横线。
签名采用HMACSHA1算法,签名signature的计算公式如下:
signature=HmacSha1(userSecret,content)
完成签名后,客户端设置安全协议为KafkaSASL_PLAINTEXT,将用户名设置为userKey。然后计算密码password,密码的计算公式如下:
password=signature+“-”+timestamp+“-”+nonce
得到密码后,根据用户名和密码,以及目标用户期望读取的目标数据,生成数据读取请求,并向服务端发起连接请求。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
在以上各实施例的基础上,进一步地,所述根据所述目标用户的用户信息,对所述目标用户的身份进行认证,具体包括:
从所述目标用户的用户信息中,提取所述目标用户发起所述数据读取请求时的时间戳;
比较所述时间戳与所述服务端的系统时间之间的时间差,若所述时间差超过预设时间阈值,则所述目标用户的身份认证失败,若所述时间差未超过所述预设时间阈值,则所述目标用户的身份认证通过。
具体来说,云数据读取装置中的认证模块根据目标用户的用户信息,对目标用户的身份进行认证。
在认证过程中,从目标用户的用户信息中,提取目标用户发起数据读取请求时的时间戳。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块从用户甲的密码中提取用户甲发起数据读取请求时的时间戳28点43分15秒。
然后,比较用户信息中的时间戳与服务端的系统时间之间的时间差,如果时间差超过预设时间阈值,则目标用户的身份认证失败,如果时间差未超过预设时间阈值,则目标用户的身份认证通过。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块从用户甲的密码中提取用户甲发起数据读取请求时的时间戳18点43分15秒。
服务端当前的系统时间为18点42分11秒,预先设置的时间差阈值为30分,可见用户信息中的时间戳与服务端的系统时间之间的时间差为1分04秒,没有超过预设时间阈值30分,因此,用户甲的身份认证通过。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
在以上各实施例的基础上,进一步地,所述根据所述目标用户的用户信息,对所述目标用户的身份进行认证,具体包括:
从所述目标用户的用户信息中,提取所述目标用户发起所述数据读取请求时使用的目标随机字符串;
查找本地缓存中是否包含所述目标随机字符串,若所述本地缓存中包含所述目标随机字符串,则所述目标用户的身份认证失败,若所述本地缓存中不包含所述目标随机字符串,则将目标随机字符串加入本地缓存中,所述目标用户的身份认证通过。
具体来说,云数据读取装置中的认证模块根据目标用户的用户信息,对目标用户的身份进行认证。
在认证过程中,从目标用户的用户信息中,提取目标用户发起数据读取请求时使用的目标随机字符串。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块从用户甲的密码中提取用户甲发起数据读取请求时使用的目标随机字符串12#3we%^rtfghj!@$。
然后,查找本地缓存中是否包含目标随机字符串,如果本地缓存中包含目标随机字符串,则目标用户的身份认证失败,如果本地缓存中不包含目标随机字符串,则将目标随机字符串加入本地缓存中,目标用户的身份认证通过。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块从用户甲的密码中提取用户甲发起数据读取请求时使用的目标随机字符串12#3we%^rtfghj!@$。
然后,通过在本地缓存中查找字符串12#3we%^rtfghj!@$,结果没有找到,则用户甲的身份认证通过,同时,需要将字符串12#3we%^rtfghj!@$加入本地缓存中,以便下一次请求到来时,判断该字符串是否使用过。
为了降低系统的复杂度,本地缓存每过一段时间可以自动清空,例如,设置为30分钟清空一次,同一字符串在30分钟之内不能使用两次,既降低了系统的复杂度,有能够达到防止重放攻击的效果。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
在以上各实施例的基础上,进一步地,所述根据所述目标用户的用户信息,对所述目标用户的身份进行认证,具体包括:
从所述目标用户的用户信息中,提取所述目标用户发起所述数据读取请求时使用的目标签名,以及所述目标签名的签名内容;
根据所述签名内容计算出当前签名;
判断所述当前签名与所述目标签名是否相同,若所述当前签名与所述目标签名不相同,则所述目标用户的身份认证失败,若所述当前签名与所述目标签名相同,则所述目标用户的身份认证通过。
具体来说,云数据读取装置中的认证模块根据目标用户的用户信息,对目标用户的身份进行认证。
在认证过程中,从目标用户的用户信息中,提取目标用户发起数据读取请求时使用的目标签名,以及该目标签名的签名内容。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块从用户甲的密码中提取用户甲发起数据读取请求时使用的签名A,以及该签名的签名内容A1。
然后,根据该签名内容,采用与目标用户在发起数据读取请求时使用的签名算法相同的算法,计算出当前签名。
例如,目标用户在发起数据读取请求时使用的签名算法为HMACSHA1算法,则生成当前签名时,也使用HMACSHA1算法。
最后,判断当前签名与目标签名是否相同,如果当前签名与目标签名不相同,则目标用户的身份认证失败,如果当前签名与目标签名相同,则目标用户的身份认证通过。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块从用户甲的密码中提取用户甲发起数据读取请求时使用的签名A,以及该签名的签名内容A1。
然后,根据该签名内容A1,采用与用户甲在发起数据读取请求时使用的签名算法相同的算法,计算出当前签名A。
经过判断,当前签名为A,用户甲发起数据读取请求时使用的签名也为A,二者相同,则用户甲的身份认证通过。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
在以上各实施例的基础上,进一步地,所述从服务端中的与所述目标用户对应的主题中获取所述目标数据之后,还包括:
将所述目标数据发送到所述目标用户发起所述数据读取请求时使用的客户端。
具体来说,从服务端中的与目标用户对应的主题中获取目标数据之后,服务端通过分布式消息系统的数据传输协议,将目标数据发送到目标用户发起数据读取请求时使用的客户端。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块根据用户甲的用户名和密码,对用户甲的身份进行认证,并得出认证结果。
如果用户甲的身份认证通过,则通过数据读取模块从服务端中的与用户甲对应的主题中获取123.wmv。
最后,通过分布式消息系统的数据传输协议,将123.wmv发送到用户甲发起数据读取请求时使用的客户端。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
在以上各实施例的基础上,进一步地,所述从服务端中的与所述目标用户对应的主题中获取所述目标数据之后,还包括:
对所述目标数据进行加密;
将加密后的目标数据发送到所述目标用户发起所述数据读取请求时使用的客户端。
具体来说,从服务端中的与目标用户对应的主题中获取目标数据之后,服务端先对目标数据进行加密。例如,采用AES对称加密算法进行加密。
然后,通过分布式消息系统的数据传输协议,将目标数据发送到目标用户发起数据读取请求时使用的客户端。
客户端收到加密后的目标数据后,使用数据加解密秘钥dataSecret来解密密文,数据加解密秘钥在用户申请开通云接入服务时,由工业互联网平台生成,用户登录平台后可以查看。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块根据用户甲的用户名和密码,对用户甲的身份进行认证,并得出认证结果。
如果用户甲的身份认证通过,则通过数据读取模块从服务端中的与用户甲对应的主题中获取123.wmv。
最后,服务端采用AES对称加密算法对目标数据进行加密后,再通过分布式消息系统的数据传输协议,将123.wmv发送到用户甲发起数据读取请求时使用的客户端。
本发明实施例提供的云数据读取方法,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
图2为本发明实施例提供的云数据读取装置示意图,如图2所示,本发明实施例提供一种云数据读取装置,用于执行上述任一实施例中所述的方法,具体包括获取模块201、认证模块202和数据读取模块203,其中:
获取模块201用于获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;认证模块202用于根据所述目标用户的用户信息,对所述目标用户的身份进行认证;数据读取模块203用于若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
具体来说,设备数据采集和分析是工业互联网平台为工业企业提供的两大必备服务,但也有一些企业具备自主研发的能力,他们比平台更了解自己的业务,希望只使用平台的设备接入和数据采集服务,由自己完成数据分析。这就需要一种从平台侧获取设备数据的合理方式,使工业互联网平台能够为用户提供高效的云接入服务。
工业互联网系统包括若干个工业设备、若干个客户端和工业互联网平台构成,其中,工业互联网平台中包括若干个服务端。工业互联网系统的系统架构采用Kafka分布式消息系统架构。若干个工业设备是数据的生产者;工业互联网平台用于数据的存储、管理和分发;用户需要通过客户端读取存储在工业互联网平台中的属于自己的数据,因此,客户端是数据的消费者。工业互联网平台中的服务端受Zookeeper管理。
所有的工业设备、服务端和客户端,都可以为多个,采用分布式云存储架构,用户读取数据的吞吐量支持横向水平扩容,吞吐量可以随着业务数据量的增长而扩展,不影响原有业务,不改动软件,无需停机即可拓展机器,只需增加服务端资源和带宽资源。
每一用户在工业互联网平台中的服务端申请云接入服务时,都会被分配一个对应的主题,该主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的工业设备产生的数据源发送到工业互联网平台之后,被存储在同一主题中。
一个服务端至少运行一个应用实例,用于实现数据的存储、管理和分发。一个主题包括多个分区,每一分区等同于一个有序的数据存储队列,存放n条数据。
当某一目标用户需要读取属于自己的,被存储在工业互联网平台中的数据时,首先需要通过客户端向云数据读取装置发送数据读取请求。
云数据读取装置中的获取模块201获取目标用户发起的数据读取请求,该数据读取请求中包含目标用户的用户信息,以及目标用户期望读取的目标数据。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
然后,云数据读取装置中的认证模块202根据目标用户的用户信息,对目标用户的身份进行认证。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块根据用户甲的用户名和密码,对用户甲的身份进行认证,并得出认证结果。
最后,如果目标用户的身份认证通过,则通过数据读取模块203从服务端中的与目标用户对应的主题中获取目标数据。如果目标用户的身份认证通过,则向目标用户发起数据读取请求时使用的客户端反馈认证失败信息。
例如,用户甲向云数据读取装置发送了一个数据读取请求,获取模块获取了该数据读取请求,该数据读取请求中包含用户甲的用户信息,该用户信息为用户名和密码,以及用户甲期望读取的目标数据123.wmv。
认证模块根据用户甲的用户名和密码,对用户甲的身份进行认证,并得出认证结果。
如果用户甲的身份认证通过,则通过数据读取模块从服务端中的与用户甲对应的主题中获取123.wmv。如果用户甲的身份认证通过,则向用户甲发起数据读取请求时使用的客户端反馈认证失败信息。
本发明实施例提供一种云数据读取装置,用于执行上述任一实施例中所述的方法,通过本实施例提供的装置执行上述某一实施例中所述的方法的具体步骤与上述相应实施例相同,此处不再赘述。
本发明实施例提供的云数据读取装置,采用认证机制,对分布式消息系统进行安全控制,既保证了数据读取的实时性和高效性,又保证了数据的安全。
图3为本发明实施例提供的电子设备的结构示意图,如图3所示,所述设备包括:处理器(processor)301、存储器(memory)302、总线303,以及存储在存储器上并可在处理器上运行的计算机程序。
其中,处理器301和存储器302通过总线303完成相互间的通信;
处理器301用于调用并执行存储器302中的计算机程序,以执行上述各方法实施例中的步骤,例如包括:
获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例中的步骤,例如包括:
获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现上述各方法实施例中的步骤,例如包括:
获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
以上所描述的装置及设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种云数据读取方法,其特征在于,包括:
获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
2.根据权利要求1所述的云数据读取方法,其特征在于,所述用户信息包括用户名和密码,所述密码包括签名、时间戳和随机字符串。
3.根据权利要求1所述的云数据读取方法,其特征在于,所述根据所述目标用户的用户信息,对所述目标用户的身份进行认证,具体包括:
从所述目标用户的用户信息中,提取所述目标用户发起所述数据读取请求时的时间戳;
比较所述时间戳与所述服务端的系统时间之间的时间差,若所述时间差超过预设时间阈值,则所述目标用户的身份认证失败,若所述时间差未超过所述预设时间阈值,则所述目标用户的身份认证通过。
4.根据权利要求1所述的云数据读取方法,其特征在于,所述根据所述目标用户的用户信息,对所述目标用户的身份进行认证,具体包括:
从所述目标用户的用户信息中,提取所述目标用户发起所述数据读取请求时使用的目标随机字符串;
查找本地缓存中是否包含所述目标随机字符串,若所述本地缓存中包含所述目标随机字符串,则所述目标用户的身份认证失败,若所述本地缓存中不包含所述目标随机字符串,则将目标随机字符串加入本地缓存中,所述目标用户的身份认证通过。
5.根据权利要求1所述的云数据读取方法,其特征在于,所述根据所述目标用户的用户信息,对所述目标用户的身份进行认证,具体包括:
从所述目标用户的用户信息中,提取所述目标用户发起所述数据读取请求时使用的目标签名,以及所述目标签名的签名内容;
根据所述签名内容计算出当前签名;
判断所述当前签名与所述目标签名是否相同,若所述当前签名与所述目标签名不相同,则所述目标用户的身份认证失败,若所述当前签名与所述目标签名相同,则所述目标用户的身份认证通过。
6.根据权利要求1所述的云数据读取方法,其特征在于,所述从服务端中的与所述目标用户对应的主题中获取所述目标数据之后,还包括:
将所述目标数据发送到所述目标用户发起所述数据读取请求时使用的客户端。
7.根据权利要求1所述的云数据读取方法,其特征在于,所述从服务端中的与所述目标用户对应的主题中获取所述目标数据之后,还包括:
对所述目标数据进行加密;
将加密后的目标数据发送到所述目标用户发起所述数据读取请求时使用的客户端。
8.一种云数据读取装置,其特征在于,包括:
获取模块,用于获取目标用户发起的数据读取请求,所述数据读取请求中包含所述目标用户的用户信息,以及所述目标用户期望读取的目标数据;
认证模块,用于根据所述目标用户的用户信息,对所述目标用户的身份进行认证;
数据读取模块,用于若判断获知所述目标用户的身份认证通过,则从服务端中的与所述目标用户对应的主题中获取所述目标数据,其中,每一用户在服务端申请云接入服务时,都会被分配一个对应的主题,主题是服务端根据不同用户的数据源划分出的逻辑存储单元,同一用户的数据源被存储在同一主题中。
9.一种电子设备,包括存储器、处理器,以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如权利要求1至7任一项所述云数据读取方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序被处理器执行时,实现如权利要求1至7任一所述云数据读取方法的步骤。
CN201910427698.8A 2019-05-22 2019-05-22 云数据读取方法及装置 Pending CN110166456A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910427698.8A CN110166456A (zh) 2019-05-22 2019-05-22 云数据读取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910427698.8A CN110166456A (zh) 2019-05-22 2019-05-22 云数据读取方法及装置

Publications (1)

Publication Number Publication Date
CN110166456A true CN110166456A (zh) 2019-08-23

Family

ID=67631939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910427698.8A Pending CN110166456A (zh) 2019-05-22 2019-05-22 云数据读取方法及装置

Country Status (1)

Country Link
CN (1) CN110166456A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113867981A (zh) * 2021-09-06 2021-12-31 珠海格力电器股份有限公司 数据传输模块数据传输方法、装置、数据传输模块及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103618649A (zh) * 2013-12-03 2014-03-05 北京人民在线网络有限公司 网站数据采集方法及装置
CN103685267A (zh) * 2013-12-10 2014-03-26 小米科技有限责任公司 数据访问方法及装置
CN106027552A (zh) * 2016-06-30 2016-10-12 中经汇通电子商务有限公司 一种用户访问云存储数据的方法及系统
EP3136239A1 (en) * 2015-08-24 2017-03-01 Fuji Xerox Co., Ltd. Relay apparatus, relay method, and relay processing program
CN107171789A (zh) * 2017-04-20 2017-09-15 努比亚技术有限公司 一种安全登录方法、客户端设备及服务器
CN107896220A (zh) * 2017-11-30 2018-04-10 成都航天科工大数据研究院有限公司 一种基于多租户的云平台租户管理方法及实现该方法的工业物联云平台
CN109450649A (zh) * 2018-12-28 2019-03-08 北京金山安全软件有限公司 一种基于应用程序接口的网关验证方法、装置及电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103618649A (zh) * 2013-12-03 2014-03-05 北京人民在线网络有限公司 网站数据采集方法及装置
CN103685267A (zh) * 2013-12-10 2014-03-26 小米科技有限责任公司 数据访问方法及装置
EP3136239A1 (en) * 2015-08-24 2017-03-01 Fuji Xerox Co., Ltd. Relay apparatus, relay method, and relay processing program
CN106027552A (zh) * 2016-06-30 2016-10-12 中经汇通电子商务有限公司 一种用户访问云存储数据的方法及系统
CN107171789A (zh) * 2017-04-20 2017-09-15 努比亚技术有限公司 一种安全登录方法、客户端设备及服务器
CN107896220A (zh) * 2017-11-30 2018-04-10 成都航天科工大数据研究院有限公司 一种基于多租户的云平台租户管理方法及实现该方法的工业物联云平台
CN109450649A (zh) * 2018-12-28 2019-03-08 北京金山安全软件有限公司 一种基于应用程序接口的网关验证方法、装置及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113867981A (zh) * 2021-09-06 2021-12-31 珠海格力电器股份有限公司 数据传输模块数据传输方法、装置、数据传输模块及介质

Similar Documents

Publication Publication Date Title
CN105027493B (zh) 安全移动应用连接总线
CN102710759B (zh) Web服务器、业务登录方法及系统
US9430655B1 (en) Split tokenization
CN104322001B (zh) 使用服务名称识别的传输层安全流量控制
US10411903B2 (en) Information security realizing method and system based on digital certificate
US10341118B2 (en) SSL gateway with integrated hardware security module
CN110780829B (zh) 基于云服务的广告打印方法、装置、设备及介质
US9749354B1 (en) Establishing and transferring connections
US10742638B1 (en) Stateless principal authentication and authorization in a distributed network
CN103259762A (zh) 一种基于云存储的文件加密、解密方法及系统
CN105939240B (zh) 负载均衡方法及装置
CN110149323B (zh) 一种具有千万级tps合约处理能力的处理装置
US20150082027A1 (en) Drm method and drm system for supporting offline sharing of digital contents
CN106878327A (zh) 面向贸易服务平台的登录方法
CN106899564A (zh) 一种登录方法和装置
US11086701B2 (en) Master control plane for infrastructure and application operations
US10785025B1 (en) Synchronization of key management services with cloud services
US20210328809A1 (en) Generating a domain name system container image to create an instance of a domain name system container
CN107896221B (zh) 一种账户绑定方法及装置
CN106790178B (zh) 防入侵认证方法、系统及装置
CN110166456A (zh) 云数据读取方法及装置
CN107026828A (zh) 一种基于互联网缓存的防盗链方法及互联网缓存
CN109286498A (zh) 核电站dcs通信用网络校验方法和装置、电子装置
CN110324365A (zh) 无密钥前端集群系统、应用方法、存储介质、电子装置
Liu et al. A clusterized firewall framework for cloud computing

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190823

RJ01 Rejection of invention patent application after publication