A core challenge that Engine solves is providing a secure way to connect and interact with physical spaces. Deployments form an interface that isolates individual hardware components and subsystems of a building from direct communications. Connectivity to these is then provided by a modern API service that supports regular patching and updates to safely support integration.
Engine API's and static resources are served over HTTPS only.
Unique Diffie-Hellman parameters are generated for each new server.
All API requests use short-lived auth tokens obtained via OAuth2.
Authentication for token creation takes place via an external identify service (SSO). Options include SAML2 and OAuth2.
No Engine components store or have access to SSO user credentials at any point during authentication.
In cases where an external identify provider is not available (dev / staging environments), local role-based accounts may be created. Credentials for these are encrypted using scrypt (256 bit AES using GCM ciphers) prior to storage. No “default” passwords exist for these.
No information is ever transmitted externally by the platform. Default deployment configurations do not include any remote telemetry, data collection or remote components.
Information collected by device and service integrations is dependent on driver functionality and versions used. All drivers are open source and individually auditable within each deployment.