Patent Publication Number: US-2004044910-A1

Title: Method and system for access in open service architecture

Description:
FIELD AND BACKGROUND OF THE INVENTION  
       [0001] The invention generally relates to open service architecture such as Parlay or OSA (Open Service Architecture). OSA of 3GPP (Third Generation Partnership Program) is similar to Parlay. In a Parlay architecture, Parlay Application Programming Interfaces (APIs) are used to provide service control in any type of network.  
       [0002] Parlay APIs are specified by the Parlay Group Inc. The Parlay Group is an open, multi-vendor forum and has been formed with the intention to increase the number of communications applications by specifying and promoting open Application Programming Interfaces that intimately link IT applications with the capabilities of the communications world. The Parlay Group creates open, technology independent Application Programming Interfaces (APIs) which enable IT companies, ASPs (Application Service Providers), ISV&#39;s, Internet Companies, EBusiness Companies, software creators, service bureaus, and large and small enterprises as well as network providers, network equipment vendors and application suppliers to develop applications across multiple networks. Furthermore, the Group promotes the use of Parlay APIs and ultimate standardization.  
       [0003] Parlay is an umbrella architecture which provides network independence and application portability. The Parlay APIs will enable off-the-shelf network applications/components (e.g. messaging, mobility, end-to-end quality of service, etc.) to be developed by application providers (ISVs/ASPs) independent of the underlying voice/multimedia network.  
       [0004] Parlay APIs can be used to discover and access network services with easy method calls that are passed over a middleware layer providing method call transportation. Example middlewares are Common Object Request Broker Architecture (CORBA) and Java Remote Method Invocation (Java RMI) technologies. These technologies use some transport layer technology for the actual transportation between network elements. The IP (Internet Protocol) protocol may be used for this purpose.  
       [0005] A Parlay client application (CA) entity (an entity in Parlay API specification) issues Parlay API method calls to other Parlay entities, e.g. Parlay framework and Parlay service entities. All possible method calls between these entities and their semantics are described e.g. in Parlay 2.1 specifications. A CA entity can be owned by a third party which can produce value added services by using functionality provided by a network operator, e.g. create calls or query location information from the network by using Parlay API method calls.  
       [0006]FIG. 2 illustrates the basic architecture of Parlay APIs. The Parlay APIs are object-oriented and may be located in several interfaces  12 ,  15 ,  16 ,  17 ,  18 , and  21  as shown in FIG. 2. Further, network dependent interface(s)  22  are provided. Phase 1 of Parlay specification addressed public interfaces  15 ,  17  between enterprise-based client applications  14  and Parlay services  19  (interface  17 ) and the Parlay Framework  11  (interface  15 ). Parlay Service Interfaces  17  offer applications access to a range of network capabilities of one or more networks  23 .  
       [0007] Parlay Framework Interfaces provide ‘surround’ capabilities necessary for the Service Interfaces to be open, secure, resilient and manageable.  
       [0008] In Phase 2 of Parlay specification, additional public interfaces  12 ,  16 ,  18 , and  21  are introduced to support administrative functions within the enterprise (interfaces  12  and  18 ) and to permit the supply of Parlay services by third party vendors (interfaces  16  &amp;  21 ). In summary, the client application view of the framework  11  is represented by interfaces  15  and  17 , while the Parlay service view of the framework  11  is represented by interfaces  16  and  21 . Element  10  represents a framework operator administrator. Element  13  symbolizes an enterprise operator administration tool. Element  20  is a service supplier administration tool.  
       SUMMARY OF THE INVENTION  
       [0009] The present invention aims at improving Parlay access control.  
       [0010] The present invention provides a method and/or system as defined in the independent claims. Some preferred implementations of the invention are defined in the dependent claims. Further, the invention proposes a new network equipment in accordance with any one of the network equipment claims.  
       [0011] Generally, the present invention relates to open service architecture or Parlay API. The invention further relates to the manner of controlling access to Parlay service entities and thus provides a solution for a Parlay access control.  
       [0012] The invention generally proposes combining of gateway and Parlay framework entities for improved access control.  
       [0013] In Parlay API there is a framework and one or more service entities (i.e. a set of service entities). A client application establishes contact to the network to be controlled via the framework. It authenticates itself for the framework, discovers services and signs a service agreement. After these procedures the client can start using the actual Parlay service entities.  
       [0014] The invention provides an access expiry mechanism for Parlay APIs.  
       [0015] The gateway entity, e.g. Internet protocol (IP) firewall can be used to restrict access in an IP network environment.  
       [0016] Some preferred features of the invention (isolated and/or in arbitrary combination, without restricting the invention to any of these features) are:  
       [0017] the invention relates to service agreement;  
       [0018] the signer is an external service providers application trying to access operators service capabilities;  
       [0019] the context of the invention is Parlay API and access to service entities;  
       [0020] there is a framework;  
       [0021] the signer contacts the framework, and not the services, for access request;  
       [0022] the services forward no data to the framework;  
       [0023] the invention primarily, and preferably exclusively, relates to access servers and end-user access. (End-users may access Client Applications (CA) in Parlay independent way and CA uses Parlay to access telecom network services).  
       [0024] The Parlay service access can now be controlled, preferably with the help of the gateway entity, e.g. IP firewall. For example, if a Client Application (CA) has obtained an object reference of a generic call control service for a certain time, e.g. 24 hours, the gateway, e.g. IP firewall can guarantee that the CA cannot access it after this period; i.e. a CA must obey the agreement it has made when obtaining the reference to this service from the Parlay framework. In addition, a CA cannot send method calls to an arbitrary Parlay service entity and hence cause unwanted overload to that service.  
       [0025] Client Applications thus cannot use a service longer that they have promised to and they can access services only after they have signed the service agreement. 
     
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
     [0026]FIG. 1 shows an embodiment in accordance with the present invention; and  
     [0027]FIG. 2 illustrates the basic structure of a Parlay architecture. 
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION  
     [0028] In the embodiment shown in FIG. 1, one or more CAs (Client Applications) is running on a third party server  1  connectable via Internet (IP-based network)  2  to a network equipment  3 . The CA and/or the server  1  running the CA represents a client entity which preferably is an addressable node. The client entity need not necessarily be a separate network element or equipment but can also be implemented as part of or in another network equipment. Within a given IP node there can e.g. be a multitude of client entities having different security parameters (e.g. algorithms or different keys). For instance, in an IP node, there can be provided two or more client processes having different IPSEC security parameters.  
     [0029] The CA can access Parlay Service entities  5 ,  6 ,  7  through the network equipment (entity)  3  which is a combined gateway, preferably a firewall, in particular a IP firewall, and Parlay framework entity. The number of Parlay Service entities or offered Parlay services is arbitrary and may also be higher or lower than the three shown entities  5  to  7 .  
     [0030] According to this preferred implementation, the network equipment  3  combines gateway (e.g. IP firewall) and Parlay framework functionalities.  
     [0031] According to another embodiment of the invention, the gateway entity (e.g. IP firewall) and Parlay framework functionalities may be implemented in separate network equipments provided that the Parlay Framework can control the gateway by using an appropriate protocol.  
     [0032] The Parlay services  5 ,  6 , and/or  7  are accessible from network equipment  3  via an operator&#39;s core network  4  which may be packet-based, preferably IP-based (IP, Internet Protocol).  
     [0033] The Parlay elements  3 ,  5 ,  6 ,  7  provide Parlay APIs which may be Service Interfaces or Framework Interfaces (see e.g. FIG. 2). The Service Interfaces of service elements  5  to  7  offer applications access to a range of network capabilities and information, whereas the Framework Interfaces provide the supporting capabilities necessary for the Service Interfaces to be secure, and manageable. The functions provided by the service interfaces allow access to traditional network capabilities such as call management, messaging, and user interaction.  
     [0034] The service interfaces may also include generic application interfaces to ease the deployment of communications applications. Parlay network services  5  to  7  may also provide Generic charging, Enhancement of user profile and subscription data handling, Policy management.  
     [0035] Functions provided via the framework interfaces of equipment  3  may include Service Registration and subscription and discovery, Authentication and Authorisation, Integrity Management, Management support. Generic Parlay application interfaces may be used for Mobile E-pay.  
     [0036] The implementation of Parlay is based on application servers outside the network domain, running Parlay applications. A Parlay Gateway, provided by the network operator, may ensure secure, manageable access to capabilities in the service provider&#39;s network.  
     [0037] One of the preferred aspects of this embodiment of the invention is to control the gateway or firewall in equipment  3  from the Parlay framework likewise included in equipment  3 , preferably in such a manner that when authentication and service agreement signing has been performed by the client, the gateway or firewall will grant access to services  5 ,  6 , and/or  7  via the firewall for the client. The framework can also control an IPsec security gateway (IPsec=IP Security Protocol) so that a security association is used to convey the operations from the client to the service as long as the agreement is valid. After that the security policy may be changed so that all traffic from the client address to the service is ignored.  
     [0038] Parlay service access can be controlled by using the gateway which preferably is an IP gateway, preferably an IP-based firewall. Parlay framework entity controls the gateway and their physical location is, in this embodiment, in the same equipment  3 . When a client application (which is possibly owned by a third party) e.g. of server  1  authenticates itself with the Parlay framework entity  3  and subsequently makes the discovery procedure to locate the needed service  3 ,  4 ,  5  and furthermore signs the service agreement (e.g. as specified in Parlay 2.1 API specifications), the IP firewall rules are modified to allow access from this third party CA&#39;s IP address to the IP address of the Parlay Service entity  3 ,  4 ,  5 . This is how the access is granted.  
     [0039] It should also be appreciated that the gateway, e.g. IP firewall and the Parlay framework entity could be located in separate physical nodes, which could have e.g. separate IP addresses. In this embodiment of the invention, the Parlay framework node has a message interface to the IP firewall. The Parlay framework node could after successful authentication and service agreement signing with the CA, issue management commands to the IP firewall to modify the said firewall rules. The management commands could be issued e.g. by opening a command line interface session to the firewall. Similarly, network management protocol interface between the Parlay framework node and the IP firewall could be applied for the task.  
     [0040] To restrict the access between CA and the Service entity, the IP firewall rules can be modified to reject packets from the IP address of the CA to the IP address of the Parlay Service entity.  
     [0041] Furthermore, if protection against sender&#39;s IP address spoofing and/or data confidentiality is needed, the IP firewall may be implemented to support IPsec protocol (specified by the Internet Engineering Task Force (IETF)).  
     [0042] This means, for instance, that the firewall is implementing a security gateway similar to the one in IPSEC architecture. The firewall could also have at least one associated IPSEC security association database (SAD) and security policy database (SPD).  
     [0043] In IPSEC, the security policy database contains the criteria for the protection offered to different datagrams. For instance, each datagram has three processing options: it may be protected by IPSEC, it may pass without further protection or it may be discarded. The security association database contains the parameters for the currently active security associations. The entries in the security association database contain the destination IP address, IPSEC protocol and security parameter index, the sequence number counter, the sequence number counter overflow flag, anti-replay counter for inbound datagrams, authentication headers (AH) authentication algorithm and its parameters, encapsulating security payload (ESP) encryption and authentication algorithm and their parameters, the hard and soft lifetimes, the protocol mode and path MTU value along with path MTU aging information.  
     [0044] In IPSEC, the security association is a secure unidirectional logical connection between two network entities. All IP datagrams using the same security association are offered equal protection. A security association is uniquely defined by the triplet comprising security parameter index that is a 32 bit long identifier, a destination IP address and a security protocol which is either AH or ESP. The security associations for a datagram comprise the security protocols in transport mode on the IP datagrams. For instance, for given datagrams both authentication protocols and encryption could be applied.  
     [0045] For instance, when the authentication of the CA has been performed and the service agreement has been signed, the Parlay framework could issue one or more instructions towards the IPSEC nodes to modify the behaviour so that inbound messages (datagrams) coming from the CA can pass the security gateway and can thus be received by the service entities. When the service agreement expires, the inbound datagrams can no longer be passed.  
     [0046] This means, for instance, that after the service agreement signing by the command of the Parlay framework node, the SPD modifies its security policies concerning the IP address of the CA. When the service agreement has been signed, the policy is modified so that inbound packets from the CA are allowed to pass to the service entities. Alternatively, instead of the IP address of the CA, the IP address of a security gateway between the CA and the security gateway of the core network could be used.  
     [0047] In accordance with IPSEC, an inbound IP datagram is matched against the security association database using the triplet comprising security parameter index, destination IP address and security protocol. IPSEC processing is applied to the IP datagram using the security associtions parameters until all the security associations are processed.  
     [0048] When the IPSEC processing is complete both the IP datagram and the security association processing order are looked up in the security policy database to ensure that a security policy exist for the IP datagram and the processed IPSEC protocols. If the security policy entry exists, the higher level packet or the IP datagram received from a tunnel mode security association is processed further.  
     [0049] Thus, whenever a service agreement is effective between the CA and the Parlay framework node, for instance, the security policy database is in the state that IPSEC protection is applied for the datagrams from the CA (or its corresponding security gateway). By having the IPSEC effective means, for instance, that the inbound datagrams are processed in accordance with the triplet comprising security parameter index, destination IP address and security protocol carried in the datagram, which specify the security associations applicable for the datagram.  
     [0050] Whenever a service agreement is not effective between the CA and the Parlay framework node, for instance, the security policy database is in the state that datagrams from the CA (or its corresponding security gateway) are discarded. The exchange of the keys for the security associations for the CA can be applied either beforehand or using key exchange protocols.  
     [0051] In the embodiment shown in FIG. 1, the server  1  may be a server, e.g. a UNIX-based server, of an enterprise operator and includes one or more application programs (client applications) representing Parlay client software. The server  1  communicates with network equipment  3  via Internet  2  preferably using an IPsec tunnel transmitting the packets in encrypted form. The packets may be transmitted based on any suitable protocol such as IIOP, TCP, IP.  
     [0052] The communication between network equipment  3  and one or more selected Parlay services  5 ,  6  and/or  7  is performed via the core network  4  of the network operator and thus is performed in the network operator&#39;s domain. The core network may be a backbone network and may transmit the information in suitable form, preferably using IP protocol. In this core network, packets are preferably transmitted in non-encrypted form. Security against unauthorised interception is provided by the gateway (e.g. firewall) of network equipment  3  and possibly further gateways (firewalls) as appropriate.  
     [0053] Although the invention has been described above by mainly referring to Parlay as an example of open service architecture, the invention may also be implemented in any other form of open system architecture, with access control provided by means of a gateway or firewall.  
     [0054] The present invention thus provides a method, system and/or network equipment for access control in an open service architecture, preferably a Parlay architecture. The open service architecture may also be of other type such as OSA (Open Service Architecture). It should be appreciated that the concept of open service architecture applies to any solution where an application interface is used by applications to control a network and thus implement services to the network. A framework entity includes or co-operates with a gateway entity. A client application intending to use a service of the open service architecture signs a service agreement with the Framework. The Framework modifies gateway settings (rules) according to the signed service agreement. The Parlay Framework thus controls the gateway and sets the rules accordingly after the service agreement is signed with the Client Application (i.e. adds a rule to allow IP packets from the IP address of the client application to the IP address of the service entity). The gateway entity restricts the service use in accordance with the signed service agreement. After expiry of the service agreement, the gateway entity inhibits further use of the service by the client application. The framework entity and gateway entity may preferably be arranged within the same network equipment.  
     [0055] The gateway entity can e.g. be a firewall performing packet filtering or a security gateway comprising encryption and authentication protocol processing.