Selectively authorizing software functionality after installation of the software
First Claim
1. A method of enabling functionality within a software product after installation of the software product on a computing device of a user, said method comprising:
- receiving authorization information associated with the software product, said software product including a plurality of installed components, said installed components each being associated with a functionality of the software product, said functionality being defined by a manifest specifying libraries and functions within libraries of the installed components, said software product executing in accordance with the received authorization information, wherein the functionality of the installed software product is enabled based on the received authorization information and the manifest;
receiving a request for functionality associated with at least one of the plurality of components during execution of the software product;
determining in response to the request for functionality access rights for the requested functionality based on the received authorization information;
if the determined access rights indicate an authorization of access to the requested functionality, providing in response to the request for functionality the requested functionality in accordance with the determined access rights by enabling the installed components corresponding to the requested functionality as specified in the manifest; and
if the determined access rights indicate a denial of access to the requested functionality providing in response to the request for functionality a purchase offer to the user to enable the requested functionality;
if the user accepts the purchase offer in response to providing the purchase offer, receiving updated authorization information wherein the requested functionality is provided to the user in accordance with the determined access rights based on the received updated authorization information by enabling the installed components corresponding to the requested functionality as specified by the manifest; and
if the user declines the purchase offer in response to providing the purchase offer, denying access to the requested functionality.
2 Assignments
0 Petitions
Accused Products
Abstract
Controlling access to functionality within an installed software product. The invention includes an authorization module that dynamically references authorization information when specific functionality is requested by a requesting entity such as a user or an application program to determine if the requested functionality is authorized to be executed. Further, the invention dynamically provides an opportunity to the requesting entity to purchase unauthorized functionality. In this manner, functionality within the software product may be enabled or disabled at any time (e.g., during installation, post-installation, and re-installation).
-
Citations
34 Claims
-
1. A method of enabling functionality within a software product after installation of the software product on a computing device of a user, said method comprising:
-
receiving authorization information associated with the software product, said software product including a plurality of installed components, said installed components each being associated with a functionality of the software product, said functionality being defined by a manifest specifying libraries and functions within libraries of the installed components, said software product executing in accordance with the received authorization information, wherein the functionality of the installed software product is enabled based on the received authorization information and the manifest; receiving a request for functionality associated with at least one of the plurality of components during execution of the software product; determining in response to the request for functionality access rights for the requested functionality based on the received authorization information; if the determined access rights indicate an authorization of access to the requested functionality, providing in response to the request for functionality the requested functionality in accordance with the determined access rights by enabling the installed components corresponding to the requested functionality as specified in the manifest; and if the determined access rights indicate a denial of access to the requested functionality providing in response to the request for functionality a purchase offer to the user to enable the requested functionality; if the user accepts the purchase offer in response to providing the purchase offer, receiving updated authorization information wherein the requested functionality is provided to the user in accordance with the determined access rights based on the received updated authorization information by enabling the installed components corresponding to the requested functionality as specified by the manifest; and if the user declines the purchase offer in response to providing the purchase offer, denying access to the requested functionality. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. One or more tangible computer-readable storage media having computer-executable modules for enabling functionality within a software product having at least one component after installation of the software product on a computing device of a user, said modules comprising:
-
an interface module for receiving authorization information associated with the software product, said software product including a plurality of installed components, said installed components each being associated with a functionality of the software product, said functionality being defined by a manifest specifying libraries and functions within libraries of the installed components information, said software product executing in accordance with the received authorization information and the manifest; an authorization module for receiving a request for functionality associated with the component during execution of the software product, said authorization module further determining access rights for the requested functionality based on the authorization information received via the interface module, said authorization module further providing the requested functionality in accordance with the determined access rights; and an upgrade module for providing a purchase offer to the user to enable the requested functionality if the access rights determined by the authorization module deny access to the requested functionality; if the user accepts the purchase offer, receiving updated authorization information wherein the requested functionality is provided to the user by the authorization module in accordance with the determined access rights based on the received updated authorization information by enabling the installed components corresponding to the requested functionality as specified in the manifest; and if the user declines the purchase offer, denying access to the requested functionality to the user by the authorization module. - View Dependent Claims (20, 21, 22, 23, 24)
-
-
25. A method of dynamically providing a purchase opportunity to a user to enable functionality within a software product installed on a computing device of a user, said software product having at least one component therein, said method comprising:
-
receiving authorization information associated with the software product, said software product including a plurality of installed components, said installed components each being associated with a functionality of the software product, said functionality being defined by a manifest specifying libraries and functions within libraries of the installed components, said software product executing in accordance with the received authorization information and the manifest; receiving a request for functionality associated with the component during execution of the software product; determining access rights for the requested functionality based on the received authorization information; if the determined access rights deny access to the requested functionality; providing a purchase offer to the user, wherein acceptance of the provided purchase offer enables the requested functionality; if the user accepts the purchase offer, receiving updated authorization information wherein the requested functionality is provided to the user in accordance with the determined access rights based on the received updated authorization information by enabling the installed components corresponding to the requested functionality as specified in the manifest; and if the user declines the purchase offer, denying access to the requested functionality; and if the determined access rights authorize access to the requested functionality, providing the requested functionality in accordance with the determined access rights by enabling the installed components corresponding to the requested functionality as specified in the manifest. - View Dependent Claims (26, 27, 28, 29, 30)
-
-
31. A tangible computer-readable storage media having stored thereon an operating system, said operating system including computer-executable modules, said computer-executable modules comprising:
-
authorization information associated with the operating system, said operating system including a plurality of installed components, said components each being associated with a functionality of the operating system, said components comprising a COM object (component object module) or a DLL (dynamic-link library), said functionality being defined by a manifest specifying libraries and functions within libraries of the components, said manifest further specifying a version and dependencies related to said components, said operating system being installed on a computing device and executing in accordance with the authorization information and the manifest; an authorization module for receiving a request for functionality associated with the operating system during execution of the operating system, said authorization module further determining access rights for the requested functionality based on the authorization information, said authorization module further providing the requested functionality in accordance with the determined access rights; and an upgrade module for providing a purchase offer to the user to enable the requested functionality if the access rights determined by the authorization module deny access to the requested functionality; if the user accepts the purchase offer, receiving updated authorization information wherein the requested functionality is provided to the user by the authorization module in accordance with the determined access rights based on the received updated authorization information by enabling the components corresponding to the requested functionality as specified in the manifest; and if the user declines the purchase offer, denying access to the requested functionality to the user by the authorization module. - View Dependent Claims (32, 33, 34)
-
Specification