Skip to content

Architecture

HomeCloud splits control plane and data plane:

Layer Components Auth
Control plane homecloud-api, homecloud-ui JWT (users)
Data plane SO, MQ, MDB, Secrets gateways Access Key + HMAC signature

DNS zones

For apex holab.abrdns.com:

console.holab.abrdns.com     → API + UI
so.holab.abrdns.com          → Object storage API
{bucket}.web.holab.abrdns.com → Static websites
mq.holab.abrdns.com          → Message queues
mdb.holab.abrdns.com         → Databases
secrets.holab.abrdns.com     → Secrets

Request signing (data plane)

StringToSign = METHOD + "\n" + PATH + "\n" + TIMESTAMP + "\n" + ACCOUNT_ID
Signature = HMAC-SHA256(secret, StringToSign)

Headers: X-Homecloud-Access-Key-Id, X-Homecloud-Date, X-Homecloud-Signature

Repositories

See Implementation governance in homecloud-infra.