Policy-based storage service federation method and apparatus
A method for performing policy-based storage service federation can include: identifying whether or not a policy is applicable for a request received from a client by a request interceptor; obtaining a policy by evaluating request information relating to the request and a policy status; and obtaining a customized set of storage services based on the policy. The method can provide a framework corresponding to a storage federation layer to allow fast application development.
1. A method of performing policy-based storage service federation, the method comprising:
identifying whether or not a policy is applicable for a request received from a client by a request interceptor;
obtaining the policy by evaluating request information relating to the request and a policy status;
obtaining a customized set of storage services based on the policy;
requesting a service credential for the set of storage services;
authenticating the service credential;
adding service information and authorization to the request and transmitting the request to a storage manager;
transmitting the service information to an instance manager, the transmitting performed by a virtual storage resource interface;
discovering a service implementation class for each service based on the service information;
creating a service implementation class instance based on the discovered service implementation class and transmitting the service implementation class instance to the virtual storage resource interface; and
transmitting the request, a service privilege associated with the authorization, and the service implementation class instance to a task manager, the transmitting performed by the virtual storage resource interface.
2. The method of performing policy-based storage service federation according to claim 1 , further comprising:
processing tasks for a plurality of asynchronously accessed services and merging responses of the services, the processing and merging performed by the task manager; and
generating a final response for the client based on a response received from the task manager, the generating of the final response performed by the virtual storage resource interface.