CN106059989B - 一种服务器以及切换执行身份的方法 - Google Patents

一种服务器以及切换执行身份的方法 Download PDF

Info

Publication number
CN106059989B
CN106059989B CN201610003942.4A CN201610003942A CN106059989B CN 106059989 B CN106059989 B CN 106059989B CN 201610003942 A CN201610003942 A CN 201610003942A CN 106059989 B CN106059989 B CN 106059989B
Authority
CN
China
Prior art keywords
identifier
worker
permission
operation requests
group
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.)
Expired - Fee Related
Application number
CN201610003942.4A
Other languages
English (en)
Other versions
CN106059989A (zh
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.)
Synology Inc
Original Assignee
Synology Inc
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 Synology Inc filed Critical Synology Inc
Publication of CN106059989A publication Critical patent/CN106059989A/zh
Application granted granted Critical
Publication of CN106059989B publication Critical patent/CN106059989B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • 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
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种服务器及切换执行身份的方法,所述服务器包括处理器及储存单元,所述储存单元储存程序代码,当所述处理器执行所述程序代码时,会执行:当接收到来自所述服务器外的操作请求时,在处理所述操作请求的工作者的有效身份标识符设为预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述有效身份标识符设为特定身份标识符,并通过具有所述特定身份标识符的所述工作者来执行所述操作请求,所述特定身份标识符具有执行所述操作请求的权限;当执行所述操作请求之后,将所述有效身份标识符重新设回所述预设身份标识符。通过本发明,在有需要的时候才会暂时地提升权限,操作请求结束后便回到原预设身份。

Description

一种服务器以及切换执行身份的方法
技术领域
本发明涉及一种服务器,尤其涉及一种可以切换执行身份以执行操作请求的服务器。
背景技术
在具有网页服务器或是档案服务器等多功能的网络附加储存服务器中,大多是具有最高***管理权限的执行身份来启动HTTPd服务器软件,并处理服务器的操作请求。然而,由于此执行身份拥有最高的权限,因此,若是操作***的共通网关接口(CommonGateway Interface,CGI)有安全漏洞或是***组件有缺陷,则被HTTPd服务器软件执行时就能轻易地取得***控制权限,造成安全性上的危险。
发明内容
因此,本发明的目的的一在于公开一种切换执行身份的方法及相关的服务器,其可以在有需要的时候才会暂时地提升权限,以解决现有技术中的问题。
根据本发明一实施例,一服务器包括一处理器以及一储存单元,所述储存单元储存一程序代码,其中当所述处理器执行所述程序代码时,会执行以下步骤:当接收到来自所述服务器外的一操作请求时,在处理所述操作请求的一工作者(worker)的一有效身份标识符设为一预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述有效身份标识符设为一特定身份标识符,并通过具有所述特定身份标识符的所述工作者来执行所述操作请求,其中所述特定身份标识符具有执行所述操作请求的权限;以及当执行所述操作请求之后,将所述有效身份标识符重新设回所述预设身份标识符。
根据本发明另一实施例,是公开一种切换执行身份的方法,其中所述方法是应用在一服务器中,且所述方法包括有:当接收到来自所述服务器外的一操作请求时,在处理所述操作请求的一工作者(worker)的一有效身份标识符设为一预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述有效身份标识符设为一特定身份标识符,并通过具有所述特定身份标识符的所述工作者来执行所述操作请求,其中所述特定身份标识符具有执行所述操作请求的权限;以及当执行所述操作请求之后,将所述有效身份标识符重新设回所述预设身份标识符。
附图说明
图1为依据本发明一实施例的服务器的架构示意图。
图2为依据本发明一实施例的服务器的操作流程图。
其中,附图标记说明如下:
100 服务器
102 网络线
110 处理器
120 储存单元
122 程序代码
200~222 步骤
具体实施方式
请参考图1,图1为依据本发明一实施例的服务器100的架构示意图。如图1所示,服务器100包括有一处理器110以及一储存单元120,其中储存单元120包括一程序代码122,且程序代码122可包括一***应用程序的至少一部分(例如一部分或全部),但这只是为了说明的目的而已,并非对本发明的限制。其中,上述的***应用程序可包括但不限于网页服务器软件(诸如Apache HTTPd服务器软件)、操作***软件(诸如网页型操作***软件)、档案管理应用程序。这只是为了说明的目的而已,并非对本发明的限制。此外,服务器100通过一网络线102连接到网络,以与外部的电子装置进行数据的传送。在本实施例中,服务器100可为一多功能网络附加储存服务器,其可通过上述的***应用程序提供各种***服务予用户。例如:服务器100可通过上述的档案管理应用程序接收来自用户端所传送来的一操作请求,以进行档案的上传或下载等***服务;又例如:服务器100可通过上述的网页服务器软件接收来自用户端所传送来的一网络地址(Uniform Resource Locator,URL),也就是接收来自使用者端的一超文本传输协议(HyperText Transfer Protocol,HTTP)请求,并对所述网络地址进行处理,以提供HTTP回复给使用者端;然而,本发明并不以此为限,服务器100也可包括其他的服务器功能。
具体实施时,处理器110执行程序代码122的***应用程序时,是指派至少一工作者(worker)执行所述***应用程序以及处理来自所述服务器100外的涉及所述***应用程序的操作请求。其中,所述***应用程序的一配置文件中设定有上述的至少一工作者于执行所述***应用程序时的执行身份及/或执行群组,且所述执行身份与所述执行群组分别对应于一有效身份标识符(effective user identifier,EUID)与一有效群组标识符(effective group identifier,EGID)。处理器110可通过设定上述的至少一工作者的有效身份标识符与有效群组标识符,以指定各工作者对应的操作权限。由于本领域技术人员应能了解有效身份标识符与有效群组标识符的意义及其他操作,故细节不再赘述。
一般而言,上述的有效身份标识符包括根身份标识符、用户身份标识符与服务专用身份标识符,其中根身份标识符具有最高***管理权限;用户身份标识符对应于一用户,用户身份标识符的权限是对应于服务器100的***管理员设定予所述使用者的权限;服务专用身份标识符是对应于一***应用程序,且具有所述***应用程序所需的操作权限。此外,上述的配置文件中所设定的执行身份可包括根身份、用户身份与服务专用身份,且根身份是对应于上述的根身份标识符、用户身份是对应于上述的用户身份标识符、服务专用身份是对应于上述的服务专用身份标识符。举例而言,上述的根身份、用户身份、服务专用身份可分别为:”root”、”ken”与”http”;而根身份标识符、用户身份标识符与服务专用身份标识符可分别为:0、2与3。这只是为了说明的目的而已,并非对本发明的限制。其中,上述的根身份也可称为***管理员身份。
相似地,上述的有效群组标识符包括根群组标识符、用户群组标识符与服务专用群组标识符,其中根群组标识符具有最高***管理权限;用户群组标识符对应于一用户群组,用户群组标识符的权限是对应于服务器100的***管理员设定予所述使用者群组的权限;服务专用群组标识符是对应于一***应用程序,且具有所述***应用程序所需的操作权限。此外,上述的配置文件中所设定的执行群组可包括根群组、用户群组与服务专用群组,且根群组是对应于上述的根群组标识符、用户群组是对应于上述的用户群组标识符、服务专用群组是对应于上述的服务专用群组标识符。举例而言,上述的根群组、用户群组、服务专用群组可分别为:”root”、”ken”与”http”;而根群组标识符、用户群组标识符与服务专用群组标识符可分别设定为0、2与3。这只是为了说明的目的而已,并非对本发明的限制。其中,上述的根群组也可称为***管理员群组。
于此实施例中,上述的有效身份标识符与有效群组标识符更包括一预设身份标识符以及一预设群组标识符,上述的配置文件中所设定的执行身份与执行群组更包括一预设身份以及一预设群组,且所述预设身份是对应于所述预设身份标识符,所述预设群组是对应于所述预设群组标识符。举例而言,上述的预设身份与预设群组可分别为:”system”与”system”;而预设身份标识符与预设群组标识符可分别设定为1与1。这只是为了说明的目的而已,并非对本发明的限制。
请参考图2,图2为依据本发明一实施例的服务器100的操作流程图,在图2所示的例子中,是以Apache HTTPd服务器软件作为上述的***应用程序的一例来进行说明,然而,本发明并不以此为限。如图2所示,在步骤200中,当处理器110执行程序代码122,以开启或是重新启动Apache HTTPd服务器软件时,流程进入步骤202。在步骤202中,处理器110进行认证程序,以根据Apache HTTPd服务器软件的一配置文件的设定来判断负责处理ApacheHTTPd服务器软件的操作请求的工作者是否可以提升权限。以ApacheHTTPd服务器软件为例,若是配置文件的执行身份为上述的预设身份,则处理器110便判断所述工作者可以提升权限,流程进入步骤210;反之,若是配置文件的执行身份为服务专用身份,则处理器110便判断所述工作者不可以提升权限,流程进入步骤220。
举例而言,在Apache HTTPd服务器软件的配置文件“httpd.conf”中的执行身份具有以下的设定:User system,则处理器110便判断负责处理Apache HTTPd服务器软件的操作请求的工作者可以提升权限,流程进入步骤210;反之,若是在配置文件“httpd.conf”中的执行身份具有以下的设定:Userhttp,则处理器110便判断负责处理Apache HTTPd服务器软件的操作请求的工作者不可以提升权限,流程进入步骤220。其中system为上述的预设身份的一例,http为上述的服务专用身份的一例,这只是为了说明的目的而已,并非对本发明的限制。
在步骤210中,处理器110执行一设定有效用户模块来将上述的工作者(worker)的执行身份设为上述的预设身份。也就是说,处理器110可将所述工作者的有效身份标识符设为上述的预设身份标识符(例如,EUID=1)。顺代一提,工作者用来处理一使用者的操作请求,也就是工作者接收来自使用者的一操作请求,若是所述操作请求需要通过共通网关接口来进行处理,则工作者会将所述操作请求传送给共通网关接口,之后由共通网关接口接收到回传数据后,再转给使用者端。此外,由于本领域技术人员应能了解在Apache HTTPd服务器软件中涉及“工作者”的意义及其他操作,故细节不再赘述。
在步骤212中,负责处理Apache HTTPd服务器软件的操作请求的工作者已设定为预设身份,此默认身份并非***管理员身份或用户的用户身份,所述工作者的权限是受限的。此外,自步骤212开始,服务器100可以开始接收来自外部的使用者的操作请求。
当服务器100接收到来自外部的一操作请求时,若是处理所述操作请求的工作者的预设身份标识符不具有所述操作请求的权限,则流程进入步骤214的认证程序;反之,若是处理所述操作请求的工作者的预设身份标识符具有所述操作请求的权限,则工作者可直接使用所述预设身份来执行所述操作请求,并将处理结果回传给外部的使用者。
在步骤214中,处理器110再次检查工作者目前的执行身份,若是符合可提升权限的设定(例如上述的User system设定),则呼叫设定有效用户模块,将所述工作者的有效身份标识符设为上述的特定身份标识符(例如,EUID=0)。于此实施例中,特定身份标识符可为具有所述使用者的操作请求的权限的标识符。例如,所述特定身份标识符可为根身份标识符,且所述根身份标识符具有最高***管理权限。于其他实施例中,上述的特定身份标识符可为用户身份标识符,且所述用户身份标识符对应于上述的用户,以及所述用户特定身份标识符具有使用者的操作请求的权限。
举例而言,所述根身份标识符与所述用户身份标识符可分别设定于所述工作者的一暂存身份标识符(saved set-user-id,SUID)与一真实身份标识符(real user id,RUID)。设定有效用户模块可选择性地依据暂存身份标识符将有效身份标识符设为根身份标识符,或者依据真实身份标识符将有效身份标识符设为用户身份标识符。其中,当设定有效用户模块依据暂存身份标识符将工作者的有效身份标识符设为根身份标识符后,可将暂存身份标识符设为预设身份标识符。这只是为了说明的目的而已,并非对本发明的限制。
在步骤216中,处理器110是通过具有所述特定身份标识符的所述工作者来执行所述操作请求。由于所述特定身份标识符可为根身份标识符,所述根身份标识符具有所述操作请求的权限。因此,所述工作者具有权限来执行原本无法执行的操作,例如下载或上传档案,或是其他涉及***服务的操作,故在步骤216中工作者便可执行来自外部的所述操作请求,并回传处理结果给外部的使用者。于一实施例中,上述的特定身份标识符可为用户身份标识符,且所述用户身份标识符也具有所述操作请求的权限。因此,处理器110可通过具有所述用户身份标识符的所述工作者来执行所述操作请求。
在步骤218中,当执行所述操作请求之后,处理器110再次呼叫设定有效用户模块来将工作者的执行身份重新设回所述预设身份,也就是将工作者的有效身份标识符重新设回上述的预设身份标识符,以降低工作者的权限。
另一方面,在步骤220中,处理器110呼叫设定用户模块将上述的工作者的执行身份设为上述的服务专用身份,也就是将所述工作者的有效身份标识符设为上述的服务专用身份标识符。其中所述服务专用身份标识符是对应于上述的***应用程序(于此实施例中为Apache HTTPd服务器软件),且具有所述服务专用身份标识符的所述工作者无法提升权限。换言之,所述工作者的有效身份标识符无法更改为根身份标识符或用户身份标识符等权限较高的标识符。
举例而言,于所述根身份标识符与所述用户身份标识符是分别设定于所述工作者的暂存身份标识符与真实身份标识符的情况下,设定用户模块将工作者的有效身份标识符设为上述的服务专用身份标识符时,可一并将所述工作者的暂存身份标识符与真实身份标识符一并设为所述服务专用身份标识符。因此,设定用户模块之后无法再次依据暂存身份标识符将有效身份标识符设为根身份标识符,或者依据真实身份标识符将有效身份标识符设为用户身份标识符。这只是为了说明的目的而已,并非对本发明的限制。
通过上述图2的操作流程,若负责处理***应用程序的操作请求的工作者经判断为可以提升权限,则只有在有需要提升权限来执行操作请求时,才会暂时地从默认身份提升权限至***管理员身份或用户身份,而在操作请求完成之后,工作者的执行身份便会再次回到预设身份。另一方面,若负责处理***应用程序的操作请求的工作者经判断为不可提升权限,则将所述工作者的执行身份设为服务专用身份,且具有所述服务专用身份的所述工作者无法提升权限。因此,依据上述的各个实施例,除了可以有效地处理操作请求之外,更可以全面性地提升***安全性。
请继续请参考图2,以下将依据图2说明本发明的另一实施例的服务器100的操作流程。如图2所示,在步骤200中,当处理器110执行程序代码122,以开启或是重新启动上述的Apache HTTPd服务器软件时,流程进入步骤202。在步骤202中,处理器110进行认证程序,以根据Apache HTTPd服务器软件的配置文件的设定来判断负责处理Apache HTTPd服务器软件的操作请求的工作者是否可以提升权限。以Apache HTTPd服务器软件为例,若是配置文件中的执行身份与执行群组分别为上述的预设身份与预设群组,则处理器110便判断所述工作者可以提升权限,流程进入步骤210;反之,若是配置文件中的执行身份与执行群组分别为服务专用身份与服务专用群组,则处理器110便判断所述工作者不可以提升权限,流程进入步骤220。
举例而言,在Apache HTTPd服务器软件的配置文件“httpd.conf”中的执行身份与执行群组具有以下的设定:User system,Group system,则处理器110便判断负责处理Apache HTTPd服务器软件的操作请求的工作者可以提升权限,流程进入步骤210;反之,若是在配置文件“httpd.conf”中的执行身份与执行群组具有以下的设定:User http,Grouphttp,则处理器110便判断负责处理Apache HTTPd服务器软件的操作请求的工作者不可以提升权限,流程进入步骤220。其中system为上述的预设身份与预设群组的一例,http为上述的服务专用身份与服务专用群组的一例,这只是为了说明的目的而已,并非对本发明的限制。
在步骤210中,处理器110执行一设定有效用户模块来将上述的工作者(worker)的执行身份设为上述的预设身份。也就是说,处理器110可将所述工作者的有效身份标识符设为上述的预设身份标识符(也就是说,EUID=1)。此外,处理器110更执行一设定有效群组模块来将上述的工作者(worker)的执行群组设为上述的预设群组。也就是说,处理器110可将所述工作者的有效群组标识符设为上述的预设群组标识符(也就是说,EGID=1)。
在步骤212中,负责处理Apache HTTPd服务器软件的操作请求的工作者已设定为预设身份与预设群组,其中此默认身份并非***管理员身份或用户的用户身份,且此默认群组并非***管理员群组或使用者群组,所述工作者的权限是受限的。此外,自步骤212开始,服务器100可以开始接收来自外部的使用者的操作请求。
当服务器100接收到来自外部的一操作请求时,若是处理所述操作请求的工作者的预设身份标识符与预设群组标识符不具有所述操作请求的权限,则流程进入步骤214的认证程序;反之,若是处理所述操作请求的工作者的预设身份标识符与预设群组标识符具有所述操作请求的权限,则工作者可直接使用所述预设身份与预设群组来执行所述操作请求,并将处理结果回传给外部的使用者。
在步骤214中,处理器110再次检查工作者目前的执行身份与执行群组,若是符合可提升权限的设定(例如上述的User system、Group system设定),则呼叫设定有效用户模块,将所述工作者的有效身份标识符设为上述的特定身份标识符(例如,EUID=0)同时,处理器110更执行设定有效群组模块,将所述工作者的有效群组标识符设为上述的特定群组标识符(例如,EGID=0)。于此实施例中,上述的特定身份标识符与特定群组标识符可为具有所述使用者的操作请求的权限的标识符,例如所述特定身份标识符与所述特定群组标识符可分别为根身份标识符与根群组标识符,且所述根身份标识符与所述根群组标识符具有最高***管理权限。于其他实施例中,上述的特定身份标识符与特定群组标识符可分别为用户身份标识符与用户群组标识符,且所述用户身份标识符对应于上述的用户,所述用户群组标识符对应于上述的使用者群组,以及所述用户身份标识符与所述用户群组标识符是具有使用者的操作请求的权限。
举例而言,所述根身份标识符与所述用户身份标识符可分别设定于所述工作者的暂存身份标识符与真实身份标识符,所述根群组标识符与所述用户群组标识符可分别设定于所述工作者的一暂存群组标识符(saved set-group-id,SGID)与一真实群组标识符(real group id,RGID)。设定有效用户模块可选择性地依据暂存身份标识符将有效身份标识符设为根身份标识符,或者依据真实身份标识符将有效身份标识符设为用户身份标识符。其中,当设定有效用户模块依据暂存身份标识符将工作者的有效身份标识符设为根身份标识符后,可将暂存身份标识符设为预设身份标识符。设定有效群组模块可选择性地依据暂存群组标识符将有效群组标识符设为根群组标识符,或者依据真实群组标识符将有效群组标识符设为用户群组标识符。其中,当设定有效群组模块依据暂存群组标识符将工作者的有效群组标识符设为根群组标识符后,可将暂存群组标识符设为预设群组标识符。这只是为了说明的目的而已,并非对本发明的限制。
在步骤216中,处理器110是通过具有所述特定身份标识符与所述特定群组标识符的所述工作者来执行所述操作请求。由于此特定身份标识符与特定群组标识符可分别为根身份标识符与根群组标识符,且根身份标识符与根群组标识符具有所述操作请求的权限。因此,所述工作者具有权限来执行原本无法执行的操作,例如下载或上传档案,或是其他涉及***服务的操作,故在步骤216中工作者便可执行来自外部的所述操作请求,并回传处理结果给外部的使用者。于一实施例中,特定身份标识符与特定群组标识符可分别为上述的用户身份标识符与用户群组标识符,且所述用户身份标识符与用户群组标识符也具有所述操作请求的权限。因此,处理器110可通过具有所述用户身份标识符与所述用户群组标识符的所述工作者来执行所述操作请求。
在步骤218中,当执行所述操作请求之后,处理器110再次呼叫设定有效用户模块来将工作者的执行身份重新设回所述预设身份,以及呼叫设定有效群组模块来将工作者的执行群组重新设回所述预设群组,以降低工作者的操作权限。
另一方面,在步骤220中,处理器110呼叫设定用户模块将上述的工作者的执行身份设为上述的服务专用身份,也就是将所述工作者的有效身份标识符设为上述的服务专用身份标识符。同时,处理器110更呼叫设定群组模块将上述的工作者的执行群组设为上述的服务专用群组,也就是将所述工作者的有效群组标识符设为上述的服务专用群组标识符。其中所述服务专用身份标识符与服务专用群组标识符是分别对应于上述的***应用程序(于此实施例中为Apache HTTPd服务器软件),且具有所述服务专用身份标识符与服务专用群组标识符的所述工作者无法提升权限。换言之,所述工作者的有效身份标识符无法更改为根身份标识符或用户身份标识符等权限较高的标识符,且所述工作者的有效群组标识符无法更改为根群组标识符或用户群组标识符等权限较高的标识符。
举例而言,于所述根群组标识符与所述用户群组标识符是分别设定于所述工作者的暂存群组标识符与真实群组标识符的情况下,设定用户模块将工作者的有效群组标识符设为上述的服务专用群组标识符时,可一并将所述工作者的暂存群组标识符与真实群组标识符一并设为所述服务专用群组标识符。因此,设定用户模块之后无法再次依据暂存群组标识符将有效群组标识符设为根群组标识符,或者依据真实群组标识符将有效群组标识符设为用户群组标识符。这只是为了说明的目的而已,并非对本发明的限制。
实作上,上述的设定用户模块可使用类Unix(Unix-like)操作***的setuid()软件模块实施;上述的设定有效用户模块可使用类Unix(Unix-like)操作***的seteuid软件模块实施;上述的设定群组模块可使用类Unix(Unix-like)操作***的setgid()软件模块实施;上述的设定有效群组模块可使用类Unix(Unix-like)操作***的setegid软件模块实施。这只是为了说明的目的而已,并非对本发明的限制。
简要归纳本发明,在本发明的切换执行身份的方法及相关的服务器,其可以在有需要的时候才会暂时地提升权限,之后等到操作请求结束后便可以回到原本的预设身份,因此,本发明除了可以有效地处理操作请求之外,更可以全面性地提升***安全性。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种服务器,包括一处理器以及一储存单元,所述储存单元储存一程序代码,其特征在于,当所述处理器执行所述程序代码时,会执行以下步骤:
当接收到来自所述服务器外的一操作请求时,在处理所述操作请求的一工作者的一有效身份标识符设为一预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述有效身份标识符设为一特定身份标识符,并通过具有所述特定身份标识符的所述工作者来执行所述操作请求,其中所述特定身份标识符具有执行所述操作请求的权限;以及
当执行所述操作请求之后,将所述有效身份标识符重新设回所述预设身份标识符;
所述工作者是对应于一***应用程序,而当所述处理器执行所述程序代码时,还执行以下步骤:
当所述服务器开启或是重新启动所述***应用程序时,根据所述***应用程序的一配置文件来判断所述工作者是否可以提升权限;
当所述工作者可以提升权限时,将所述有效身份标识符设为所述预设身份标识符;以及
当所述工作者不可以提升权限时,将所述有效身份标识符设为一服务专用身份标识符,其中所述服务专用身份标识符是对应于所述***应用程序,且具有所述服务专用身份标识符的所述工作者无法提升权限。
2.如权利要求1所述的服务器,其特征在于,所述特定身份标识符为一根身份标识符,且所述根身份标识符具有最高***管理权限。
3.如权利要求1所述的服务器,其特征在于,所述特定身份标识符为一用户身份标识符,且所述用户身份标识符对应于一使用者以及具有所述操作请求的权限。
4.如权利要求1所述的服务器,其特征在于,当所述处理器执行所述程序代码时,执行当所述服务器开启或是重新启动所述***应用程序时,根据所述***应用程序的所述配置文件来判断所述工作者是否可以提升权限的步骤更包括以下步骤:
当所述工作者可以提升权限时,将所述工作者的一有效群组标识符设为一预设群组标识符,其中所述特定群组标识符具有执行所述操作请求的权限;以及
当所述工作者不可以提升权限时,将所述有效群组标识符设为一服务专用群组标识符,其中所述服务专用群组标识符是对应于所述***应用程序,且具有所述服务专用群组标识符的所述工作者无法提升权限。
5.如权利要求1所述的服务器,其特征在于,当所述处理器执行所述程序代码时,执行当接收到来自所述服务器外的所述操作请求时,在处理所述操作请求的所述工作者的所述有效身份标识符设为所述预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述有效身份标识符设为所述特定身份标识符的步骤更包括,在处理所述操作请求的所述工作者的一有效群组标识符设为一预设群组标识符的情况下,若是所述预设群组标识符不具有所述操作请求的权限,则将所述有效群组标识符设为一特定群组标识符,且所述处理器更执行以下步骤:
通过具有所述特定群组标识符的所述工作者来执行所述操作请求,其中所述特定群组标识符具有执行所述操作请求的权限;以及
当执行所述操作请求之后,将所述工作者的所述有效群组标识符重新设回所述预设群组标识符。
6.如权利要求5所述的服务器,其特征在于,所述特定群组标识符为一根群组标识符,其中所述根群组标识符具有最高***管理权限。
7.如权利要求5所述的服务器,其特征在于,所述特定群组标识符为一用户群组标识符,且所述用户群组标识符对应于一使用者以及具有所述操作请求的权限。
8.一种切换执行身份的方法,所述方法是应用在一服务器中,其特征在于包括有:
当接收到来自所述服务器外的一操作请求时,在处理所述操作请求的一工作者的一有效身份标识符设为一预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述身份标识符设为一特定身份标识符,并通过具有所述特定身份标识符的所述工作者来执行所述操作请求,其中所述特定身份标识符具有执行所述操作请求的权限;以及
当执行所述操作请求之后,将所述有效身份标识符重新设回所述预设身份标识符;
所述工作者是对应于一***应用程序,且所述方法还包括以下步骤:
当所述服务器开启或是重新启动所述***应用程序时,根据所述***应用程序的一配置文件来判断所述工作者是否可以提升权限;
当所述工作者可以提升权限时,将所述有效身份标识符设为所述预设身份标识符;以及
当所述工作者不可以提升权限时,将所述有效身份标识符设为一服务专用身份标识符,其中所述服务专用身份标识符是对应于所述***应用程序,且具有所述服务专用身份标识符的所述工作者无法提升权限。
9.如权利要求8所述的方法,其特征在于,所述特定身份标识符为一根身份标识符,其中所述根身份标识符具有最高***管理权限。
10.如权利要求8所述的方法,其特征在于,所述特定身份标识符为一用户身份标识符,且所述用户身份标识符对应于一使用者以及具有所述操作请求的权限。
11.如权利要求8所述的方法,其特征在于,当所述服务器开启或是重新启动所述***应用程序时,根据所述***应用程序的所述配置文件来判断所述工作者是否可以提升权限的步骤更包括以下步骤:
当所述工作者可以提升权限时,将所述工作者的一有效群组标识符设为一预设群组标识符,其中所述特定群组标识符具有执行所述操作请求的权限;以及
当所述工作者不可以提升权限时,将所述有效群组标识符设为一服务专用群组标识符,其中所述服务专用群组标识符是对应于所述***应用程序,且具有所述服务专用群组标识符的所述工作者无法提升权限。
12.如权利要求8所述的方法,其特征在于,当接收到来自所述服务器外的所述操作请求时,在处理所述操作请求的所述工作者的所述有效身份标识符设为所述预设身份标识符的情况下,若是所述预设身份标识符不具有所述操作请求的权限,则将所述有效身份标识符设为所述特定身份标识符的步骤更包括,在处理所述操作请求的所述工作者的一有效群组标识符设为一预设群组标识符的情况下,若是所述预设群组标识符不具有所述操作请求的权限,则将所述有效群组标识符设为一特定群组标识符,且所述方法更包括以下步骤:
通过具有所述特定群组标识符的所述工作者来执行所述操作请求,其中所述特定群组标识符具有执行所述操作请求的权限;以及
当执行所述操作请求之后,将所述工作者的所述有效群组标识符重新设回所述预设群组标识符。
13.如权利要求12所述的方法,其特征在于,所述特定群组标识符为一根群组标识符,其中所述根群组标识符具有最高***管理权限。
14.如权利要求12所述的方法,其特征在于,所述特定群组标识符为一用户群组标识符,且所述用户群组标识符对应于一使用者以及具有所述操作请求的权限。
CN201610003942.4A 2015-04-01 2016-01-04 一种服务器以及切换执行身份的方法 Expired - Fee Related CN106059989B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW104110712A TWI621961B (zh) 2015-04-01 2015-04-01 切換執行身分的方法及相關的伺服器
TW104110712 2015-04-01

Publications (2)

Publication Number Publication Date
CN106059989A CN106059989A (zh) 2016-10-26
CN106059989B true CN106059989B (zh) 2019-04-02

Family

ID=55589696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610003942.4A Expired - Fee Related CN106059989B (zh) 2015-04-01 2016-01-04 一种服务器以及切换执行身份的方法

Country Status (4)

Country Link
US (1) US9942241B2 (zh)
EP (1) EP3079096A1 (zh)
CN (1) CN106059989B (zh)
TW (1) TWI621961B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111656376B (zh) * 2017-11-30 2023-10-31 建筑开发技术公司 信息处理装置、信息处理方法、信息处理***以及程序

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308275B1 (en) * 1998-07-10 2001-10-23 At Home Corporation Web host providing for secure execution of CGI programs and method of doing the same
CN102567675A (zh) * 2012-02-15 2012-07-11 合一网络技术(北京)有限公司 一种业务***下的用户权限管理方法和***
CN102769602A (zh) * 2011-05-03 2012-11-07 ***通信集团山东有限公司 一种临时权限控制方法、***及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020078365A1 (en) * 2000-12-15 2002-06-20 International Business Machines Corporation Method for securely enabling an application to impersonate another user in an external authorization manager
US7617530B2 (en) * 2005-04-22 2009-11-10 Microsoft Corporation Rights elevator
US7702912B2 (en) * 2005-05-19 2010-04-20 Novell, Inc. Secure systems management
TWI389534B (zh) 2007-09-26 2013-03-11 Via Tech Inc 單一登錄系統與方法及其電腦可讀取媒體
TW200941996A (en) 2008-03-20 2009-10-01 Univ Chaoyang Technology Using mobile device to construct a secure E-DRM method
TWI456427B (zh) 2012-12-12 2014-10-11 Inst Information Industry 進行授權管理之主要管理裝置、代理管理裝置、電子裝置及其授權管理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6308275B1 (en) * 1998-07-10 2001-10-23 At Home Corporation Web host providing for secure execution of CGI programs and method of doing the same
CN102769602A (zh) * 2011-05-03 2012-11-07 ***通信集团山东有限公司 一种临时权限控制方法、***及装置
CN102567675A (zh) * 2012-02-15 2012-07-11 合一网络技术(北京)有限公司 一种业务***下的用户权限管理方法和***

Also Published As

Publication number Publication date
US20160294841A1 (en) 2016-10-06
TW201636890A (zh) 2016-10-16
EP3079096A1 (en) 2016-10-12
US9942241B2 (en) 2018-04-10
TWI621961B (zh) 2018-04-21
CN106059989A (zh) 2016-10-26

Similar Documents

Publication Publication Date Title
US8793759B2 (en) Authentication collaboration system and ID provider device
CN108600376B (zh) 基于LoRa的数据传输方法、装置、LoRa网关、***及存储介质
CN104811488A (zh) 基于负载均衡设备的会话保持方法及***和负载均衡设备
US10476733B2 (en) Single sign-on system and single sign-on method
US20060233160A1 (en) Call system, proxy dial server apparatus and proxy dial method for use therewith, and program thereof
KR100690290B1 (ko) 애플리케이션 서비스에 액세스하는 방법, 애플리케이션서비스에 대한 액세스를 제공하는 장치 및 지속성 유지 장치
CN103986741A (zh) 云数据***、云数据中心及其资源管理方法
EP1788778A1 (en) Network system, proxy server, session management method, and respective program
CN109246078B (zh) 一种数据交互方法及服务器
EP2922284A1 (en) Conference access method and device
CN104580211A (zh) 一种基于soa架构的侵入式***
CN105812481A (zh) 一种超文本传输协议请求识别***及方法
CN109947844B (zh) 一种基于医疗区块链的医疗数据管理***
EP2808820A1 (en) Method of changing password in an industrial automation and control system
CN106059989B (zh) 一种服务器以及切换执行身份的方法
CN110998577A (zh) 安全诊断装置以及安全诊断方法
WO2006065004A1 (en) System and method for performing service logout in single-sign-on service using identity
CN108011870B (zh) 一种软件远程在线升级信息自动识别管理方法
CN105306491A (zh) 注册方法和注册***
US10530765B2 (en) Securing connections to unsecure internet resources
CN107634969B (zh) 数据交互方法及装置
CN104852997B (zh) 对网络地址的处理方法及服务器与计算机可读储存介质
EP3648429A1 (en) Method and system for providing access to data stored in a security data zone of a cloud platform
CN113691520B (zh) 获取流媒体信息的方法、装置、存储介质及电子装置
CN109951473B (zh) 功能触发方法、***、电子设备和计算机可读存储介质

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190402

Termination date: 20210104