Service Accounts
Service accounts are non-human identities designed for automation, CI/CD pipelines, and backend services. They provide a structured way to manage programmatic access to Tenuo Cloud.
Why Service Accounts?
| Feature | API Keys | Service Accounts |
|---|---|---|
| Identity tracking | Limited | Full audit trail |
| Key rotation | Manual | Managed |
| Multiple keys | No | Yes |
| Descriptive metadata | Name only | Name, description, labels |
| Disabling | Revoke only | Disable/enable |
Creating a Service Account
Navigate to Service Accounts
Click Service Accounts in the sidebar
Create Service Account
Click Create Service Account
Configure
- Name: A descriptive name (e.g., "production-authorizer")
- Description: What this service account is used for
Create
Click Create to create the service account
Managing Keys
Each service account can have multiple API keys, making rotation easier.
Create a Key
- Click on the service account
- Click Create Key
- Select scopes for the key
- Copy the key immediately - it won't be shown again
Rotate Keys
Best practice for key rotation:
- Create a new key for the service account
- Update your services to use the new key
- Verify the new key is working
- Revoke the old key
This allows zero-downtime rotation.
Revoke a Key
- Click on the service account
- Find the key in the keys list
- Click Revoke
Service Account States
| State | Description |
|---|---|
| Active | Service account and its keys can be used normally |
| Disabled | All keys are temporarily disabled, no API access |
Disable a Service Account
Temporarily block all access without revoking keys:
- Click on the service account
- Click Disable
- All keys stop working immediately
Enable a Service Account
Re-enable a disabled service account:
- Click on the service account
- Click Enable
- All non-revoked keys work again
Use Cases
CI/CD Pipelines
Create a service account for your CI/CD system:
- Name:
github-actionsorjenkins - Scope:
adminfor deployment scripts - Rotate keys when team members leave
Authorizer Services
Create a service account for each authorizer deployment:
- Name:
authorizer-productionorauthorizer-staging - Scope:
authorizer(read SRL only) - Multiple keys for canary deployments
Monitoring Systems
Create a service account for monitoring:
- Name:
datadog-integrationorprometheus - Scope:
read-only - Used for metrics and health checks
Partner Integrations
Create service accounts for external partners:
- Separate service account per partner
- Easy to disable if partnership ends
- Clear audit trail per partner
Audit Trail
All operations by service accounts are logged with:
- Service account ID and name
- API key ID used
- Operation performed
- Timestamp
- IP address
View in Audit Log and filter by service account.
Best Practices
One service account per service
Don't share service accounts between different systems. This improves security and audit clarity.
Use descriptive names
Name service accounts after their purpose: authorizer-prod, cicd-github, monitoring
Implement key rotation
Rotate keys every 30-90 days. Service accounts make this easy with multiple keys.
Disable instead of delete
When access should be temporarily blocked, disable the service account. Only delete when you're sure it's no longer needed.
Monitor usage
Check the audit log for unusual activity from service accounts.
Deleting a Service Account
Deleting a service account revokes all its keys and cannot be undone.
- Click on the service account
- Click Delete
- Confirm the deletion
All keys associated with the service account will stop working immediately.