Overview
All Xloud platform services expose REST APIs secured by Xloud Identity (Keystone). Authentication is token-based with configurable expiry, and the platform enforces authorization through a role-based access control (RBAC) policy engine. This page covers the full API security stack: authentication flows, application credentials, and rate limiting. It also covers audit logging, CORS configuration, and service-to-service mutual TLS.Prerequisites
- An active Xloud account with the
memberoradminrole - CLI tools installed:
openstackCLI (setup guide) - For application credentials: access to Project → Identity → Application Credentials
Token-Based Authentication
All API requests require a valid token issued by Xloud Identity. Tokens are scoped to a project and carry the user’s role assignments for that project.Token Scopes
- CLI
- Dashboard
Authenticate and get a token
Expected output
Authenticate via API directly
Application Credentials
Application credentials allow automation scripts and CI/CD pipelines to authenticate without embedding a username and password. They are scoped to a project, have configurable expiry, and can be restricted to specific API operations using access rules.- Dashboard
- CLI
Navigate to Application Credentials
Navigate to Project → Identity → Application Credentials and click Create Application Credential.
Configure the credential
Download the RC file
Click Download openrc file. Source this file in your automation environment to authenticate using the application credential.
The downloaded RC file uses
OS_AUTH_TYPE=v3applicationcredential — no password is stored in plaintext.RBAC Policy Enforcement
Xloud enforces access control using oslo.policy rules. Every API operation checks the caller’s token against the service’s policy file before executing.Default Role Hierarchy
Custom Policy Overrides
View current compute policy
Example: restrict live migration to system-admin only
Xloud uses the standard RBAC model. Custom policy overrides should be placed in service-specific policy files and deployed via the XAVS config overlay mechanism. Do not modify policy files directly inside containers — changes are lost on restart.
API Rate Limiting
Rate limiting protects the platform from abuse and ensures fair resource allocation between projects. Limits are enforced at the HAProxy layer and within individual services.Configure compute rate limits
CORS Configuration
Cross-Origin Resource Sharing (CORS) controls which origins can make browser-based API requests. Configure allowed origins to match your Dashboard and any custom web applications.Restrict CORS origins
Service-to-Service Authentication (Mutual TLS)
Platform services authenticate to each other using service user accounts. When internal TLS is enabled, these connections also use mutual TLS certificate validation. Service accounts are created during deployment with minimal permissions scoped to inter-service operations only. Do not use these accounts for manual operations.List service users
Audit Logging for API Calls
All API calls are recorded in the audit log with the caller identity, token scope, target resource, and operation result. See the Compliance and Auditing page for log format, retention, and aggregation configuration.View recent API audit events
Next Steps
Compliance and Auditing
Audit log format, retention, and compliance framework mapping
Identity and Access
Users, projects, domains, and federation configuration
Infrastructure Security
TLS configuration and certificate management
Application Credentials
Detailed application credential management guide