Constraints and constraint sharing in a catalog service platform
Abstract
A service provider system may implement an enterprise catalog service that manages software products and portfolios of software products on behalf of service provider customer organizations. Through an administrator interface of the service, a customer organization administrator may create constraints on the use of the software products, and each constraint may include one or more rules about how the products can be launched. These may include environmental constraints (specifying a region in which a product launches), restrictions on input parameter values (including the types of resource instances on which a product can be launched), quotas (controlling the number of product installations), or billing constraints. Constraints may be applied on a user-to-product arc or on a portfolio-to-product arc. Constraints may be stored as objects, and reference to those objects may be added to product or portfolio objects. Constraints may be shared across object versions, portfolios, or service provider customer accounts.
Claims
exact text as granted — not AI-modified1 .- 20 . (canceled)
21 . A system, comprising:
one or more computing nodes, each of the computing nodes comprising at least one processor and a memory, wherein the one or more computing nodes implement an enterprise catalog service; and wherein the enterprise catalog service is configured to:
create, in response to a request, a constraint, wherein the constraint comprises one or more rules, each rule restricting how software products to which the rule is applied are to be used by one or more end users;
associate the constraint to one or more software products, wherein associating the constraint to the one or more software products subjects the use of the one or more software products by the one or more end users to the one or more rules;
provide the constraint to a product delivery platform upon the use of at least one of the software products by an end user of the one or more end users, for the product delivery platform to apply the one or more rules of the constraint to the use of the software product by the end user; and
share the constraint with another entity.
22 . The system of claim 21 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein to share the constraint with another entity further comprises:
receive another request from the administrator to share the constraint with a different recipient administrator; and
send to the different recipient administrator, in response to the other request, a notification that the constraint is being shared with the different recipient administrator, wherein the notification comprises the constraint, an identifier of the constraint, an object representing the constraint, or a unique resource identifier for the object representing the constraint.
23 . The system of claim 21 , wherein to share the constraint with another entity further comprises:
receive input indicating that a new version of at least one of the software products is available; update the at least one software product to the new version of the at least one software product; and associate, automatically and without user intervention, the constraint to the new version of the at least one software product.
24 . The system of claim 21 ,
wherein the one or more software products are in a portfolio; wherein associating the constraint to the one or more software products comprises adding the constraint to the portfolio; wherein the portfolio further comprises the one or more end users who have been granted permission to discover and launch the one or more software products in the portfolio, including the end user; and wherein to share the constraint with another entity further comprises:
share the constraint with a second portfolio, wherein the second portfolio comprises the one or more software products and a different one or more end users who have been granted permission to discover and launch the one or more software products in the second portfolio;
wherein sharing the constraint with the second portfolio subjects the use of the one or more software products in the second portfolio to the one or more rules of the constraint when the one or more software products are used by at least one of the different one or more end users.
25 . The system of claim 21 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein to share the constraint with another entity further comprises:
make the constraint discoverable to administrators of a different client, wherein making the constraint discoverable comprises publishing one or more of: a name for the constraint or a description of the constraint.
26 . The system of claim 21 ,
wherein the one or more end users are end users of a client; wherein the request to create the constraint is received from an administrator of the client; and wherein the enterprise catalog service is further configured to:
discover another constraint, wherein the other constraint was created and shared by another administrator of the client;
import the other constraint; and
associate the other constraint to the one or more software products, wherein associating the other constraint to the one or more software products subjects the use of the one or more software products by the one or more end users of the client to one or more different rules of the other constraint.
27 . The system of claim 21 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein to share the constraint with another entity further comprises:
receive, from the administrator of the client, input initiating an operation to share the selected constraint with another entity; and
initiate an approval workflow to request, on behalf of the administrator, approval to share the constraint with the other entity.
28 . A method, comprising:
performing, by one or more computers that implement an enterprise catalog service on behalf of a service provider:
creating, in response to a request, a constraint, wherein the constraint comprises one or more rules, each rule restricting how software products to which the rule is applied are to be used by one or more end users;
associating the constraint to one or more software products, wherein associating the constraint to the one or more software products subjects the use of the one or more software products by the one or more end users to the one or more rules;
providing the constraint to a product fulfillment component, for the product fulfillment component to apply the one or more rules of the constraint to the use of the software product by an end user of the one or more end users; and
sharing the constraint with another entity.
29 . The method of claim 28 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein sharing the constraint with another entity further comprises:
receiving another request from the administrator to share the constraint with a different recipient administrator; and
sending to the different recipient administrator, in response to the other request, a notification that the constraint is being shared with the different recipient administrator, wherein the notification comprises the constraint, an identifier of the constraint, an object representing the constraint, or a unique resource identifier for the object representing the constraint.
30 . The method of claim 28 , wherein sharing the constraint with another entity further comprises:
receiving input indicating that a new version of at least one of the software products is available; updating the at least one software product to the new version of the at least one software product; and associating, automatically and without user intervention, the constraint to the new version of the at least one software product.
31 . The method of claim 28 ,
wherein the one or more software products are in a portfolio; wherein associating the constraint to the one or more software products comprises adding the constraint to the portfolio; wherein the portfolio further comprises the one or more end users who have been granted permission to discover and launch the one or more software products in the portfolio, including the end user; and wherein sharing the constraint with another entity further comprises:
sharing the constraint with a second portfolio, wherein the second portfolio comprises the one or more software products and a different one or more end users who have been granted permission to discover and launch the one or more software products in the second portfolio;
wherein sharing the constraint with the second portfolio subjects the use of the one or more software products in the second portfolio to the one or more rules of the constraint when the one or more software products are used by at least one of the different one or more end users.
32 . The method of claim 28 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein sharing the constraint with another entity further comprises:
making the constraint discoverable to administrators of a different client, wherein making the constraint discoverable comprises publishing one or more of: a name for the constraint or a description of the constraint.
33 . The method of claim 28 ,
wherein the one or more end users are end users of a client; wherein the request to create the constraint is received from an administrator of the client; and wherein the one or more computers that implement the enterprise catalog service on behalf of the service provider further perform:
discovering another constraint, wherein the other constraint was created and shared by another administrator of the client;
importing the other constraint; and
associating the other constraint to the one or more software products, wherein associating the other constraint to the one or more software products subjects the use of the one or more software products by the one or more end users of the client to one or more different rules of the other constraint.
34 . The method of claim 28 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein sharing the constraint with another entity further comprises:
receiving, from the administrator of the client, input initiating an operation to share the selected constraint with another entity; and
initiating an approval workflow to request, on behalf of the administrator, approval to share the constraint with the other entity.
35 . One or more non-transitory computer-readable storage media storing program instructions that when executed on or across one or more processors of an enterprise catalog service cause the enterprise catalog service to:
create, in response to a request, a constraint, wherein the constraint comprises one or more rules, each rule restricting how software products to which the rule is applied are to be used by one or more end users; associate the constraint to one or more software products, wherein associating the constraint to the one or more software products subjects the use of the one or more software products by the one or more end users to the one or more rules; provide the constraint to a product delivery platform upon the use of at least one of the software products by an end user of the one or more end users, for the product delivery platform to apply the one or more rules of the constraint to the use of the software product by the end user; and share the constraint with another entity.
36 . The one or more non-transitory computer-readable storage media of claim 35 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein to share the constraint with another entity, the program instructions, when executed on or across the one or more processors, further cause the enterprise catalog service to:
receive another request from the administrator to share the constraint with a different recipient administrator; and
send to the different recipient administrator, in response to the other request, a notification that the constraint is being shared with the different recipient administrator, wherein the notification comprises the constraint, an identifier of the constraint, an object representing the constraint, or a unique resource identifier for the object representing the constraint.
37 . The one or more non-transitory computer-readable storage media of claim 35 , wherein to share the constraint with another entity, the program instructions, when executed on or across the one or more processors, further cause the enterprise catalog service to:
receive input indicating that a new version of at least one of the software products is available; update the at least one software product to the new version of the at least one software product; and associate, automatically and without user intervention, the constraint to the new version of the at least one software product.
38 . The one or more non-transitory computer-readable storage media of claim 35 ,
wherein the one or more software products are in a portfolio; wherein associating the constraint to the one or more software products comprises adding the constraint to the portfolio; wherein the portfolio further comprises the one or more end users who have been granted permission to discover and launch the one or more software products in the portfolio, including the end user; and wherein to share the constraint with another entity, the program instructions, when executed on or across the one or more processors, further cause the enterprise catalog service to:
share the constraint with a second portfolio, wherein the second portfolio comprises the one or more software products and a different one or more end users who have been granted permission to discover and launch the one or more software products in the second portfolio;
wherein sharing the constraint with the second portfolio subjects the use of the one or more software products in the second portfolio to the one or more rules of the constraint when the one or more software products are used by at least one of the different one or more end users.
39 . The one or more non-transitory computer-readable storage media of claim 35 ,
wherein the one or more end users are end users of a client; wherein the request to create a constraint is received from an administrator of the client; and wherein to share the constraint with another entity, the program instructions, when executed on or across the one or more processors, further cause the enterprise catalog service to:
make the constraint discoverable to administrators of a different client, wherein making the constraint discoverable comprises publishing one or more of: a name for the constraint or a description of the constraint.
40 . The one or more non-transitory computer-readable storage media of claim 35 ,
wherein the one or more end users are end users of a client; wherein the request to create the constraint is received from an administrator of the client; and wherein the program instructions, when executed on or across the one or more processors, further cause enterprise catalog service to:
discover another constraint, wherein the other constraint was created and shared by another administrator of the client;
import the other constraint; and
associate the other constraint to the one or more software products, wherein associating the other constraint to the one or more software products subjects the use of the one or more software products by the one or more end users of the client to one or more different rules of the other constraint.Join the waitlist — get patent alerts
Track US2020184394A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.