Service module
- is a package that includes templates and software that provides or consume a service.
Service module must be registered in privatix core database
and make use of Privatix core API to benefit from functionality already provided by Privatix core.
Templates
- unique offering and access template
Service module
- software that consumes Service API
to automate service life-cycle. Can be standalone or communicate with Privatix core
on one side and with 3rd party software
on another to provide particular service. (e.g. adapter for VPN server / adapter for VPN client).
AuthClient
- verifies password for a given client key.
SetProductConfig
- sets product configuration for access messages.
StartSession
- creates client session.
StopSession
- stops client session.
UpdateSession
- updates usage for client session
GetAccess
- returns an access message for a given client key.
StartSession
- creates client session.
StopSession
- stops client session.
UpdateSession
- updates usage for client session
Privatix Core
Agent generates credentials on new client order.
Client receives those credentials in access message.
Client's Service adapter authenticates to Agent's Service adapter and provides those credentials.
Service adapter pass credentials to Privatix core Agent using AuthClient
passing credentials.
Client gained access to service
Call UpdateSession
to update current usage. In response service status returned. It can be used to control service access.
Agent calls StartSession
to register start of session
StartSession
, when service status "activating"
StopSession
, when service status "suspending" or "terminating"
GetAccess
method used to get access message. This message used to get all data needed by 3rd party software to connect to Agent and start using a service (incl. credentials, URLs of services, configuration parameters, etc)
Service adapter stores service configuration in products
database table config
field. Service adapter may push some data (usually settings) to core
. It will be transferred to Client in access message and get known to client service adapter using GetAccess
method.
To make service modules easily added to Privatix core
they should comply with Service module conventions. They include some conventions that should be follow to guarantee compatibility and reuse as much as possible functionality of Privatix core.