CN104298928A - 信息处理系统和信息处理方法 - Google Patents
信息处理系统和信息处理方法 Download PDFInfo
- Publication number
- CN104298928A CN104298928A CN201410074997.5A CN201410074997A CN104298928A CN 104298928 A CN104298928 A CN 104298928A CN 201410074997 A CN201410074997 A CN 201410074997A CN 104298928 A CN104298928 A CN 104298928A
- Authority
- CN
- China
- Prior art keywords
- information
- request
- authority
- parent
- permission
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/321—Cryptographic 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 a third party or a trusted authority
- H04L9/3213—Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
- H04L9/007—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models involving hierarchical structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
信息处理系统和信息处理方法。一种信息处理系统包括:管理单元,其管理对象的信息,所述对象的信息确定所述对象的父对象和子对象中的至少一方;接收单元,其接收对权限对象的指定和对要使用所述权限对象执行的处理的请求,权限对象是与权限信息相关联的对象;以及确定单元,其基于作为批准所述权限信息的对象的所有者对象的信息与作为权限对象的父对象的对象的信息之间的比较结果来确定是否接受请求。
Description
技术领域
本发明涉及一种信息处理系统和信息处理方法。
背景技术
在管理对象的服务器中,存在根据作为处理的请求源的客户的权限对对象执行诸如创建、获取、改变或删除的处理的情况。由于存在对由服务器管理的对象执行创建、改变、删除等的情况,所以当权限独立于对象而固定地与客户关联时,有时可能难以根据客户的权限以灵活的方式对对象执行这样的处理。日本特开No.9-251425号公报是相关技术的示例。
发明内容
因此,本发明的目的在于提供一种能够在同一的数据结构中管理对象的信息和与对所述对象执行的处理有关的权限并且以灵活方式控制来自客户的请求的信息处理系统和信息处理方法。
根据本发明的第一方面,提供一种信息处理系统,该信息处理系统包括:管理单元,所述管理单元管理对象的信息,所述对象的信息确定所述对象的父对象和子对象中的至少一方;接收单元,所述接收单元接收作为与权限信息相关联的对象的权限对象的指定和对要使用所述权限对象执行的处理的请求;确定单元,所述确定单元基于作为批准所述权限信息的对象的所有者对象的信息与作为所述权限对象的父对象的对象的信息之间的比较结果来确定是否接受所述请求。
根据本发明的第二方面,该信息处理系统还包括:控制器,所述控制器在所述请求被接受的情况下基于通过所述权限信息批准的处理的范围来控制与所述请求有关的处理的执行。
根据本发明的第三方面,所述确定单元在作为批准所述权限信息的所述对象的所述所有者对象与作为所述权限对象的所述父对象匹配的情况下接受所述请求。
根据本发明的第四方面,所述确定单元在作为所述权限对象的所述父对象的对象被包括在将作为所述所有者对象的父对象的对象和作为所述所有者对象的父对象的父对象的对象顺序地链接在一起的路径中的情况下接受所述请求,其中,所述所有者对象是批准所述权限信息的对象。
根据本发明的第五方面,所述确定单元在所述权限对象或由所述权限对象指定的对象不是由所述管理单元所管理的对象的情况下不接受所述请求。
根据本发明的第六方面,该信息处理系统还包括:通知单元,在所述所有者对象与作为所述权限对象的所述父对象的所述对象彼此不同的情况下,当所述权限对象被验证时,所述通知单元向所述所有者对象和所述权限对象的所述父对象中的至少一方发出通知。
根据本发明的第七方面,所述权限信息包括所述所有者对象的权限被委托给的委托目标对象的信息,所述委托目标对象具有代表所述所有者对象创建作为所述所有者对象的子对象的产物的权限。
根据本发明的第八方面,提供一种信息处理方法,该信息处理方法包括以下步骤:管理对象的信息,所述对象的信息确定所述对象的父对象和子对象中的至少一方;接收对作为与权限信息相关联的对象的权限对象的指定和对将使用所述权限对象执行的处理的请求;以及基于作为批准所述权限信息的对象的所有者对象的信息与作为所述权限对象的父对象的对象的信息之间的比较结果来确定是否接受所述请求。
根据本发明的第一至第八方面,与信息处理系统和信息处理方法不具有上述配置的情况相比较,可以在同一的数据结构中管理对象的信息和与将对所述对象执行的处理有关的权限,并且可以以灵活的方式控制来自客户的请求。
根据本发明的第二方面,信息处理系统可以在针对客户所提出的权限对象执行批准的处理范围内对来自客户的请求执行处理。
根据本发明的第三方面,在客户所提出的权限对象的所有者和父对象的信息恰当的情况下,信息处理系统可以接受来自客户的请求。
根据本发明的第四方面,在客户所提出的权限对象的所有者和父对象的信息恰当的情况下,信息处理系统可以接受来自客户的请求。
根据本发明的第五方面,信息处理系统可以避免基于不适当的权限执行处理。
根据本发明的第六方面,权限对象的所有者对象或父对象可以确认权限对象的验证被执行。
根据本发明的第七方面,与信息处理系统不具有上述配置的情况相比较,信息处理系统可以方便权限的委托。
附图说明
将基于下面的附图详细描述本发明的示例性实施方式,其中:
图1是根据示例性实施方式的信息处理设备的功能框图;
图2是示出树形结构的示例的示图;
图3是示出树形结构的示例的示图;
图4是示出树形结构的示例的示图;
图5是示出树形结构的示例的示图;
图6是示出树形结构的示例的示图;
图7A至图7C是示出管理数据的管理表的示例的示图;
图8A至图8C是示出管理数据的管理表的示例的示图;
图9A至图9C是示出管理数据的管理表的示例的示图;
图10A至图10C是示出管理数据的管理表的示例的示图;
图11A至图11C是示出管理数据的管理表的示例的示图;
图12A至图12C是示出管理数据的管理表的示例的示图;
图13A至图13C是示出管理数据的管理表的示例的示图;
图14A至图14C是示出管理数据的管理表的示例的示图;以及
图15是示出树形结构的示例的示图。
具体实施方式
下面将参照附图描述本发明的示例性实施方式。
[针对提供给信息处理设备的功能的描述]
图1是根据示例性实施方式的信息处理设备1的功能框图。如图1所示,信息处理设备1包括树形结构数据管理部11、请求接收部12、权限信息获取部13、验证部14、请求处理部15和处理数据提供部16。
在包括诸如中央处理单元(CPU)的控制器、诸如半导体存储器或磁盘单元的存储器、以及诸如网络接口的通信单元的计算机中,控制器执行存储在存储器中的程序,使得可以实现上述设置在信息处理设备1中的单元的功能。注意,程序可以在存储在信息存储介质中时提供给信息处理设备1,或者可以经由诸如因特网的数据通信单元而提供给信息处理设备1。下面将描述设置在信息处理设备1中的各个单元的细节。
树形结构数据管理部11管理形成树形结构的两个或更多个对象。这里,除了以序列中唯一存在的根对象之外,各个对象仅具有一个父对象(原型)。根对象不具有原型。当对象A是对象B的原型时,可以说对象B是对象A的产物(artifact)。基于对象之间的原型关系,可以通过树形结构来表示所有对象的集合。只要树形结构不被破坏,就可以通过将对象与和该对象的原始原型不同的原型链接起来而修改树形结构。由树形结构数据管理部11管理的各个对象可以具有值。在代表性状态转移(REST:Representational State Transfer)架构样式的上下文中,对象有时可以被称为资源,并且值有时可以被称为表现。这样的各具有值的对象包括被称为代表权限信息的接入令牌的对象。对象的示例可以包括仅代表仅由对象标识符和原型简单形成的纯标识的对象、代表包括任意内容类型的值的数据的对象、以及代表接入令牌的对象,接入令牌是证明接入资格、或诸如资源所有者的实体(对象的所有者)、或在所有者同意下访问对象的应用(客户端)的凭证。这些对象包括在一个树形结构中。树形结构数据管理部11响应于从客户端装置2接收到的指令而执行由树形结构数据管理部11管理的对象的添加、由树形结构数据管理部11管理的对象的更新、信息读取或删除等。下面将描述由树形结构数据管理部11管理的数据的示例。
图2至图6分别示出了以树形结构表示由树形结构数据管理部11管理的对象的显示示例,图7A至图14C示出了管理形成树形结构的对象的数据的管理表的示例。这里,将参照图2和示出了与图2相对应的管理表的数据构造示例的图7A至图7C来描述由树形结构数据管理部11管理的对象的数据构造示例。
图7A至图7C示出了拥有图2中示出的树形结构数据的数据的资源管理表的示例。图7A示出了有效性(validation)管理表,图7B示出了对象管理表,并且图7C示出了数据内容管理表。
如图7A所示,有效性管理表包括一个多更多个记录,每个记录都包括多个字段,所述字段是OBJECT KEY和VALUE。OBJECT KEY是对象ID,并且可以例如是当创建对象时由系统以随机方式产生的大约32字节的随机数。作为示例,在示例性实施方式中,使用4字节的十六进制编码值作为OBJECT KEY。VALUE是标记值,并且例如可以是真值。在图2中示出的树形结构中,对象“spf”的OBJECT KEY和对象“spf_token”的OBJECT KEY分别是“a1f40f99”和“bfa67956”,并且这两个对象都是有效的(“0”)。注意,在使对象无效的情况下,在有效性管理表中,可以将存储在与对象的OBJECT KEY相关联的VALUE中的值更新为“1”。
如图7B所示,对象管理表包括一个或更多个记录,各个记录都包括如下字段:OBJECT KEY(对象ID)、PROTOTYPE VALUE、ARTIFACT VALUE、STATE VALUE和CONTENT TYPE VALUE的字段。对象ID存储在OBJECT KEY中。对象的父对象的对象ID存储在PROTOTYPE VALUE中。数据内容管理表中的存储对象的产物的对象ID的记录的密钥(key)(例如可以散列值)存储在ARTIFACT VALUE中。数据内容管理表中的显示对象的数据内容的记录的密钥(例如可以是散列值)存储在STATE VALUE中。数据内容管理表中的显示对象的类型的记录的密钥(例如可以是散列值)存储在CONTENT TYPE VALUE中。
如图7C所示,在存储对象的数据内容的数据内容管理表中,数据内容按照与对应的密钥(例如,存储在ARTIFACT VALUE、STATE VALUE和CONTENT TYPEVALUE中的值)相关联的方式存储。例如,在数据内容管理表中,对象的产物的列表的信息按照与ARTIFACT VALUE中的对象的密钥相关联的方式存储。另外,例如,在数据内容管理表中,{“所有者”:所有者的对象ID,“客户端”:客户端的对象ID,“范围”:代表范围的字符串}的信息与存储在STATE VALUE中的密钥相关联,所述STATE VALUE与作为接入令牌的对象相关联。每一个处理请求都附带有接入令牌,在这种情况下,所有者被视为处理的请求者,并且客户端被视为处理的代理请求者。范围包括诸如创建(C:创建)、更新(U:更新)、删除(D:删除)、列表获取(L:列表)等被批准的处理类型的信息。注意,范围可以包括客户具有权限的处理的信息。例如,在数据内容管理表中,例如,对象的数据类型的信息可以与CONTENT TYPEVALUE中存储的密钥相关联,所述CONTENT TYPE VALUE与对象相关联。
请求接收部12从客户设备2接收将对由树形结构数据管理部11管理的对象执行的处理的请求。另外,请求接收部12取得请求以及接入令牌的信息(权限信息的密钥)。
权限信息获取部13基于由请求接收部12接收到的接入令牌来获取与已经接收到的请求有关的权限信息(例如,所有者信息、客户信息和范围信息)。例如,在由请求接收部12接收到的接入令牌在有效性管理表中有效的情况下,权限信息获取部13使用接入令牌作为密钥从对象管理表中搜索与该密钥相对应的记录。在这种情况下,当未从对象管理表中检索到与该密钥相对应的记录时,权限信息获取部13可以向验证部14输出检索错误。当从对象管理表中检索到与该密钥相对应的记录时,权限信息获取部13使用存储在该记录的STATE VALUE中的作为密钥(特定密钥)而被检索到的值从数据内容管理表中搜索与所述特定密钥相对应的记录。在这种情况下,当未从数据内容管理表中检索到与所述特定密钥相对应的记录时,权限信息获取部13可以向验证部14输出检索错误。当从数据内容管理表中检索到与所述特定密钥相对应的记录时,权限信息获取部13获取存储在检索到的记录的VALUE中所存储的数据(所有者信息、客户信息和范围信息)作为权限信息,对所有者信息和客户信息进行验证(验证是否是具有有效对象ID的所有者和客户),并且向验证部14输出权限信息。
验证部14基于由权限信息获取部13获取的权限信息和由请求接收部12接收到的接入令牌的父对象(原型对象)的信息之间的比较来执行验证。例如,当由权限信息获取部13向验证部14通知检索错误时,验证部14向请求处理部15输出检索错误。验证部14验证由权限信息获取部13获取的权限信息中所包括的所有者信息(所有者对象)是否与由请求接收部12接收到的接入令牌的父对象(原型对象)相匹配。当接入令牌的父对象(原型对象)包括在将所有者对象的父对象和父对象的父对象顺序地链接在一起的路径(原型链)中时,验证部14确定所述验证成功,否则,验证部14确定所述验证不成功。验证部14将验证结果通知给请求处理部15。
现在将描述与通知队列有关的处理。首先,在验证了由请求接收部12接收到的接入令牌的情况下,由请求接收部12接收到的接入令牌的原型具有队列(通知队列),该队列中将存储通知(空队列被设置为通知队列)。另外,在验证了由请求接收部12接收到的接入令牌的情况下,当接入令牌的原型包括在通过接入令牌指定的所有者对象的原型链中时,沿从所有者对象开始的原型链执行对具有通知队列的对象的搜索,并且将首先发现的对象设置为通知目标。
基于由请求接收部12接收到的请求、由权限信息获取部13获取的权限信息、以及由验证部14通知的请求处理部15的验证结果,请求处理部15控制与请求有关的处理的执行。例如,在与由请求接收部12接收到的请求有关的处理包括在由权限信息获取部13获取的权限信息的范围信息中的情况下,并且在验证部14已通知给请求处理部15的验证结果显示验证成功的条件以及目标资源(请求的目标对象)和接入令牌所指定的所有者(对象)(例如,所有者是否具有对目标资源的特权)之间的关系的条件满足的情况下,请求处理部15可以执行与请求接收部12接收到的请求有关的处理,并且向处理数据提供部16输出执行结果。当上述条件不满足的情况时,请求处理部15可以通过不接受与请求有关的处理来向处理数据提供部16输出错误。另选地,即使在接收到的请求不满足上述条件的情况下,请求处理部15也可以保留处理(例如,更新),并且可以将处理(例如,更新)的请求通知给目标资源的原型。在这种情况下,在目标资源的原型不具有通知队列时,将所述请求通知给在目标资源的原型链中最先找到的具有通知队列的对象(通知目标对象)。这里,在通知目标对象已注意到存储在通知队列中的通知时,通知目标对象可以利用自身的接入令牌对目标资源执行处理(例如,值的设置),或者可以仅从队列中删除所述通知。
下面将描述在来自客户端装置2的请求被接受的情况下由请求处理部15根据所述请求执行的处理(产物列表的获取、产物的创建、对象表示的获取、对象表示的更新、对象的删除、原型的获取、原型的更新等)的示例。在下面将描述的示例中,作为示例,将描述从客户端装置2发送到信息处理设备1的请求在HTTPS传输中使用REST API并且接入令牌包括在HTTP请求报头中的情况。
在接收到的请求是“GET/”的情况下,请求处理部15通过使用包括在权限信息中的所有者对象作为密钥来从对象管理表中检索与所述密钥相对应的记录,检索与已从数据内容管理表中检索到的记录中包括的ARTIFACT VALUE的值相对应的记录,并且向处理数据提供部16输出检索到的记录中包括的VALUE的值作为处理结果。
在接收到的请求是“POST/”的情况下,请求处理部15创建具有权限信息中所包括的所有者对象作为其父对象的新对象的密钥(对象ID)。例如,可以通过随机数来创建所述对象ID。然后,请求处理部15添加记录(其中,所创建的对象ID和原型对象的信息存储在对象管理表中),并且向处理数据提供部16输出所创建的对象ID作为处理结果。然后,请求处理部15可以更新存储在ARTIFACT VALUE中的原型对象的值,并且可以在KEY和列表信息中添加包括创建的值的记录,其中,列表信息包括列表中新创建的对象的信息。
在接收到的请求是“GET/{id}”的情况下,请求处理部15使用{id}作为对象密钥从对象管理表中检索与所述对象密钥相对应的记录,参照检索到的记录中包括的STATE VALUE中存储的值,使用请求处理部15所参照的值作为密钥从数据内容管理表中检索与所述密钥相对应的记录,并且向处理数据提供部16输出检索到的记录中所包括的VALUE的值作为处理结果。
在接收到的请求是“PUT/{id}”的情况下,当接入令牌指定的所有者对通过{id}所确定的目标对象具有特权时(即,当接入令牌指定的所有者被包括在目标对象的原型链中时),请求处理部15使用{id}作为对象密钥来从对象管理表中检索与所述对象密钥相对应的记录,参照检索到的记录中包括的STATE VALUE中存储的值,使用请求处理部15所参照的值作为密钥从数据内容管理表中检索与所述密钥相对应的记录,并且根据与所述请求一起接收到的更新信息来更新检索到的记录中所包括的VALUE的值。
在接收到的请求是“DELETE/{id}”的情况下,当接入令牌指定的所有者对通过{id}确定的目标对象具有特权时(即,当通过接入令牌指定的所有者包括在目标对象的原型链中时),请求处理部15使用{id}作为对象密钥来从对象管理表中检索与该对象密钥相对应的记录。在检索到的记录的ARTIFACT VALUE中未存储值的情况下(即,目标对象不具有产物),请求处理部15可以在有效性管理表中将与对象{id}相对应的VALUE中存储的值更新为无效值(1)。在检索到的记录的ARTIFACT VALUE中存储有值的情况下,请求处理部15可以向处理数据提供部16输出错误。
在接收到的请求是“GET/{id}/prototype”的情况下,请求处理部15使用{id}作为对象密钥来从对象管理表中检索与该对象密钥相对应的记录,并向处理数据提供部16输出检索到的记录中包括的PROTOTYPE VALUE中所存储的值作为处理结果。
在接收到的请求是“PUT/{id}/prototype”并且请求的主体是新的原型的对象ID的情况下,接入令牌所指定的所有者(请求者)是目标资源的当前原型(通过{id}确定的对象),并且在该原型的改变不破坏树形结构的情况下,请求处理部15保留所述新的原型。然后,请求者被保留作为所述新的原型,并且在该原型的改变不破坏树形结构的情况下,请求处理部15完成新的原型的设置(即,执行该原型的更新)。在除了上述情况之外的任何情况下,请求处理部15拒绝请求。例如,当对象C的原始原型是A,并且对象C的新的原型是B时,在“请求者=A,新的原型=B,目标对象=C”的第一指令和“请求者=B,新的原型=B,目标对象=C”的第二指令二者在各自指令的定时都不破坏树形结构的情况下,请求处理部15可以执行将对象C的原型从A改变成B的处理。
处理数据提供部16向客户端装置2提供由请求处理部15通知给处理数据提供部16的处理结果。注意,在请求处理部15向处理数据提供部16通知了错误的情况下,处理数据提供部16可以向客户设备2通知所述错误。
针对由树形结构数据管理部11管理的各个对象,可以准备保持等待针对对象执行的请求的队列,并且可以允许对象的所有者读取或删除为对象所准备的该队列所保持的项。这里,队列所保持的各个项是HTTP请求的报头和主体的散列值,主体的内容可以按照可从散列值参照的方式存储。当请求的内容适当时,对象的所有者可以通过使用所有者的接入令牌进行请求来执行请求。然而,在原始HTTP请求报头按原样存储的情况下,对象的所有者将知道保密的接入令牌(即,所有者可以假装是做出原始请求的实体),因此,请求报头中的接入令牌可以被不是对象标识符而是分配给对象标识符的散列值(即,关于数据内容管理表所管理的对象标识符(接入令牌)的散列值)代替,使得可以防止泄漏接入令牌。在该配置的情况下,即使可以从散列值确定令牌的内容({“所有者”:所有者的对象ID,“客户端”:客户端的对象ID,“范围”:表示范围的字符串}作为JSON对象),但所有者不知道接入令牌本身。
[2.处理的特定示例的描述]
下面将参照图2至图14C描述根据示例性实施方式的在信息处理设备1中执行的对象添加处理和对象更新处理的特定示例。
图2示出了由处于初始状态的各个对象形成的树形结构。如图2所示,在由处于初始状态的各个对象形成的树形结构中,作为用于根的接入令牌的对象“spf_token”被提供作为根对象的对象“spf”的产物。图2中示出的树形结构的数据对应于图7A至图7C中示出的管理表(有效性管理表、对象管理表和数据内容管理表)。
接着,如图3所示,将描述在由对象形成的树形结构中添加对象“用户”作为对象“spf”的产物的处理。在这种情况下,首先,客户端装置2利用接入令牌“spf_token”向信息处理设备1发送请求“POST/”。结果,如图8A至图8C所示,信息处理设备1创建新的对象密钥,并将创建的对象密钥的记录添加到图8A的有效性管理表和图8B的对象管理表。另外,信息处理设备1在图8B的对象管理表中更新关于被添加了产物的原型对象(该示例中的“spf”对象)的ARTIFACT VALUE的值,并且将关于原型对象的ARTIFACT VALUE的值添加到图8C的数据内容管理表中。注意,在图8A至图8C中的从图7A至图7C改变的数据下面加了下划线。信息处理设备1将添加的对象密钥(e356bf46)通知给客户端装置2。
客户端装置2利用接入令牌“spf_token”向信息处理设备1发送用于更新从信息处理设备1通知给客户端装置2的对象密钥(e356bf46)的信息以及更新的内容“名称“:”用户”的请求(PUT/e356bf46)。结果,如图9A至图9C所示,对象密钥(e356bf46)的数据内容被登记在图9B的对象管理表和图9C的数据内容管理表中。注意,图9A至图9C中的从图8A至图8C改变的数据下面加了下划线。
接着,如图4所示,添加对象“temp_users_token”作为对象“用户”的临时接入令牌。客户端装置2可以通过利用对象“spf_token”向信息处理设备1发送请求“POST/”来新添加对象。图10A至图10C示出添加了对象“temp_users_token”的对象密钥(de75e969)的管理表。注意,图10A至图10C中的从图9A至图9C改变的数据下面加了下划线。
客户端装置2利用接入令牌“spf_token”向信息处理设备1发送用于更新从信息处理设备1通知给客户端装置2的对象密钥(de75e969)的信息以及更新的内容{“所有者”:“/e356bf46”,“客户端”:“/e356bf46”,“范围”:“创建更新删除列表”}的请求(PUT/de75e969)。结果,如图11A至图11C所示,针对图11B的对象管理表和图11C的数据内容管理表中的对象密钥“de75e969”设置具有对象“用户”作为所有者的权限信息。注意,图11A至图11C中的从图10A至图10C改变的数据下面加了下划线。
接着,如图5所示,客户设备2利用接入令牌“temp_users_token”添加对象“users_token”作为对象“用户”的子对象(child)。换而言之,客户端装置2可以通过利用对象“temp_users_token”向信息处理设备1发送请求“POST/”来新添加对象。图12A至图12C示出添加了对象“users_token”的对象密钥“1ff64df4”的管理表。注意,图12A至图12C中的从图11A至图11C改变的数据下面加了下划线。
这里,客户端装置2利用接入令牌“temp_users_token”向信息处理设备1发送用于更新从信息处理设备1通知给客户设备2的对象密钥(1ff64df4)的信息以及更新的内容{“所有者”:“/e356bf46”,“客户端”:“/e356bf46”,“范围”:“创建更新删除列表”}的请求(PUT/1ff64df4)。结果,如图13A至图13C所示,在图13B的对象管理表和图13C的数据内容管理表中针对对象密钥(1ff64df4)设置具有对象“用户”作为所有者的权限信息。注意,图13A至图13C中的从图12A至图12C改变的数据下面加了下划线。
接着,如图6所示,客户端装置2利用接入令牌“users_token”向对象“users”添加产物“Alice”。换而言之,客户端装置2可以通过使用对象“users_token”向信息处理设备1发送请求“POST/”来新添加对象。图14A至图14C示出添加了产物“Alice”的对象密钥(87ad557f)的管理表。注意,图14A至图14C中的从图13A至图13C改变的数据下面加了下划线。
如上所述,通过执行接入令牌的添加以及对象的添加和更新,可以在同一树形结构中提供权限信息和资源,并且可以针对各个资源设置详细的权限信息。
现在将参照图15中示出的对象的树形结构来描述在接入令牌所指定的所有者与原型(父对象)彼此不同的情况下执行的通知处理的示例。注意,具有与接入令牌所指定的所有者不同的原型(父对象)的接入令牌的类型将被称为特异(singular)令牌。
如图15所示,作为对象A的产物的对象B是接入令牌。接入令牌的所有者和客户端中的每一个是对象A,并且接入令牌的范围是s=“创建更新删除列表”。
接着,假定利用对象B(下面称为“令牌B”)来创建对象C。在这种情况下,当利用令牌B时,作为令牌B的原型的对象A具有将存储通知的队列。
接着,假定利用令牌B创建令牌D。在这种情况下,对象A是令牌D的原型,令牌D的所有者和客户中的每一个是对象C,并且令牌D的范围是s。
接着,假定利用令牌D创建令牌E。在这种情况下,当令牌D得到验证时,感测到令牌D是特异令牌,并且向作为令牌D的所有者的对象C发出通知。在这种情况下,从对象C开始沿原型链对具有通知队列的对象执行搜索,并且将首先发现的对象(对象A)设置为通知目标。
接着,假定利用令牌E创建对象F。在这种情况下,令牌E得到验证,并且作为令牌E的原型的对象C具有将存储通知的队列。
假定利用令牌D创建对象G。在这种情况下,感测到令牌D是特异令牌,向作为令牌D的所有者的对象C发出通知,并且该通知存储在对象C的队列中。
另外,存在令牌K,令牌K具有对象C作为其父对象,并且在令牌K的所有者是对象C的情况下,令牌K(被委派了所有者的权限的对象)的客户端是对象J,并且令牌K的范围是s,对象J可以代表对象C创建例如对象G,对象G是对象C的产物。
下面将描述本发明的其它示例性实施方式。
(1)在根据示例性实施方式的信息处理设备1中,在具有其对应的所有者属性的对象(下面称为接入令牌)的原型与所有者匹配的情况下(在这种情况下,接入令牌被称为正常接入令牌),接入令牌伴随的方法的传输可以被认为被所有者批准并且可以被接受。
(2)在(1)中,在接入令牌的原型被包括在所有者的原型链中的情况下(在这种情况下,接入令牌被称为特异接入令牌),接入令牌伴随的方法的传输可以被认为被所有者批准并且可以并接受。
(3)在(2)中,在特异接入令牌伴随的方法的传输被接受的情况下,可以向所有者通知该接受。
(4)在(2)中,在特异接入令牌伴随的方法的传输被接受的情况下,可以向接入令牌的原型通知该接受。
(5)在(1)至(4)中,信息处理设备1可以具有用于对象的创建的方法(克隆),并且所创建的对象可以是所有者的克隆体(即,所有者是对象的原型)。
(6)在(1)至(5)中,接入令牌具有其对应的客户端属性,并且接入令牌伴随的方法的传输可以被认为是被委派给指定的客户端。
(7)在(1)至(6)中,接入令牌具有其对应的范围属性,并且接入令牌伴随的方法的传输可以被认为在指定的范围内被委派。
(8)在(1)至(7)中,信息处理设备1可以具有用于获取克隆体列表的方法(克隆列表),并且可以返回所有者的克隆体的集合。
(9)在(1)至(8)中,信息处理设备1可以具有获取目标对象的代表的方法。
(10)在(1)至(9)中,信息处理设备1可以具有更新目标对象的表示的方法,并且仅在目标对象的原型批准执行所述表示的更新时才可以执行所述表示的更新。
(11)在(1)至(10)中,信息处理设备1可以具有删除目标对象的方法,并且仅在目标对象的原型批准执行所述删除时才可以执行所述删除。
(12)在(1)至(11)中,仅在方法被包括在接入令牌所指定的范围内时才执行所述方法。
(13)在(1)至(12)中,当目标对象的原型链中所包括的对象批准执行所述方法时,可以执行所述方法。
(14)在(1)至(13)中,在目标对象的原型链中所包括的对象批准执行所述方法的情况下,可以向目标对象的原型通知所述方法的执行。
(15)在(1)至(14)中,在目标对象的原型链中所包括的对象批准执行所述方法的情况下,可以向方法传输所有者通知所述方法的执行。
(16)在(1)至(15)中,可以由系统按随机方式产生对象标识符。
(17)在(1)至(16)中,表示具有被确定为所述表示的散列值的标识符,并且可以经由所述标识符执行所述表示和相应的对象之间的绑定。
(18)在(1)至(17)中,在执行与表示的发送和接收一起发生的诸如对象的表示的获取和对象的表示的更新的方法的情况下,可以向响应添加表示标识符。
(19)在(1)至(18)中,在执行与表示的发送和接收一起发生的诸如对象的表示的获取和对象的表示的更新的方法的情况下,可以在方法传输时添加表示标识符,并且可以根据添加的表示标识符有条件地执行所述方法。
(20)在(1)至(19)中,到不具有权限的目标对象的方法传输的内容被存储,并且目标对象的原型可以表示传输内容。
(21)在(1)至(20)中,可以用散列值来代替在方法传输时添加的令牌。
(22)在(1)至(21)中,可以向目标对象的原型通知事件。
(23)在(1)至(22)中,可以将通知存储在队列或堆栈中。
(24)在(1)至(23)中,到对象方法传输的内容和伴随情况可以被记录,并且所有者可以表示方法传输的内容和伴随情况。
(25)在(1)至(24)中,方法传输的传输可以是经由TLS的HTTP(https)。
(26)在(1)至(25)中,可以利用HTTP请求消息中的Authorization字段附上接入令牌。
(27)在(1)至(26)中,可以通过到工厂资源的POST来代表克隆。
(28)在(1)至(27)中,可以通过到工厂资源的GET来代表克隆列表。
(29)在(1)至(28)中,可以通过到实体资源的GET来代表对象的表示的获取。
(30)在(1)至(29)中,可以通过到实体资源的PUT来代表对象的表示的更新。
(31)在(1)至(30)中,方法传输的传输可以是经由TLS的WebSocket(wss)。
另外,在示例性实施方式中,即使信息处理设备1对从客户端装置2接收到的请求不具有权限,信息处理设备1也可以通过使用与所述请求一起接收到的接入令牌来向客户端装置2提供原型的信息。
为了说明和描述的目的提供了本发明示例性实施方式的以上描述。不旨在是穷举性的或将实现限于公开的精确形式。明显地,很多修改和变型对于本领域技术人员而言将是明显的。为了最好地解释本发明的原理及其实际应用而选择并描述了实施方式,从而使得本领其他技术人员能够针对适合于预料到的特定用途的各种实施方式和各种修改理解本发明。旨在通过下面的权利要求及其等同物来限定本发明的范围。
Claims (8)
1.一种信息处理系统,该信息处理系统包括:
管理单元,所述管理单元管理对象的信息,所述对象的信息确定所述对象的父对象和子对象中的至少一方;
接收单元,所述接收单元接收对权限对象的指定和对要使用所述权限对象执行的处理的请求,所述权限对象是与权限信息相关联的对象;以及
确定单元,所述确定单元基于作为批准所述权限信息的对象的所有者对象的信息与作为所述权限对象的父对象的对象的信息之间的比较结果来确定是否接受所述请求。
2.根据权利要求1所述的信息处理系统,该信息处理系统还包括:
控制器,在所述请求被接受的情况下,所述控制器基于所述权限信息批准的处理的范围来控制与所述请求有关的处理的执行。
3.根据权利要求1或2所述的信息处理系统,其中,在作为批准所述权限信息的所述对象的所述所有者对象与作为所述权限对象的所述父对象的所述对象匹配的情况下,所述确定单元接受所述请求。
4.根据权利要求1或2所述的信息处理系统,其中,在作为所述权限对象的所述父对象的所述对象被包括在将作为所述所有者对象的父对象的对象和作为所述所有者对象的所述父对象的父对象的对象顺序地链接在一起的路径中的情况下,所述确定单元接受所述请求,所述所有者对象是批准所述权限信息的对象。
5.根据权利要求1至4中的任一项所述的信息处理系统,其中,在所述权限对象或由所述权限对象指定的对象不是由所述管理单元所管理的对象的情况下,所述确定单元不接受所述请求。
6.根据权利要求1至5中的任一项所述的信息处理系统,该信息处理系统还包括:
通知单元,当在所述所有者对象和作为所述权限对象的所述父对象的所述对象彼此不同的情况下所述权限对象被验证时,所述通知单元向所述所有者对象和所述权限对象的所述父对象中的至少一方发出通知。
7.根据权利要求1至6中的任一项所述的信息处理系统,其中,所述权限信息包括被委派了所述所有者对象的权限的委派目标对象的信息,并且
其中,所述委派目标对象具有代表所述所有者对象创建作为所述所有者对象的子对象的产物的权限。
8.一种信息处理方法,该信息处理方法包括以下步骤:
管理对象的信息,所述对象的信息确定所述对象的父对象和子对象中的至少一方;
接收对作为与权限信息相关联的对象的权限对象的指定和对将使用所述权限对象执行的处理的请求;以及
基于作为批准所述权限信息的对象的所有者对象的信息与作为所述权限对象的父对象的对象的信息之间的比较结果,确定是否接受所述请求。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013148173A JP5447722B1 (ja) | 2013-07-17 | 2013-07-17 | 情報処理システム及びプログラム |
JP2013-148173 | 2013-07-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104298928A true CN104298928A (zh) | 2015-01-21 |
CN104298928B CN104298928B (zh) | 2018-05-18 |
Family
ID=50614417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410074997.5A Active CN104298928B (zh) | 2013-07-17 | 2014-03-03 | 信息处理系统和信息处理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9467291B2 (zh) |
JP (1) | JP5447722B1 (zh) |
CN (1) | CN104298928B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016018298A1 (en) * | 2014-07-30 | 2016-02-04 | Hewlett-Packard Development Company, L.P. | Key search token for encrypted data |
US9762585B2 (en) * | 2015-03-19 | 2017-09-12 | Microsoft Technology Licensing, Llc | Tenant lockbox |
US10931682B2 (en) | 2015-06-30 | 2021-02-23 | Microsoft Technology Licensing, Llc | Privileged identity management |
JP6720613B2 (ja) | 2016-03-23 | 2020-07-08 | 富士ゼロックス株式会社 | 情報処理システム及び情報処理プログラム |
US11190514B2 (en) * | 2019-06-17 | 2021-11-30 | Microsoft Technology Licensing, Llc | Client-server security enhancement using information accessed from access tokens |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1176488A (zh) * | 1996-08-08 | 1998-03-18 | 西门子公司 | 用于浅沟槽绝缘隔离的空隙填充及平面化工艺方法 |
US20020026592A1 (en) * | 2000-06-16 | 2002-02-28 | Vdg, Inc. | Method for automatic permission management in role-based access control systems |
CN1849600A (zh) * | 2004-05-01 | 2006-10-18 | 微软公司 | 提供资源的基于联系人的共享的用户界面的系统和方法 |
US20100319067A1 (en) * | 2009-06-15 | 2010-12-16 | Sap Ag | Method and System for Managing Object Level Security Using an Object Definition Hierarchy |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5008853A (en) | 1987-12-02 | 1991-04-16 | Xerox Corporation | Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment |
US5742759A (en) | 1995-08-18 | 1998-04-21 | Sun Microsystems, Inc. | Method and system for facilitating access control to system resources in a distributed computer system |
GB0207354D0 (en) * | 2002-03-28 | 2002-05-08 | Ibm | Inheritance of access controls within a hierarchy of data processing system resources |
GB0314908D0 (en) * | 2003-06-26 | 2003-07-30 | Ibm | User access to a registry of business entity definitions |
US8631504B2 (en) * | 2004-07-19 | 2014-01-14 | Jayant Joshi | Document security within a business enterprise |
US8396881B2 (en) * | 2007-05-17 | 2013-03-12 | Research In Motion Limited | Method and system for automatically generating web page transcoding instructions |
US8887297B2 (en) * | 2007-07-13 | 2014-11-11 | Microsoft Corporation | Creating and validating cryptographically secured documents |
US8826390B1 (en) * | 2012-05-09 | 2014-09-02 | Google Inc. | Sharing and access control |
-
2013
- 2013-07-17 JP JP2013148173A patent/JP5447722B1/ja not_active Expired - Fee Related
-
2014
- 2014-03-03 CN CN201410074997.5A patent/CN104298928B/zh active Active
- 2014-03-04 US US14/196,753 patent/US9467291B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1176488A (zh) * | 1996-08-08 | 1998-03-18 | 西门子公司 | 用于浅沟槽绝缘隔离的空隙填充及平面化工艺方法 |
US20020026592A1 (en) * | 2000-06-16 | 2002-02-28 | Vdg, Inc. | Method for automatic permission management in role-based access control systems |
CN1849600A (zh) * | 2004-05-01 | 2006-10-18 | 微软公司 | 提供资源的基于联系人的共享的用户界面的系统和方法 |
US20100319067A1 (en) * | 2009-06-15 | 2010-12-16 | Sap Ag | Method and System for Managing Object Level Security Using an Object Definition Hierarchy |
Also Published As
Publication number | Publication date |
---|---|
JP5447722B1 (ja) | 2014-03-19 |
CN104298928B (zh) | 2018-05-18 |
US9467291B2 (en) | 2016-10-11 |
JP2015022390A (ja) | 2015-02-02 |
US20150026799A1 (en) | 2015-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3499789B1 (en) | Primary and secondary blockchain device | |
CN108712488B (zh) | 一种基于区块链的数据处理方法、装置、区块链系统 | |
CN109600447B (zh) | 用于处理数据的方法、装置和系统 | |
CN110383760A (zh) | 用户控制的、分散式、分布式且安全的内容分发 | |
US8627508B2 (en) | Cloud key directory for federating data exchanges | |
JP2020531975A (ja) | ブロックチェーンのリンクの暗号保護され且つフィルタリングされ且つソートされたトランザクションデータセットの集合を提供する装置 | |
KR102111449B1 (ko) | 저전력 무선네트워크를 이용한 펌웨어 업데이트 방법 | |
CN104298928A (zh) | 信息处理系统和信息处理方法 | |
US20160162700A1 (en) | Method for sharing multiple data items using a single url | |
WO2022100892A1 (en) | Distributed ledger system | |
CN105282217A (zh) | 基于差异的内容联网 | |
KR20230073274A (ko) | 운영 시스템을 공개하기 위한 블록체인-기반 시스템 및 방법 | |
US11626986B1 (en) | Method and system of rescinding access to blockchain data | |
US12093997B1 (en) | Systems and methods for bartering services and goods using distributed ledger techniques | |
US20230275773A1 (en) | Distributed ledger system | |
KR102123487B1 (ko) | 암호화폐 교환을 위한 트랜잭션을 매칭하는 전자 장치 및 방법 | |
KR20080028696A (ko) | 그룹 키 업데이트 방법 및 이를 이용한 그룹 키 업데이트장치 | |
CN116233253A (zh) | 业务处理方法、装置、计算机设备和存储介质 | |
US10257262B2 (en) | Mobile itinerant software agent carrying itinerary and data within | |
JP2009038416A (ja) | マルチキャスト通信システム、並びにグループ鍵管理サーバ | |
JP6326807B2 (ja) | 情報処理システム及びプログラム | |
KR20200045931A (ko) | 펌웨어 패키징 및 언패키징 방법 | |
JP6136980B2 (ja) | 情報処理システム及びプログラム | |
JP6225749B2 (ja) | 情報処理システム及びプログラム | |
KR20130021863A (ko) | 네트워크 서버를 이용한 콘텐츠를 관리하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Tokyo, Japan Patentee after: Fuji film business innovation Co.,Ltd. Address before: Tokyo, Japan Patentee before: Fuji Xerox Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |