Open-source platforma pro správu identit strojů
3Key, nyní OmniTrust, vyvíjí OmniTrust ILM, open-source platformu pro správu životního cyklu certifikátů, kryptografických klíčů a tajemství. Firmy ji používají k vydávání a obnově certifikátů, k evidenci klíčů napříč úložišti i k podepisování. Platforma je dostupná pod licencí Apache 2.0, nasazuje se v cloudu i v prostředí zákazníků.
Od roku 2020 se podílíme na vývoji jádra platformy, jejích konektorů a podepisovacích služeb. Naše práce zahrnuje analýzu, návrh, implementaci, testy i podporu při začleňování změn do hlavní větve projektu.
Zjednodušené funkční schéma. Nezobrazuje síťovou topologii ani konkrétní konfiguraci nasazení.
01 / Platforma jako SaaS v Azure
Platforma vznikla pro nasazení u zákazníka. Aby ji 3Key mohl nabízet i jako službu, připravili jsme analýzu a realizovali převod na multi-tenant SaaS v Azure.
Analýza popsala varianty provisioningu, infrastruktury jako kódu a komunikace mezi centrální platformou a zákaznickými prostředími. Na ní navázala implementace: oddělené nasazení tenantů přes Helm a Kustomize, automatické zřízení messagingu v RabbitMQ, proxy pro napojení zákaznických prostředí a úpravy jádra pro provoz více tenantů. Součástí byla i podpora při začlenění SaaS větve zpět do hlavního vývoje, revize kódu a oprava nálezů ze statické analýzy.
02 / Podepisování a časová razítka
Elektronický podpis potřebuje bezpečně uložené klíče, ověřitelný čas a standardní rozhraní pro aplikace. Pro 3Key jsme vyvinuli několik navazujících částí:
- Vzdálené podepisování přes CSC API. Implementace standardu Cloud Signature Consortium: správa přihlašovacích údajů, generování klíčů, podpis hashe dokumentu, rozšíření AdES podpisů a autentizace přes Keycloak.
- Rozšíření podepisovacího serveru. Podpisy PAdES a XAdES včetně viditelného podpisu, CMS, hashování na straně klienta, dávkové podepisování, raw a PKCS#1 podpisy a pooly dlouhodobých klíčů.
- Podepisování v platformě ILM. Podepisovací engine, podepisovací profily a záznamy o podpisech, služba časových razítek (TSA) s hlídáním přesnosti času a PKCS#11 konektor pro hardwarové moduly.
03 / Konektory, protokoly a řízení přístupu
Platformu propojujeme s certifikačními autoritami a úložišti klíčů. Naše práce zahrnuje:
- konektory na certifikační autority Microsoft AD CS a na HashiCorp Vault, kryptografické tokeny pro vzdálené podepisování a podporu RA profilů,
- protokoly CMP a SCEP pro automatické vydávání certifikátů, včetně podpory nové verze kryptografického poskytovatele,
- řízení přístupu na úrovni jednotlivých objektů a zabezpečení služeb platformy,
- správu klíčů a tokenů, tedy profily tokenů, vytváření instancí a úpravy správy klíčů.
Technologie a naše role
| Oblast | Technologie | Co dodáváme |
|---|---|---|
| Jádro a konektory | Java, Spring, REST API | Vývoj jádra, konektorů a integračních testů |
| Protokoly | CMP, SCEP, CSC API | Implementaci standardů pro vydávání certifikátů a podepisování |
| Podepisování | PAdES, XAdES, CMS, TSA, PKCS#11 | Podepisovací služby, časová razítka a napojení HSM |
| Identita a přístup | Keycloak, RBAC/ABAC | Autentizaci a autorizaci na úrovni objektů |
| SaaS | Azure, AKS, Helm, Kustomize, RabbitMQ | Multi-tenant nasazení a provoz |
Co spolupráce přináší
Naše práce rozšířila platformu o konektory, podepisovací služby a podporu provozu jako SaaS. Na vývoji spolupracujeme přímo s týmem 3Key a změny začleňujeme do společného open-source projektu.
„V Cloudfield pro nás vyvíjejí aplikace pro oblast bezpečnosti, PKI a zabezpečení dat (včetně oblasti PCI), které provozujeme jak v našem cloudu, tak i v prostředí koncových zákazníků.“
— Roman Cinkais, CEO, 3Key (nyní OmniTrust)
