ππ»ββοΈ IntroductionΒΆ
π― PurposeΒΆ
CertBob is a certificate manager that sits in front of a smallstep CA and makes issuing client certificates painless for end users.
- Self-service issuanceAuthenticated users request their own certificates via a web interface, without involving an operator.
- Chat-driven workflowsUsers already signed into the companyβs chat tool can issue certificates via a simple slash command.
- CA abstractionCertBob hides the CAβs provisioner password and signing details behind a friendly front door.
β¨ FeaturesΒΆ
CertBob provides the following features:
- DockerDeployable as a single on-premise Docker container β see π Deployment.
- OIDC & local authInteractive users can authenticate via an existing OIDC IdP (SSO) or against a local user list.
- Chat tool integrationIssues certificates via a slash command in your chat tool of choice (e.g. Mattermost, Slack, Teams), leveraging the userβs existing session.
- Email deliveryOptionally ships the issued PKCS #12 bundle to the user via SMTP instead of an in-browser download.
- PKCS #12Certificates are bundled as π PKCS #12 files that can be imported directly into many OS & browsers.
- CooldownsPer-user cooldowns prevent accidental certificate churn and abuse.
See also
CertBob fits nicely with our CA service β your PKI, without the overhead.
π€·π»ββοΈ RationaleΒΆ
As mentioned in the mTLS chapter of the Handbook of confirm IT, weβre making extensive use of mTLS.
This is all fine and awesome, but certificate handling can be a PITA. Thus we had to come up with a maintainable solution to issue client certificates.
Because all of our authorised users already had access to a company chat tool, we thought it would be a nice idea to issue certificates directly from there.
This is how CertBob was born. Since then weβve continuously improved and extended CertBob β including support for additional chat tools such as Slack and Microsoft Teams.