US20030079126A1 - Method and apparatus to facilitate software installation using embedded user credentials - Google Patents

Method and apparatus to facilitate software installation using embedded user credentials Download PDF

Info

Publication number
US20030079126A1
US20030079126A1 US10/027,615 US2761501A US2003079126A1 US 20030079126 A1 US20030079126 A1 US 20030079126A1 US 2761501 A US2761501 A US 2761501A US 2003079126 A1 US2003079126 A1 US 2003079126A1
Authority
US
United States
Prior art keywords
computer
user credentials
software installation
installation package
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US10/027,615
Other versions
US7237122B2 (en
Inventor
Sunil Kadam
Tianying Fu
Michael Bacus
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.)
McAfee LLC
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to US10/027,615 priority Critical patent/US7237122B2/en
Assigned to NETWORKS ASSOCIATES TECHNOLOGY, INC. reassignment NETWORKS ASSOCIATES TECHNOLOGY, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BACUS, MICHAEL P., FU, TIANYING, KADAM, SUNIL S.
Publication of US20030079126A1 publication Critical patent/US20030079126A1/en
Assigned to MCAFEE, INC. reassignment MCAFEE, INC. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: NETWORKS ASSOCIATES TECHNOLOGY, INC.
Application granted granted Critical
Publication of US7237122B2 publication Critical patent/US7237122B2/en
Assigned to MCAFEE, LLC reassignment MCAFEE, LLC CHANGE OF NAME AND ENTITY CONVERSION Assignors: MCAFEE, INC.
Assigned to JPMORGAN CHASE BANK, N.A. reassignment JPMORGAN CHASE BANK, N.A. SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MCAFEE, LLC
Assigned to MORGAN STANLEY SENIOR FUNDING, INC. reassignment MORGAN STANLEY SENIOR FUNDING, INC. SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MCAFEE, LLC
Assigned to JPMORGAN CHASE BANK, N.A. reassignment JPMORGAN CHASE BANK, N.A. CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Assignors: MCAFEE, LLC
Assigned to MORGAN STANLEY SENIOR FUNDING, INC. reassignment MORGAN STANLEY SENIOR FUNDING, INC. CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Assignors: MCAFEE, LLC
Assigned to MCAFEE, LLC reassignment MCAFEE, LLC RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Assignors: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Assigned to MCAFEE, LLC reassignment MCAFEE, LLC RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Assignors: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Assigned to JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT reassignment JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MCAFEE, LLC
Assigned to JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT reassignment JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Assignors: MCAFEE, LLC
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • 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/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself

Definitions

  • the present invention relates to computer software. More specifically, the present invention relates to a method and an apparatus to facilitate software installation on a computer using embedded user credentials.
  • Installing software on a computer typically requires that the installing entity be authenticated to the computer. For example, this authentication can include verifying a user name and a password, although other types of authentication are also possible.
  • the installing entity for example a user of the computer that is trying to install the software from a portable storage medium such as a floppy disk, may not have sufficient privilege level to accomplish the installation. The installation, therefore, will be aborted.
  • One embodiment of the present invention provides a system that facilitates software installation using embedded user credentials.
  • the system receives a software installation package at a computer to be installed on the computer.
  • the system then extracts an installation program from the software installation package.
  • the system determines if the current user has sufficient privileges to run the installation program. If not, the system recovers a set of user credentials from the software installation package that is associated with sufficient privileges to run the installation program.
  • the system then authenticates to the computer using this set of user credentials. Finally, the system runs the installation program on the computer.
  • the software installation package includes an agent that enforces security policies on the computer.
  • the software installation package includes a plurality of sets of user credentials.
  • the system recovers a second set of user credentials from the plurality of sets of user credentials. The system then attempts to authenticate to the computer using the second set of user credentials.
  • the set of user credentials is encrypted.
  • the software installation package is received over a network.
  • the software installation package is received on a storage medium.
  • FIG. 1 illustrates computer 104 in accordance with an embodiment of the present invention.
  • FIG. 2 illustrates computer 104 coupled to a network in accordance with an embodiment of the present invention.
  • FIG. 3 illustrates software installation package 302 in accordance with an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating the process of installing a software installation program in accordance with an embodiment of the present invention.
  • a computer readable storage medium which may be any device or medium that can store code and/or data for use by a computer system.
  • the transmission medium may include a communications network, such as the Internet.
  • FIG. 1 illustrates computer 104 in accordance with an embodiment of the present invention.
  • Computer 104 can generally include any type of computer system, including, but not limited to, a computer system based on a microprocessor, a mainframe computer, a digital signal processor, a portable computing device, a personal organizer, a device controller, and a computational engine within an appliance.
  • User 102 can install a software installation program from a software installation package stored on storage medium 106 .
  • Storage medium 106 can include any type of non-volatile storage device that can be coupled to a computer system. This includes, but is not limited to, magnetic, optical, and magneto-optical storage devices, as well as storage devices based on flash memory and/or battery-backed up memory. Details of this software installation package and the process of installing the software installation program are described below in conjunction with FIGS. 3 and 4.
  • FIG. 2 illustrates computer 104 coupled to a network in accordance with an embodiment of the present invention.
  • User 102 can install a software installation program from a software installation package stored on server 204 . Details of this software installation package and the process of installing the software installation program are described below in conjunction with FIGS. 3 and 4.
  • the software installation package is pushed from server 204 across network 202 .
  • the software installation program may be installed on computer 104 without intervention by user 102 or knowledge of the process by user 102 .
  • Network 202 can generally include any type of wire or wireless communication channel capable of coupling together computing nodes. This includes, but is not limited to, a local area network, a wide area network, or a combination of networks. In one embodiment of the present invention, network 202 includes the Internet.
  • FIG. 3 illustrates software installation package 302 in accordance with an embodiment of the present invention.
  • Software installation package 302 includes self-extracting header 304 , installation program 306 , user credentials 308 , and software binaries 310 .
  • Self-extracting header 304 includes executable computer code, which is used to uncompress data and programs within software installation package 302 .
  • Installation program 306 includes computer code to install the various programs within software binaries 310 .
  • installation program 306 needs to authenticate itself to the computer, say computer 104 , prior to computer 104 allowing installation program 306 to run.
  • User credentials 308 can be used by installation program 306 to authenticate to computer 104 in the case where user 102 does not have sufficient privilege to run installation program 306 , or in the case where software installation package 302 is being pushed from server 204 across network 202 without the user's knowledge or assistance.
  • User credentials 308 can include one or more user names with associated passwords, or other authentication credentials recognizable by computer 104 .
  • user credentials 308 are encrypted to provide security from compromise.
  • Software binaries can include an agent (not shown) for enforcing security policies on computer 104 and the necessary .dll files, data files, and the like for the agent to operate.
  • This Agent typically runs as a background program on computer 104 and may run without the knowledge of user 102 .
  • FIG. 4 is a flowchart illustrating the process of installing a software installation program in accordance with an embodiment of the present invention.
  • the process starts when computer 104 receives software installation package 302 (step 402 ).
  • software installation package 302 can be received from storage medium 106 , from server 204 across network 202 , or by other equivalent means.
  • software installation package 302 can be received by computer 104 either with or without an action by user 102 .
  • computer 104 extracts software installation program 306 from software installation package 302 (step 404 ). Computer 104 then determines if user 102 has sufficient privilege to run software installation program 306 (step 406 ). Note that this step may be skipped if the software is being pushed from server 204 without the knowledge of user 102 .
  • computer 104 recovers a set of user credentials from software installation package 302 (step 408 ).
  • software installation package 302 attempts to authenticate to computer 104 using the credentials recovered from software installation package 302 (step 410 ).
  • Computer 104 determines if the authentication was successful (step 412 ).
  • step 412 determines if there are more credentials available in user credentials 308 (step 414 ). If so, the process returns to step 408 to recover the next set of credentials. If there are no more credentials available at step 414 , computer 104 displays an error message (step 416 ).
  • step 406 If the user has sufficient privileges at step 406 or if the authentication was successful at step 412 , computer 104 allows software installation program 306 to operate, thereby installing the software binaries (step 418 ).

Abstract

One embodiment of the present invention provides a system that facilitates software installation using embedded user credentials. The system receives a software installation package at a computer to be installed on the computer. The system then extracts an installation program from the software installation package. Next, the system determines if the current user has sufficient privileges to run the installation program. If not, the system recovers a set of user credentials from the software installation package that is associated with sufficient privileges to run the installation program. The system then authenticates to the computer using this set of user credentials. Finally, the system runs the installation program on the computer.

Description

    BACKGROUND
  • 1. Field of the Invention [0001]
  • The present invention relates to computer software. More specifically, the present invention relates to a method and an apparatus to facilitate software installation on a computer using embedded user credentials. [0002]
  • 2. Related Art [0003]
  • As enterprise systems grow to include large numbers of computer systems, the task of managing software for these enterprise systems becomes increasingly more challenging. Software management can encompass many aspects of configuring and maintaining the enterprise system, such as software distribution, configuration management, software management, and policy management, such as enforcing rules for virus scanners. [0004]
  • In smaller enterprise systems, it is feasible for an administrator to visit each computer within the enterprise to create the necessary configurations. However, as the enterprise grows or spreads to multiple locations, it quickly becomes impractical for the administrator to visit each computer. [0005]
  • Administrators, therefore, have developed methods to remotely configure the computers within an enterprise system. These methods include pushing software across a network such as the Internet to a remote site, and distributing portable storage media for installation at the remote site. While advantageous, these methods present their own set of problems. [0006]
  • Installing software on a computer typically requires that the installing entity be authenticated to the computer. For example, this authentication can include verifying a user name and a password, although other types of authentication are also possible. However, the installing entity, for example a user of the computer that is trying to install the software from a portable storage medium such as a floppy disk, may not have sufficient privilege level to accomplish the installation. The installation, therefore, will be aborted. [0007]
  • Typically, these software installations require access to the operating system to provide the necessary interface between the software and the operating system. It is not practical, therefore, to provide every user of a computer system with the necessary credentials for authenticating to the computer for these software installations. [0008]
  • What is needed is a method and an apparatus, which will allow installation of the software at a remote installation without the problems detailed above. [0009]
  • SUMMARY
  • One embodiment of the present invention provides a system that facilitates software installation using embedded user credentials. The system receives a software installation package at a computer to be installed on the computer. The system then extracts an installation program from the software installation package. Next, the system determines if the current user has sufficient privileges to run the installation program. If not, the system recovers a set of user credentials from the software installation package that is associated with sufficient privileges to run the installation program. The system then authenticates to the computer using this set of user credentials. Finally, the system runs the installation program on the computer. [0010]
  • In one embodiment of the present invention, the software installation package includes an agent that enforces security policies on the computer. [0011]
  • In one embodiment of the present invention, the software installation package includes a plurality of sets of user credentials. [0012]
  • In one embodiment of the present invention, if the set of user credentials failed during authentication, the system recovers a second set of user credentials from the plurality of sets of user credentials. The system then attempts to authenticate to the computer using the second set of user credentials. [0013]
  • In one embodiment of the present invention, the set of user credentials is encrypted. [0014]
  • In one embodiment of the present invention, the software installation package is received over a network. [0015]
  • In one embodiment of the present invention, the software installation package is received on a storage medium. [0016]
  • BRIEF DESCRIPTION OF THE FIGURES
  • FIG. 1 illustrates [0017] computer 104 in accordance with an embodiment of the present invention.
  • FIG. 2 illustrates [0018] computer 104 coupled to a network in accordance with an embodiment of the present invention.
  • FIG. 3 illustrates [0019] software installation package 302 in accordance with an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating the process of installing a software installation program in accordance with an embodiment of the present invention.[0020]
  • DETAILED DESCRIPTION
  • The following description is presented to enable any person skilled in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein. [0021]
  • The data structures and code described in this detailed description are typically stored on a computer readable storage medium, which may be any device or medium that can store code and/or data for use by a computer system. This includes, but is not limited to, magnetic and optical storage devices such as disk drives, magnetic tape, CDs (compact discs) and DVDs (digital versatile discs or digital video discs), and computer instruction signals embodied in a transmission medium (with or without a carrier wave upon which the signals are modulated). For example, the transmission medium may include a communications network, such as the Internet. [0022]
  • Propagating Software [0023]
  • FIG. 1 illustrates [0024] computer 104 in accordance with an embodiment of the present invention. Computer 104 can generally include any type of computer system, including, but not limited to, a computer system based on a microprocessor, a mainframe computer, a digital signal processor, a portable computing device, a personal organizer, a device controller, and a computational engine within an appliance. User 102 can install a software installation program from a software installation package stored on storage medium 106. Storage medium 106 can include any type of non-volatile storage device that can be coupled to a computer system. This includes, but is not limited to, magnetic, optical, and magneto-optical storage devices, as well as storage devices based on flash memory and/or battery-backed up memory. Details of this software installation package and the process of installing the software installation program are described below in conjunction with FIGS. 3 and 4.
  • FIG. 2 illustrates [0025] computer 104 coupled to a network in accordance with an embodiment of the present invention. User 102 can install a software installation program from a software installation package stored on server 204. Details of this software installation package and the process of installing the software installation program are described below in conjunction with FIGS. 3 and 4.
  • In an alternate embodiment of the present invention, the software installation package is pushed from [0026] server 204 across network 202. In this embodiment, the software installation program may be installed on computer 104 without intervention by user 102 or knowledge of the process by user 102.
  • [0027] Computer 104 and server 204 are coupled together across network 202. Network 202 can generally include any type of wire or wireless communication channel capable of coupling together computing nodes. This includes, but is not limited to, a local area network, a wide area network, or a combination of networks. In one embodiment of the present invention, network 202 includes the Internet.
  • [0028] Software Installation Package 302
  • FIG. 3 illustrates [0029] software installation package 302 in accordance with an embodiment of the present invention. Software installation package 302 includes self-extracting header 304, installation program 306, user credentials 308, and software binaries 310.
  • Self-extracting header [0030] 304 includes executable computer code, which is used to uncompress data and programs within software installation package 302. Installation program 306 includes computer code to install the various programs within software binaries 310. Typically, installation program 306 needs to authenticate itself to the computer, say computer 104, prior to computer 104 allowing installation program 306 to run.
  • [0031] User credentials 308 can be used by installation program 306 to authenticate to computer 104 in the case where user 102 does not have sufficient privilege to run installation program 306, or in the case where software installation package 302 is being pushed from server 204 across network 202 without the user's knowledge or assistance. User credentials 308 can include one or more user names with associated passwords, or other authentication credentials recognizable by computer 104. In one embodiment of the present invention, user credentials 308 are encrypted to provide security from compromise.
  • Software binaries can include an agent (not shown) for enforcing security policies on [0032] computer 104 and the necessary .dll files, data files, and the like for the agent to operate. This Agent typically runs as a background program on computer 104 and may run without the knowledge of user 102.
  • Installing the Software [0033]
  • FIG. 4 is a flowchart illustrating the process of installing a software installation program in accordance with an embodiment of the present invention. The process starts when [0034] computer 104 receives software installation package 302 (step 402). Note that software installation package 302 can be received from storage medium 106, from server 204 across network 202, or by other equivalent means. Note further that software installation package 302 can be received by computer 104 either with or without an action by user 102.
  • Next, [0035] computer 104 extracts software installation program 306 from software installation package 302 (step 404). Computer 104 then determines if user 102 has sufficient privilege to run software installation program 306 (step 406). Note that this step may be skipped if the software is being pushed from server 204 without the knowledge of user 102.
  • If [0036] user 102 does not have sufficient privileges to run software installation program 306 on computer 104, computer 104 recovers a set of user credentials from software installation package 302 (step 408). Next, software installation package 302 attempts to authenticate to computer 104 using the credentials recovered from software installation package 302 (step 410). Computer 104 then determines if the authentication was successful (step 412).
  • If the authentication was not successful at [0037] step 412, computer 104 then determines if there are more credentials available in user credentials 308 (step 414). If so, the process returns to step 408 to recover the next set of credentials. If there are no more credentials available at step 414, computer 104 displays an error message (step 416).
  • If the user has sufficient privileges at [0038] step 406 or if the authentication was successful at step 412, computer 104 allows software installation program 306 to operate, thereby installing the software binaries (step 418).
  • The foregoing descriptions of embodiments of the present invention have been presented for purposes of illustration and description only. They are not intended to be exhaustive or to limit the present invention to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present invention. The scope of the present invention is defined by the appended claims. [0039]

Claims (21)

What is claimed is:
1. A method to facilitate software installation using embedded user credentials, comprising:
receiving a software installation package at a computer;
extracting an installation program from the software installation package;
determining if a current user has sufficient privileges to run the installation program;
if the current user does not have sufficient privileges,
recovering a set of user credentials that is associated with sufficient privileges to run the installation program from the software installation package, and
authenticating to the computer using the set of user credentials; and
running the installation program on the computer.
2. The method of claim 1, wherein the software installation package includes an agent, wherein the agent enforces security policies on the computer.
3. The method of claim 1, wherein the software installation package includes a plurality of sets of user credentials.
4. The method of claim 3, further comprising:
recove ring a second set of user credentials from the plurality of sets of user credentials if the set of user credentials failed during authentication; and
authenticating to the computer using the second set of user credentials.
5. The method of claim 1, wherein the set of user credentials is encrypted.
6. The method of claim 1, wherein the software installation package is received over a network.
7. The method of claim 1, wherein the software installation package is received on a storage medium.
8. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method to facilitate software installation using embedded user credentials, the method comprising:
receiving a software installation package at the computer;
extracting an installation program from the software installation package;
determining if a current user has sufficient privileges to run the installation program;
if the current user does not have sufficient privileges,
recovering a set of user credentials that is associated with sufficient privileges to run the installation program from the software installation package, and
authenticating to the computer using the set of user credentials; and
running the installation program on the computer.
9. The computer-readable storage medium of claim 8, wherein the software installation package includes an agent, wherein the agent enforces security policies on the computer.
10. The computer-readable storage medium of claim 8, wherein the software installation package includes a plurality of sets of user credentials.
11. The computer-readable storage medium of claim 10, the method further comprising:
recovering a second set of user credentials from the plurality of sets of user credentials if the set of user credentials failed during authentication; and
authenticating to the computer using the second set of user credentials.
12. The computer-readable storage medium of claim 8, wherein the set of user credentials is encrypted.
13. The computer-readable storage medium of claim 8, wherein the software installation package is received over a network.
14. The computer-readable storage medium of claim 8, wherein the software installation package is received on a storage medium.
15. An apparatus to facilitate software installation using embedded user credentials, comprising:
a receiving mechanism that is configured to receive a software installation package at a computer;
an extracting mechanism that is configured to extract an installation program from the software installation package;
a determining mechanism that is configured to determine if a current user has sufficient privileges to run the installation program;
a recovering mechanism that is configured to recover a set of user credentials that is associated with sufficient privileges to run the installation program from the software installation package;
an authenticating mechanism that is configured to authenticate to the computer using the set of user credentials; and
a software executing mechanism that is configured to run the installation program on the computer.
16. The apparatus of claim 15, wherein the software installation package includes an agent, wherein the agent enforces security policies on the computer.
17. The apparatus of claim 15, wherein the software installation package includes a plurality of sets of user credentials.
18. The apparatus of claim 17,
wherein the recovering mechanism is further configured to recover a second set of user credentials from the plurality of sets of user credentials if the set of user credentials failed during authentication; and
wherein the authenticating mechanism is further configured to authenticate to the computer using the second set of user credentials.
19. The apparatus of claim 15, wherein the set of user credentials is encrypted.
20. The apparatus of claim 15, wherein the software installation package is received over a network.
21. The apparatus of claim 15, wherein the software installation package is received on a storage medium.
US10/027,615 2001-10-19 2001-10-19 Method and apparatus to facilitate software installation using embedded user credentials Expired - Lifetime US7237122B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/027,615 US7237122B2 (en) 2001-10-19 2001-10-19 Method and apparatus to facilitate software installation using embedded user credentials

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/027,615 US7237122B2 (en) 2001-10-19 2001-10-19 Method and apparatus to facilitate software installation using embedded user credentials

Publications (2)

Publication Number Publication Date
US20030079126A1 true US20030079126A1 (en) 2003-04-24
US7237122B2 US7237122B2 (en) 2007-06-26

Family

ID=21838748

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/027,615 Expired - Lifetime US7237122B2 (en) 2001-10-19 2001-10-19 Method and apparatus to facilitate software installation using embedded user credentials

Country Status (1)

Country Link
US (1) US7237122B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216909A1 (en) * 2004-03-29 2005-09-29 James Don R Jr Systems and methods for controlling program installation on a computing device
US20050254070A1 (en) * 2004-05-14 2005-11-17 Katsumi Sayama Image output apparatus
US20080162915A1 (en) * 2006-12-29 2008-07-03 Price Mark H Self-healing computing system
WO2008152954A1 (en) * 2007-06-12 2008-12-18 Canon Kabushiki Kaisha Information processing method and program
US20120090031A1 (en) * 2006-12-12 2012-04-12 Fortinet, Inc. A Delaware Corporation Detection of undesired computer files in archives
CN102999351A (en) * 2011-11-02 2013-03-27 微软公司 Mapping identity to document to realize multi-user login

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7130822B1 (en) 2000-07-31 2006-10-31 Cognos Incorporated Budget planning
US6754823B1 (en) * 2000-10-24 2004-06-22 Kurzweil Cyberart Technologies Technique for distributing software
US20040064348A1 (en) * 2002-09-30 2004-04-01 Humenansky Brian S. Selective deployment of software extensions within an enterprise modeling environment
US9350752B2 (en) 2003-07-01 2016-05-24 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118711B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US8984644B2 (en) 2003-07-01 2015-03-17 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118709B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118710B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc System, method, and computer program product for reporting an occurrence in different manners
US9118708B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Multi-path remediation
US9100431B2 (en) 2003-07-01 2015-08-04 Securityprofiling, Llc Computer program product and apparatus for multi-path remediation
US20070113272A2 (en) 2003-07-01 2007-05-17 Securityprofiling, Inc. Real-time vulnerability monitoring
US7614051B2 (en) * 2003-12-16 2009-11-03 Microsoft Corporation Creating file systems within a file in a storage technology-abstracted manner
US7568195B2 (en) * 2003-12-16 2009-07-28 Microsoft Corporation Determining a maximal set of dependent software updates valid for installation
US20050132357A1 (en) * 2003-12-16 2005-06-16 Microsoft Corporation Ensuring that a software update may be installed or run only on a specific device or class of devices
US7549042B2 (en) * 2003-12-16 2009-06-16 Microsoft Corporation Applying custom software image updates to non-volatile storage in a failsafe manner
US7908339B2 (en) * 2004-06-03 2011-03-15 Maxsp Corporation Transaction based virtual file system optimized for high-latency network connections
US9357031B2 (en) 2004-06-03 2016-05-31 Microsoft Technology Licensing, Llc Applications as a service
US8812613B2 (en) * 2004-06-03 2014-08-19 Maxsp Corporation Virtual application manager
US7664834B2 (en) 2004-07-09 2010-02-16 Maxsp Corporation Distributed operating system management
US8156488B2 (en) 2004-10-20 2012-04-10 Nokia Corporation Terminal, method and computer program product for validating a software application
US8234238B2 (en) 2005-03-04 2012-07-31 Maxsp Corporation Computer hardware and software diagnostic and report system
US7624086B2 (en) * 2005-03-04 2009-11-24 Maxsp Corporation Pre-install compliance system
US7512584B2 (en) * 2005-03-04 2009-03-31 Maxsp Corporation Computer hardware and software diagnostic and report system
US8589323B2 (en) 2005-03-04 2013-11-19 Maxsp Corporation Computer hardware and software diagnostic and report system incorporating an expert system and agents
US7739681B2 (en) * 2005-06-29 2010-06-15 Novell, Inc. Delayed application installation
US8811396B2 (en) 2006-05-24 2014-08-19 Maxsp Corporation System for and method of securing a network utilizing credentials
US8898319B2 (en) 2006-05-24 2014-11-25 Maxsp Corporation Applications and services as a bundle
US20080066067A1 (en) * 2006-09-07 2008-03-13 Cognos Incorporated Enterprise performance management software system having action-based data capture
US9317506B2 (en) 2006-09-22 2016-04-19 Microsoft Technology Licensing, Llc Accelerated data transfer using common prior data segments
US7840514B2 (en) 2006-09-22 2010-11-23 Maxsp Corporation Secure virtual private network utilizing a diagnostics policy and diagnostics engine to establish a secure network connection
US7844686B1 (en) 2006-12-21 2010-11-30 Maxsp Corporation Warm standby appliance
US8423821B1 (en) 2006-12-21 2013-04-16 Maxsp Corporation Virtual recovery server
US20080163199A1 (en) * 2006-12-30 2008-07-03 Rao Siddhartha Ashok Multi-product package creation and editing
US8574738B2 (en) * 2007-03-14 2013-11-05 Enerdel, Inc. Battery pack assembly with integrated heater
US8307239B1 (en) 2007-10-26 2012-11-06 Maxsp Corporation Disaster recovery appliance
US8175418B1 (en) 2007-10-26 2012-05-08 Maxsp Corporation Method of and system for enhanced data storage
US8645515B2 (en) 2007-10-26 2014-02-04 Maxsp Corporation Environment manager
US20100077475A1 (en) * 2008-09-22 2010-03-25 Microsoft Corporation Partial installation based on available privileges
WO2010040393A1 (en) * 2008-10-08 2010-04-15 Nokia Siemens Networks Oy Method for providing access to a service
US9158525B1 (en) * 2010-10-04 2015-10-13 Shoretel, Inc. Image upgrade
US11816238B2 (en) * 2021-03-10 2023-11-14 Sap Se Assignment of computer privileges to user based on automated skill estimate

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956408A (en) * 1994-09-15 1999-09-21 International Business Machines Corporation Apparatus and method for secure distribution of data
US5960204A (en) * 1996-10-28 1999-09-28 J.D. Edwards World Source Company System and method for installing applications on a computer on an as needed basis
US6067622A (en) * 1996-01-02 2000-05-23 Moore; Steven Jerome Software security system using remove function to restrict unauthorized duplicating and installation of an application program
US6075943A (en) * 1997-08-13 2000-06-13 International Business Machines Corporation System and method for client server software installation
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US6226747B1 (en) * 1998-04-10 2001-05-01 Microsoft Corporation Method for preventing software piracy during installation from a read only storage medium
US6269401B1 (en) * 1998-08-28 2001-07-31 3Com Corporation Integrated computer system and network performance monitoring
US20020026588A1 (en) * 2000-07-31 2002-02-28 Pierre Sauvage Dynamic resource control in a processing system
US20020178028A1 (en) * 2001-05-07 2002-11-28 King John Fredrick Internet order processing and fulfillment system
US6654888B1 (en) * 1999-12-31 2003-11-25 International Business Machines Corporation Installing and controlling trial software
US6754823B1 (en) * 2000-10-24 2004-06-22 Kurzweil Cyberart Technologies Technique for distributing software
US20040123141A1 (en) * 2002-12-18 2004-06-24 Satyendra Yadav Multi-tier intrusion detection system
US6788800B1 (en) * 2000-07-25 2004-09-07 Digimarc Corporation Authenticating objects using embedded data
US6792549B2 (en) * 1998-06-04 2004-09-14 Z4 Technologies, Inc. Method and apparatus for repeated contact of software end-user
US6799277B2 (en) * 1998-06-04 2004-09-28 Z4 Technologies, Inc. System and method for monitoring software
US6854016B1 (en) * 2000-06-19 2005-02-08 International Business Machines Corporation System and method for a web based trust model governing delivery of services and programs
US6865737B1 (en) * 2000-08-23 2005-03-08 Microsoft Corporation Remote software installation and maintenance
US6973647B2 (en) * 2000-07-15 2005-12-06 International Business Machines Corporation Preferable modes of software package deployment
US6993650B2 (en) * 2001-10-31 2006-01-31 International Business Machines Corporation Authentications integrated into a boot code image
US7069581B2 (en) * 2001-10-04 2006-06-27 Mcafee, Inc. Method and apparatus to facilitate cross-domain push deployment of software in an enterprise environment

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956408A (en) * 1994-09-15 1999-09-21 International Business Machines Corporation Apparatus and method for secure distribution of data
US6067622A (en) * 1996-01-02 2000-05-23 Moore; Steven Jerome Software security system using remove function to restrict unauthorized duplicating and installation of an application program
US6151643A (en) * 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US5960204A (en) * 1996-10-28 1999-09-28 J.D. Edwards World Source Company System and method for installing applications on a computer on an as needed basis
US6075943A (en) * 1997-08-13 2000-06-13 International Business Machines Corporation System and method for client server software installation
US6226747B1 (en) * 1998-04-10 2001-05-01 Microsoft Corporation Method for preventing software piracy during installation from a read only storage medium
US6792549B2 (en) * 1998-06-04 2004-09-14 Z4 Technologies, Inc. Method and apparatus for repeated contact of software end-user
US6799277B2 (en) * 1998-06-04 2004-09-28 Z4 Technologies, Inc. System and method for monitoring software
US6269401B1 (en) * 1998-08-28 2001-07-31 3Com Corporation Integrated computer system and network performance monitoring
US6654888B1 (en) * 1999-12-31 2003-11-25 International Business Machines Corporation Installing and controlling trial software
US6854016B1 (en) * 2000-06-19 2005-02-08 International Business Machines Corporation System and method for a web based trust model governing delivery of services and programs
US6973647B2 (en) * 2000-07-15 2005-12-06 International Business Machines Corporation Preferable modes of software package deployment
US6788800B1 (en) * 2000-07-25 2004-09-07 Digimarc Corporation Authenticating objects using embedded data
US20020026588A1 (en) * 2000-07-31 2002-02-28 Pierre Sauvage Dynamic resource control in a processing system
US6865737B1 (en) * 2000-08-23 2005-03-08 Microsoft Corporation Remote software installation and maintenance
US6754823B1 (en) * 2000-10-24 2004-06-22 Kurzweil Cyberart Technologies Technique for distributing software
US20020178028A1 (en) * 2001-05-07 2002-11-28 King John Fredrick Internet order processing and fulfillment system
US7069581B2 (en) * 2001-10-04 2006-06-27 Mcafee, Inc. Method and apparatus to facilitate cross-domain push deployment of software in an enterprise environment
US6993650B2 (en) * 2001-10-31 2006-01-31 International Business Machines Corporation Authentications integrated into a boot code image
US20040123141A1 (en) * 2002-12-18 2004-06-24 Satyendra Yadav Multi-tier intrusion detection system

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216909A1 (en) * 2004-03-29 2005-09-29 James Don R Jr Systems and methods for controlling program installation on a computing device
US7694280B2 (en) * 2004-03-29 2010-04-06 Hewlett-Packard Development Company, L.P. Systems and methods for controlling program installation on a computing device
US20050254070A1 (en) * 2004-05-14 2005-11-17 Katsumi Sayama Image output apparatus
US20120090031A1 (en) * 2006-12-12 2012-04-12 Fortinet, Inc. A Delaware Corporation Detection of undesired computer files in archives
US8327447B2 (en) * 2006-12-12 2012-12-04 Fortinet, Inc. Detection of undesired computer files in archives
US8793798B2 (en) 2006-12-12 2014-07-29 Fortinet, Inc. Detection of undesired computer files in archives
US20080162915A1 (en) * 2006-12-29 2008-07-03 Price Mark H Self-healing computing system
WO2008152954A1 (en) * 2007-06-12 2008-12-18 Canon Kabushiki Kaisha Information processing method and program
US20100095294A1 (en) * 2007-06-12 2010-04-15 Canon Kabushiki Kaisha Information processing method and program
US9171177B2 (en) 2007-06-12 2015-10-27 Canon Kabushiki Kaisha Information processing method for executing a command included in an installer and a storage medium storing a program therefor
CN102999351A (en) * 2011-11-02 2013-03-27 微软公司 Mapping identity to document to realize multi-user login
US8813249B2 (en) * 2011-11-02 2014-08-19 Microsoft Corporation Mapping identities to documents to enable multiple user logins

Also Published As

Publication number Publication date
US7237122B2 (en) 2007-06-26

Similar Documents

Publication Publication Date Title
US7237122B2 (en) Method and apparatus to facilitate software installation using embedded user credentials
US7069581B2 (en) Method and apparatus to facilitate cross-domain push deployment of software in an enterprise environment
US8799441B2 (en) Remote computer management when a proxy server is present at the site of a managed computer
US6920558B2 (en) Method and apparatus for securely and dynamically modifying security policy configurations in a distributed system
US9160614B2 (en) Remote computer management using network communications protocol that enables communication through a firewall and/or gateway
US20110099547A1 (en) Approaches for installing software using bios
US9923878B2 (en) Primitive functions for use in remote computer management
US20110078676A1 (en) Use of a dynamicaly loaded library to update remote computer management capability
US20080295174A1 (en) Method and System for Preventing Unauthorized Access and Distribution of Digital Data
US20100058306A1 (en) System and Method for Secure Information Handling System Flash Memory Access
US8321538B2 (en) Autonomous network device configuration method
JP5304345B2 (en) Content processing apparatus, content processing system, and content processing program
US8738920B2 (en) Information processing apparatus and authentication information migration method
US8850563B2 (en) Portable computer accounts
CN115462109A (en) Secure access to accessory device resources
JP4815782B2 (en) Program update method, information processing apparatus, and program
CN105786575A (en) Mobile terminal and data elimination avoiding method thereof during system rewriting
KR20150030047A (en) Method and system for application authentication
CN111353150A (en) Trusted boot method, trusted boot device, electronic equipment and readable storage medium
US8504665B1 (en) Management of a device connected to a remote computer using the remote computer to effect management actions
KR101908428B1 (en) Method, center apparatus and system for blocking accessing device through virtual private network
CN116541891A (en) UEFI image file integrity protection method, device, equipment and medium
JPH113285A (en) Security system for recording medium capable of changing password input method

Legal Events

Date Code Title Description
AS Assignment

Owner name: NETWORKS ASSOCIATES TECHNOLOGY, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KADAM, SUNIL S.;FU, TIANYING;BACUS, MICHAEL P.;REEL/FRAME:012413/0155

Effective date: 20011015

AS Assignment

Owner name: MCAFEE, INC.,CALIFORNIA

Free format text: MERGER;ASSIGNOR:NETWORKS ASSOCIATES TECHNOLOGY, INC.;REEL/FRAME:016646/0513

Effective date: 20041119

Owner name: MCAFEE, INC., CALIFORNIA

Free format text: MERGER;ASSIGNOR:NETWORKS ASSOCIATES TECHNOLOGY, INC.;REEL/FRAME:016646/0513

Effective date: 20041119

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: MCAFEE, LLC, CALIFORNIA

Free format text: CHANGE OF NAME AND ENTITY CONVERSION;ASSIGNOR:MCAFEE, INC.;REEL/FRAME:043665/0918

Effective date: 20161220

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., NEW YORK

Free format text: SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:045055/0786

Effective date: 20170929

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND

Free format text: SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:045056/0676

Effective date: 20170929

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12

AS Assignment

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:054206/0593

Effective date: 20170929

Owner name: JPMORGAN CHASE BANK, N.A., NEW YORK

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:055854/0047

Effective date: 20170929

AS Assignment

Owner name: MCAFEE, LLC, CALIFORNIA

Free format text: RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:054238/0001

Effective date: 20201026

AS Assignment

Owner name: MCAFEE, LLC, CALIFORNIA

Free format text: RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT;REEL/FRAME:059354/0213

Effective date: 20220301

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT, NEW YORK

Free format text: SECURITY INTEREST;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:059354/0335

Effective date: 20220301

AS Assignment

Owner name: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT, NEW YORK

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:MCAFEE, LLC;REEL/FRAME:060792/0307

Effective date: 20220301