The present invention relates generally to the field of change management and more specifically to authorizing an access request to complete a change activity.
In the field of information technology (IT), change management generally refers to a system or process for managing change activities to the IT environment. During day to day operations in a data center there are change activities to modify software or hardware components in an equipment cabinet residing in a data center. These changes must be carefully coordinated with system owners and data center owners via a change management process so impact to business operations is minimized or eliminated.
When human resources are relied upon to assess the impact of proposed changes to often intricate information technology infrastructures, even well planned and well organized changes can fail. In fact, many leading information technology analysts have indicated that failed changes are often a major cause of system outages and errors, which may result in a business suffering negative consequences such as financial loss, project delays, customer dissatisfaction, etc.
Change management procedures involve manually creating change requests (uniquely identified with a change request identification number) that specifies, among other things, which device will be undergoing change activity, the nature of the change, the date and time the change activity is scheduled to occur, as well as the individuals that will be performing the change. A change request will have from one to many “approvers” that have a vested interest in the change activity, either via an end-user, system owner, or interested party role. However, in the quest for expediency, or simply through negligence, the change management process is at times not followed, and activities are performed without required approvals. This often occurs during periods when this activity could be performed and undetected. This is referred to as an “unauthorized change.”
A more efficient change management process may reduce costs and unauthorized changes and improve productivity and system up-time.
Aspects of an embodiment of the present invention disclose a method, computer program product, and computing system for controlling physical access to a computing device. A first access request to a room containing the computing device is received. In response, a processor determines that the first access request is valid based on the room and the date and time of the first access request and unlocks a door to the room to permit entry to the room. Subsequently, a second access request to a cabinet that is located in the room and contains the computing device is received. In response, a processor determines that the second access request is valid based on the cabinet and the date and time of the second access request and unlocks the cabinet to permit access to the computing device.
The present invention will now be described in detail with reference to the Figures.
In the depicted embodiment, computing system 10 includes computing device 30, computing device 40, and server computer 50 interconnected over network 20. Network 20 may be a local area network (LAN), a wide area network (WAN) such as the Internet, a combination of the two or any combination of connections and protocols that will support communications between computing device 30, computing device 40, and server computer 50 in accordance with embodiments of the invention. Network 20 may include wired, wireless, or fiber optic connections. Computing system 10 may include additional server computers, client computers, or other devices not shown.
Server computer 50 may be a management server, web server, or any other electronic device or computing system capable of receiving and sending data. In other embodiments, server computer 50 may represent a server computing system utilizing multiple computers as a server system, such as in a cloud computing environment. Server computer 50 contains identification authorization database 80, change authorization database 90, and access request authorization program 100.
Identification authorization database 80 is a database that may be written and read by access request authorization program 100. For example identification authorization database 80 may be a database such as an IBM® DB2® database or an Oracle® database. Identification authorization database 80 is located on computer server 50. In another embodiment, identification authorization database 80 may be located on another system or another computing device, provided that identification authorization database 80 is accessible to access request authorization program 100.
Identification authorization database 80 contains identification data for all users who have access to a facility (e.g., data center). In one embodiment, identification data may be fingerprint data of a user, an identification number associated with a user, a badge number associated with a user, or any other type of data that is uniquely associated with a user.
Change authorization database 90 is a database that may be written and read by access request authorization program 100. For example change authorization database 90 may be a database such as an IBM® DB2® database or an Oracle® database. Change authorization database 90 is located on server computer 50. In another embodiment, change authorization database 90 may be located on another system or another computing device, provided that change authorization database 90 is accessible to access request authorization program 100.
Change authorization database 90 contains at least one change request number and conditions associated with the at least one change request number. In one embodiment, conditions associated with the at least one change request number may be the equipment to undergo a change activity, the facility containing the equipment, a range of the date and time the change activity is scheduled to occur, the individual who will perform the change activity, a combination of these requirements, or any combination of possible requirements.
Computing devices 30 and 40 may be badge readers (magnetic stripe or radio-frequency identification (RFID)) integrated with keypads; fingerprint scanners integrated with keypads; desktop computers integrated with badge readers, iris scanners, or fingerprint scanners; or laptop computers integrated with badge readers, iris scanners, or fingerprint scanners. In general, computing devices 30 and 40 may be any electronic device or computing system capable of accepting user input and communicating with server computer 50 over network 20. For example, a user input may comprise data such as identification data (e.g., fingerprint data of a user, an identification number associated with a user, a badge number associated with a user, etc.), a number entered on a keypad or touch screen, or any other information that may be obtained by computing devices 30 and 40. In one embodiment, computing devices 30 and 40 control access to associated access points (e.g., a facility access door and an equipment access lock, respectively).
User interfaces 60 and 70 execute on computing devices 30 and 40, respectively. User interfaces (UI) 60 and 70 operate to visualize content, such as menus and icons, and to allow a user to interact with an application accessible to computing devices 30 and 40, respectively. In one embodiment, UI 60 and 70 comprise interfaces to access programs 65 and 75, respectively. For example, UI 60 may display data received from access program 65 and send user input data to access program 65. UI 70 may display data received from access program 75 and send user input data to access program 75. In other embodiments, UI 60 and UI 70 may comprise one or more interfaces such as, an operating system interface and/or application interfaces.
Access program 65 and access program 75 are standard access point security programs for controlling access to an access point such as software for a badge reader device. In general, access programs 65 and 75 may be any program that can receive user input data and send and receive data over network 20.
A change activity to modify software or hardware components in an equipment cabinet residing in a data center may require a change request. For example, the software or hardware components may reside in a locked equipment cabinet located within the data center. A change request record 95 is generated through the coordination of system owners and data center owners. The change request is uniquely identified by a change request number, and specifies conditions associated with the change request number that must be met, such as which equipment (for example, a computer) will undergo the change activity, the facility/computer room, containing the equipment, a range of the date and time the change activity is scheduled to occur, and the individual or set of individuals who will perform the change. The change request is approved by one or more individuals who have a vested interest in the change activity, such as an end-user, a system owner, or other interested party role. All individuals listed as approvers must agree to all of the terms listed in the change request before it is approved and work can proceed.
Once approved, access request authorization program 100 can read the change request record to determine if a computer service person is authorized to access the computer room and computer cabinet at the date and time that the computer service person attempts to unlock the computer room and cabinet. In one embodiment, access request authorization program 100 determines if identification data of a user received from access program 65, over network 20, matches identification data in identification authorization database 80. Access request authorization program 100 also determines if the conditions associated with a change request number received from access program 65 are met. If access request authorization program 100 determines that the identification data of the user matches identification data in identification authorization database 80 and access request authorization program 100 determines that the conditions associated with the change request number are met, access request authorization program 100 sends an instruction to access program 65 to approve facility access.
In one embodiment, access request authorization program 100 determines if identification data of a user received from access program 75, over network 20, matches identification data in identification authorization database 80. Access request authorization program 100 also determines if the conditions associated with the change request number received from access program 75 are met. If access request authorization program 100 determines that the identification data of the user matches identification data in identification authorization database 80 and access request authorization program 100 determines that the conditions associated with the change request number are met, access request authorization program 100 sends an instruction to access program 75 to approve equipment access.
In one embodiment, access request authorization program 100 resides on server computer 50. In another embodiment, access request authorization program 100 may reside on another server or another computing device (e.g., computing device 30 and/or 40), provided that access request authorization program 100 as access to identification authorization database 80 and change authorization database 90.
Computing device 30, computing device 40, and server computer 50 each maintain respective internal components 800a, 800b, and 800c, and respective external components 900a, 900b, and 900c. In general, client computer 30, client computer 40, and server computer 50 can be any computing system as described in further detail with respect to
Initially, a user at computing device 30 requests access to a facility containing equipment to undergo a change activity. In one embodiment, the user inputs his or her identification data and enters a change request number using user interface 60 of computing device 30. In another embodiment, the user inputs his or her identification data using user interface 60 of computing device 30 and is prompted by user interface 60 to enter a change request number after access request authorization program 100 determines that the identification data of a user matches identification data in identification authorization database 80. User interface 60 sends the identification data and the change request number to access program 65. Access program 65 sends the identification data associated with the user and the change request number to access request authorization program 100 over network 20.
In step 200, access request authorization program 100 receives a facility access request from access program 65. In one embodiment, access request authorization program 100 receives identification data associated with the user and the change request number from access program 65.
Access request authorization program 100 determines if the facility access request is valid (decision 210). In one embodiment, access request authorization program 100 queries identification authorization database 80 to determine if the identification data associated with the user matches identification data in identification authorization database 80. If access request authorization program 100 determines that the identification data associated with the user does not match identification data in identification authorization database 80 the facility access request is determined to be not valid (decision 210, No branch). In step 260, access request authorization program 100 rejects the access request. In one embodiment, access request authorization program 100 sends an instruction to access program 65 to deny access to the facility. Access request authorization program 100 may also log the rejected access request and the reason for the rejection on change authorization database 90. The logged rejected access request may also include a time stamp indicating when the rejection was made.
If access request authorization program 100 determines that the identification data associated with the user does match identification data in identification authorization database 80, access request authorization program 100 queries change authorization database 90 to retrieve the conditions associated with the change request number. In another embodiment, if the user did not input the change request number along with his or her identification data access request authorization program 100 sends an instruction to access program 65 to prompt the user to provide the change request number.
Access request authorization program 100 determines if the conditions associated with the change request number are met. In one embodiment, the conditions associated with the change request number include a range of the date and time the change activity must occur, a specific individual who must perform the change activity, the equipment to undergo the change activity, and the facility containing the equipment. In one embodiment, when a facility access request is being validated the conditions that need to be met are a range of the date and time the change activity must occur, a specific individual or set of individuals who must perform the change activity, and the facility containing the equipment.
Access request authorization program 100 compares the range of the date and time the change activity must occur to the date and time the facility access request was made by the user to determine if the date and time the facility access request was made falls within the range of date and time the change activity must occur. In one embodiment, the facility access request (e.g., identification data associated with the user and/or the change request number) sent by access program 65 over network 20 is time stamped. In another embodiment, server computer 50 contains an internal clock to determine when the facility access request was received.
Access request authorization program 100 also compares the specific individual who must perform the change activity to the user who is associated with the identification data to determine if the user matches the specific individual or set of individuals who must perform the change activity. In one embodiment, the identification data is associated with a name of a user and access request authorization program 100 determines if the name of the user matches the name of the specific individual who must perform the change activity.
Access request authorization program 100 also compares the facility containing the equipment to undergo the change activity to the facility associated with computing devices 30 to determine if the facility containing the equipment to undergo the change activity matches the facility associated with computing devices 30. In one embodiment, the facility access request (e.g., identification data associated with the user and/or the change request number) sent by access program 65 over network 20 is tagged with metadata indicating the computing device the request came from and/or the facility associated with computing device 30.
If access request authorization program 100 determines that the conditions associated with the change request number are not met the facility access request is determined to be not valid (decision 210, No branch). In step 260, access request authorization program 100 rejects the access request. In one embodiment, access request authorization program 100 sends an instruction to access program 65 to deny access to the facility. Access request authorization program 100 may also log the rejected access request and the reason for the rejection on change authorization database 90. The logged rejected access request may also include a time stamp indicating when the rejection was made.
If access request authorization program 100 determines that the conditions associated with the change request number are met, the facility access request is determined to be valid (decision 210, Yes branch) and access request authorization program 100 proceeds to step 220.
In step 220, access request authorization program 100 approves the facility access request. In one embodiment, access request authorization program 100 sends an instruction over network 20 to access program 65 to grant access to the facility to the user. The user gains physical access to the facility containing the equipment to undergo the change activity. In one embodiment, an equipment access request is required in order to access the cabinet that houses the equipment to undergo the change activity. In another embodiment, an equipment access is not required to access the cabinet that houses the equipment to undergo the change activity. The user at computing device 40 requests access to equipment to undergo a change activity. The process of the user requesting access to the equipment to undergo a change activity is similar to the process described above with respect to the user requesting facility access.
In step 230, access request authorization program 100 receives an equipment access request from access program 75. In one embodiment, access request authorization program 100 receives identification data associated with the user and the change request number from access program 75.
Access request authorization program 100 determines if the equipment access request is valid (decision 240). The process of decision 240 is similar to the described process with respect to decision 210 above. A difference occurs with respect to the conditions associated with the change request. In one embodiment, when a equipment access request is being validated the conditions that need to be met are a range of the date and time the change activity must occur, a specific individual who must perform the change activity, and the equipment to undergo the change activity. The facility containing the equipment to undergo the change activity is not considered in this step.
Access request authorization program 100 compares the equipment to undergo the change activity to the equipment associated with computing devices 40 to determine if the equipment to undergo the change activity matches the equipment associated with computing devices 40. In one embodiment, the facility access request (e.g., identification data associated with the user and/or the change request number) sent by access program 75 over network 20 is tagged with metadata indicating the computing device the request came from and/or the equipment associated with computing device 40.
In step 250, access request authorization program 100 approves the equipment access request. In one embodiment, access request authorization program 100 sends an instruction over network 20 to access program 75 to grant access to the equipment to undergo the change activity to the user.
In another embodiment, after an administrator creates and approves a change request, access request authorization program 100 sends the change request number associated with the change request to access program 65 and access program 75. Access request authorization program 100 also sends conditions associated with the change request number to access program 65 and access program 75. In this embodiment, access programs 65 and 75 have the functionality to perform steps 200 though 250 described generally above.
In yet another embodiment, access request authorization program 100 may perform additional steps similar to steps 200 through 220. Theses steps are performed in response to an additional access request for access to a specific component of the equipment to undergo the change activity. The process is similar to the described process with respect to decision 210 above. A difference occurs with respect to the conditions associated with the change request. In one embodiment, when a specific component access is being validated the conditions that need to be met are a range of the date and time the change activity must occur, a specific individual or set of individuals who must perform the change activity, and the specific component or components of the equipment to undergo the change activity. The facility containing the equipment to undergo the change activity and the equipment to undergo the change activity is not considered in this step as it was previously determined to be an authorized access attempt via steps 200-250. This would provide a third layer of protection. As part of this process, all authentication requests would be logged for audit and security purposes.
After the user enters data center 300, the user requests access to cabinet/housing 330 which houses computing equipment 340. The user requests access to cabinet/housing 330 at access panel 320 using computing device 40. For example, access panel 320 is a metal panel with a hinge on one side and an electronic lock on the opposite side. In another example access panel 320 may be a metal panel on a track that may be moved along the track to open and close access to cabinet/housing 330. In another example the electronic lock may be located on cabinet/housing 330 or at any other location such that the electronic lock may control whether access panel 320 may be opened. The electronic lock is connected to computing device 40 by a dedicated wire. The user inputs his or her identification data and the change request number at computing device 40. Access authorization request program determines whether the request for access to cabinet/housing 330 is valid (step 240 above). If access request authorization program 100 determines that the request for access to cabinet/housing 330 is valid, then access request authorization program 100 sends a signal to computing device 40 to unlock access panel 320 (by electronic control) and allow the user access to cabinet/housing 330 to update computing equipment 340. The signal to unlock access panel 320 is sent from computing device 40 to the electronic lock on access panel 320 over the dedicated wire.
Computing device 30, computing device 40, and server computer 50 include respective sets of internal components 800a,b,c and external components 900a,b,c, illustrated in
Each set of internal components 800a,b,c also includes a R/W drive or interface 832 to read from and write to one or more portable computer-readable storage devices 936 such as a CD-ROM, DVD, memory stick, magnetic tape, magnetic disk, optical disk or semiconductor storage device. User interface 60 and access program 65 (for computing device 30), user interface 70 and access program 75 (for computing device 40), and identification authorization database 80, change authorization database 90, change request record 95, and access request authorization program 100 (for server computer 50) can be stored on one or more of the respective portable computer-readable storage devices 936, read via the respective R/W drive or interface 832 and loaded into the respective hard drive or semiconductor storage device 830.
Each set of internal components 800a,b,c also includes a network adapter or interface 836 such as a TCP/IP adapter card or wireless communication adapter (such as a 4G wireless communication adapter using OFDMA technology). User interface 60 and access program 65 (for computing device 30), user interface 70 and access program 75 (for computing device 40), and identification authorization database 80, change authorization database 90, change request record 95, and access request authorization program 100 (for server computer 50) can be downloaded to the respective computing/processing devices from an external computer or external storage device via a network (for example, the Internet, a local area network or other, wide area network or wireless network) and network adapter or interface 836. From the network adapter or interface 836, the programs are loaded into the respective hard drive or semiconductor storage device 830. The network may comprise copper wires, optical fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers.
Each of the sets of external components 900a,b,c includes a display screen 920, a keyboard or keypad 930, and a computer mouse or touchpad 934. Each of the sets of internal components 800a,b,c also includes device drivers 840 to interface to display screen 920 for imaging, to keyboard or keypad 930, to computer mouse or touchpad 934, and/or to display screen for pressure sensing of alphanumeric character entry and user selections. The device drivers 840, R/W drive or interface 832 and network adapter or interface 836 comprise hardware and software (stored in storage device 830 and/or ROM 824).
The programs can be written in various programming languages (such as Java, C+) including low-level, high-level, object-oriented or non object-oriented languages. Alternatively, the functions of the programs can be implemented in whole or in part by computer circuits and other hardware (not shown).
Based on the foregoing, a computer system, method and program products have been disclosed for authorizing an access request to complete a change activity. However, numerous modifications and substitutions can be made without deviating from the scope of the present invention. Therefore, the present invention has been disclosed by way of example and not limitation.
Number | Date | Country | |
---|---|---|---|
Parent | 13850314 | Mar 2013 | US |
Child | 15155498 | US |