SSO certificates, rotated and verified before anything breaks.
Kunjae runs as a scheduled job inside your own Azure tenant. It rotates the SSO signing certificates in Entra ID and on every app that trusts them, then validates the sign‑in before it calls the rotation done.
For Microsoft Entra ID, with connectors for Slack, Datadog, PagerDuty, Notion, Salesforce and Okta.
02:00:07slack · step 05/09create certificate in Entra ID
Creating the new signing certificate.
An expired signing certificate is an SSO outage on a date you already knew
Declare your apps in one YAML file, and Kunjae rotates them one by one as each reaches your rotation threshold. By hand, rotation rests on a reminder and one person’s memory.
Every run proves the sign-in, then tells you.
| 02:00:01 | 01 | acquire Entra ID token | ok |
| 02:00:02 | 02 | cache session, read current signing state | ok |
| 02:00:04 | 03 | authenticate | ok |
| 02:00:05 | 04 | verify session | ok |
| 02:00:07 | 05 | create certificate in Entra ID | ok |
| 02:00:09 | 06 | activate certificate in Entra ID | ok |
| 02:00:11 | 07 | verify certificate is active in Entra ID | ok |
| 02:00:19 | 08 | save certificate, validate SSO | validated |
| 02:00:19 | 09 | delete local certificate | ok |
Rotation complete for platform 'slack'.
All steps passed. SSO validated (step 08).
run_id: 7f3c2a91
Previous certificate: superseded in Entra ID, expiry 2026-11-07
State: New certificate is active in Entra ID and on the platform.
Manual action: None.
Set up once
Kunjae reads one plain file that you keep in version control. Deploy the Azure resources with the Bicep templates, then fill it in.
- Declare your appsOne entry per connector.
- Point secrets at Key VaultEach
${...}resolves at runtime and never lands in the file. - Set your thresholdsWhen to rotate, and when to warn.
1platforms:2 - name: slack3 driver: slack_v14 credentials:5 username: ${SLACK_USERNAME}6 password: ${SLACK_PASSWORD}7 - name: datadog8 driver: datadog_v19 credentials:10 api_key: ${DATADOG_API_KEY}11 12rotation:13 trigger_days: 6014 warn_days: 14
Self-hosted, with no vendor in the data path
For your security review
We store none of your data, so your team reviews the software, not a vendor service.
- Architecture and design documents
- In-depth documents on what runs where and how each rotation works.
- Test it in your environment
- Your security team can test the software inside your own tenant.
- Signed container images
- Pulled from our authenticated registry at deploy time, with a software bill of materials.
- License checked locally
- The license is a signed key verified inside your tenant.
Six connectors built
Start free with Community Edition
Community Edition is free. Paid editions add connectors and support. Pricing announced before general availability.
Community Edition
Pending release
Free
- Up to 5 connectors per Microsoft Entra tenant
- Slack, Datadog and PagerDuty
- Two more connectors, to be chosen by community vote
Business
Q1 2027
Price announced before release
- Up to 20 connectors
- Email support
Each app entry in your configuration counts as one connector.
Retire the expiry reminder
Questions about editions, connectors or your security review? We’ll answer them directly.