Secure server plug-in architecture for digital rights management systems
First Claim
Patent Images
1. A system implemented at least in part by a computing device for providing digital rights management services, the system comprising:
- a processor; and
a plurality of customized pipelines, implemented on the processor, that are unconditionally independent of one another, each customized pipeline is configured for providing a specific digital rights management service to a customer by executing a plurality of plug-in components of the customized pipeline in a sequential order from start to finish, the customized pipeline comprising;
a service program that provides a processing framework for performing the specific digital rights management service;
wherein plug-in options are selected from amongst a plurality of optional plug-in modular components,the plurality of plug-in components corresponding to the selected plug-in options are integrated into the processing framework according to a respective predefined set of interface rules,each of the plurality of plug-in components is denied direct access to data structures of the service program, the denial of direct access being implemented by controlling data interaction between each of the plurality of plug-in components and the service program,each of the plurality of plug-in components is validated for providing trust between the service program and each of the plurality of plug-in components,a first asynchronous component that is appended to an end point of the customized pipeline in the plurality of customized pipelines, the end point selected such that the first asynchronous component is operative only after all the plurality of plug-in components of the customized pipeline have performed their respective tasks, and wherein the first asynchronous component is configured to have no control over a processing of a request associated with the respective tasks performed by the plurality of plug-in components of the customized pipeline, anda second asynchronous component that is appended to the end point of the customized pipeline wherein the second asynchronous component operates in parallel with, and independent of, the first asynchronous component, and wherein the second asynchronous component is operative only after all the plurality of plug-in components of the customized pipeline have performed their respective tasks, the second asynchronous component configured to have no control over a processing of a request associated with the respective tasks performed by the plurality of plug-in components of the customized pipeline.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for providing digital rights management services are disclosed. Such a system includes a service program that provides a processing framework for performing a digital rights management service, such as publishing or licensing rights managed digital content. A plurality of plug-in components are provided, each of which performs a respective task associated with the digital rights management service. The plug-in components are integrated into the processing framework according to predefined sets of interface rules.
-
Citations
22 Claims
-
1. A system implemented at least in part by a computing device for providing digital rights management services, the system comprising:
-
a processor; and a plurality of customized pipelines, implemented on the processor, that are unconditionally independent of one another, each customized pipeline is configured for providing a specific digital rights management service to a customer by executing a plurality of plug-in components of the customized pipeline in a sequential order from start to finish, the customized pipeline comprising; a service program that provides a processing framework for performing the specific digital rights management service;
wherein plug-in options are selected from amongst a plurality of optional plug-in modular components,the plurality of plug-in components corresponding to the selected plug-in options are integrated into the processing framework according to a respective predefined set of interface rules, each of the plurality of plug-in components is denied direct access to data structures of the service program, the denial of direct access being implemented by controlling data interaction between each of the plurality of plug-in components and the service program, each of the plurality of plug-in components is validated for providing trust between the service program and each of the plurality of plug-in components, a first asynchronous component that is appended to an end point of the customized pipeline in the plurality of customized pipelines, the end point selected such that the first asynchronous component is operative only after all the plurality of plug-in components of the customized pipeline have performed their respective tasks, and wherein the first asynchronous component is configured to have no control over a processing of a request associated with the respective tasks performed by the plurality of plug-in components of the customized pipeline, and a second asynchronous component that is appended to the end point of the customized pipeline wherein the second asynchronous component operates in parallel with, and independent of, the first asynchronous component, and wherein the second asynchronous component is operative only after all the plurality of plug-in components of the customized pipeline have performed their respective tasks, the second asynchronous component configured to have no control over a processing of a request associated with the respective tasks performed by the plurality of plug-in components of the customized pipeline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for providing digital rights management (DRM) services to a plurality of users, the method comprising:
-
configuring, on a processor, a first pipeline in a plurality of customized pipelines for executing a first set of DRM plug-in components of the first pipeline in a sequential order from start to finish; configuring a second pipeline in the plurality of customized pipelines for executing a second set of DRM plug-in components of the second pipeline in a sequential order from start to finish, wherein the first pipeline and the second pipeline are unconditionally independent of one another; providing a service program that provides a processing framework for performing a specific digital rights management service; providing to a first user of the DRM services, a plurality of DRM plug-in options; selecting a first set of plug-in options from amongst the plurality of DRM plug-in options; configuring, on the processor, the first pipeline by integrating the first set of DRM plug-in components corresponding to the first set of plug-in options selected by the first user from the plurality of DRM plug-in options; providing to a second user of the DRM services, the plurality of DRM plug-in options; selecting a second set of plug-in options from amongst the plurality of DRM plug-in options; configuring the second pipeline by integrating the second set of DRM plug-in components corresponding to the second set of plug-in options selected by the second user from the plurality of DRM plug-in options, wherein the second set of DRM plug-in components is different than the first set of DRM plug-in components, and wherein the first and second set of DRM plug-in components corresponding to the selected plug-in options are integrated into the processing framework according to a respective predefined set of interface rules; denying each DRM plug-in component in the first and second set of DRM plug-in components direct access to data structures of the service program, the denial of direct access being implemented by controlling data interaction between each DRM plug-in component and the service program; validating each DRM plug-in component in the first and second set of DRM plug-in components for providing trust between the service program and each DRM plug-in component; appending a first asynchronous component to an end point of the first pipeline in the plurality of customized pipelines, wherein the end point is selected such that the first asynchronous component is operative only after all the first set of DRM plug-in components of the first pipeline have performed their respective tasks, and the first asynchronous component is configured to have no control over a processing of a request associated with the respective tasks performed by the first set of DRM plug-in components of the first pipeline; and appending a second asynchronous component to the end point of the first pipeline, wherein the second asynchronous component operates in parallel with, and independent of, the first asynchronous component, and the second asynchronous component is operative only after all the first set of DRM plug-in components of the first pipeline have performed their respective tasks, the second asynchronous component configured to have no control over a processing of a request associated with the respective tasks performed by the first set of DRM plug-in components of the first pipeline. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification