Note: The support for this product has been discontinued from Mar 31, 2023. FIDO Device Onboard (FDO) is functionally compatible with Secure Device Onboard (SDO). We recommend users to switch to FDO components (https://github.com/secure-device-onboard/pri-fidoiot).
The Secure Device Onboard All-In-One demo is designed to run different Secure Device Onboard services like Manufacturer, IoT Platform SDK Service and Rendezvous Service from a single docker instance. The purpose of this demo is to fast-track demonstration of Secure Device Onboard protocol using different client implementations.
NOTE: The All-In-One demo is provided solely to demonstrate out-of-box operation of Secure Device Onboard components. This demo is not recommended for use in any production capacity. Appropriate security measures with respect to key-store management and configuration management should be considered while performing production deployment of any Secure Device Onboard component.
The following are the system constraints for the All-in-One demo.
- Operating System: Ubuntu* 20.04
- Java* Development Kit 11
- Apache Maven* 3.5.4 (Optional) software for building the demo from source
- Java IDE (Optional) for convenience in modifying the source code
- Docker 19.03.15
- Docker compose 1.21.2
- Haveged
Appropriate proxy configuration should be updated in _JAVA_OPTIONS
environment variable. (Mandatory, if you are working behind a proxy.)
Update the proxy information in _JAVA_OPTIONS as _JAVA_OPTIONS=-Dhttp.proxyHost=http_proxy_host -Dhttp.proxyPort=http_proxy_port -Dhttps.proxyHost=https_proxy_host -Dhttps.proxyPort=https_proxy_port
.
The all-in-one-demo repository is structured into following 2 folders.
-
services
: The implementation for All-In-One demo services, which includes messages redirection as well automatic extension of vouchers and scheduling TO0 requests for them. -
container
: The packaging of the demo is managed here. The overlay folder contains the configuration and data files that needs to be copied to final demo package.
The All-In-One demo is dependent on following repositories.
-
iot-platform-sdk
: https://github.com/secure-device-onboard/iot-platform-sdk -
supply-chain-tools
: https://github.com/secure-device-onboard/supply-chain-tools -
rendezvous-service
: https://github.com/secure-device-onboard/rendezvous-service
These repositories should be built using 'mvn clean install' command on the host machine before building all-in-one-demo repository using following command.
mvn clean install
Alternatively, you have to option to build All-in-One demo using Docker.Read more
cd build/
docker-compose up --build
After successful build, the demo package is available at demo/aio.tar.gz.
To run the demo, extract the demo package and follow the README.md.