CA Access Policies
This section describes the robust CA Access Policy management feature, which allows administrators to define granular rules for controlling who can request certificates from a specific Certificate Authority, under what conditions, and with what approval workflow. This is a critical component for enforcing security, compliance, and automation within the PKI.
Key Functionalities
Policy Listing
- Endpoint:
/ca/{ca}/policies - Description: Displays a paginated list of all access policies associated with a particular Certificate Authority.
- Ordering: Policies are displayed in ascending order of their
priority.
Policy Creation
- Endpoints:
GET /ca/{ca}/policies/create: Displays the form for creating a new CA access policy.POST /ca/{ca}/policies: Submits data to create a new policy.
- Comprehensive Configuration: Policies can be configured with a wide array of rules and settings, including:
- Basic Information:
name(required, max 255 chars),priority(required integer 1-1000),approval_type(required:automatic,manual,workflow). - Access Controls:
allowed_ips: Array of IP addresses or CIDR blocks (e.g.,192.168.1.0/24).allowed_domains: Array of email domains (e.g.,@example.com).allowed_users: Array of specific email addresses.blocked_users: Array of specific email addresses.
- OAuth Integration:
require_oauth: Boolean to enforce OAuth authentication.oauth_provider:microsoft,google,okta,custom.oauth_tenant_id,oauth_client_id.oauth_required_groups: Array of group names required for access.oauth_require_device_compliance: Boolean (provider-dependent).- Provider-specific settings (e.g.,
oauth_domain,oauth_workspace_onlyfor Google;oauth_okta_domainfor Okta).
- Time-based Controls:
allowed_hours_start,allowed_hours_end(HH:mm format), with an optionaltimezone.allowed_days: Array of integers (1-7, Monday=1) for allowed days of the week.valid_from,valid_until: Date range for the policy's active period.
- Rate Limiting:
max_certificates_per_hour: Maximum certificates per hour under this policy.max_certificates_per_day: Maximum certificates per day under this policy.max_certificates_per_user_per_day: Maximum certificates per user per day under this policy.max_certificate_validity_days: Maximum validity in days for certificates issued under this policy (1-3650 days).
- Workflow Settings:
approval_workflow: (Array, details for complex workflows).require_justification: Boolean to require a justification for certificate requests.notify_on_issue: Boolean to send notifications upon certificate issuance.notification_emails: Array of email addresses to notify.
- Certificate Template Defaults:
default_key_size: Default key size (e.g., 2048).default_hash_algorithm: Default hash algorithm (e.g.,sha256withRSAEncryption).default_validity_days: Default validity in days (capped bymax_certificate_validity_days).
- Basic Information:
- Audit Logging: Records policy creation events.
Policy Details
- Endpoint:
/ca/{ca}/policies/{policy} - Description: Displays detailed information about a specific CA access policy.
Policy Updates
- Endpoints:
GET /ca/{ca}/policies/{policy}/edit: Displays the form for editing an existing policy.PUT/PATCH /ca/{ca}/policies/{policy}: Submits data to update a policy.
- Audit Logging: Records policy update events, including both
old_valuesandnew_valuesfor comprehensive auditing.
Policy Deletion
- Endpoint:
DELETE /ca/{ca}/policies/{policy} - Description: Deletes a specific CA access policy.
- Audit Logging: Records policy deletion events.
Toggle Policy Status
- Endpoint:
POST /ca/{ca}/policies/{policy}/toggle - Description: Activates or deactivates an access policy (
is_activeflag). - Audit Logging: Records policy activation/deactivation events.
Policy Testing
- Endpoint:
POST /ca/{ca}/policies/{policy}/test - Description: Provides a simulation tool to test the effectiveness of a policy's rules against various inputs.
- Test Inputs: Allows testing with
test_ip,test_email, andtest_time(for time-based rules). - Results: Returns simulated results for
ip_access,user_access,time_access, andrate_limitschecks.
Inferred Specifications
- Granular Access Control: Policies enable highly granular control over certificate issuance, based on a combination of IP addresses, user identities, email domains, OAuth attributes, and time constraints.
- Policy Prioritization: The
priorityfield allows administrators to define the order in which policies are evaluated, enabling complex rule sets with fallback mechanisms. - Flexible Approval Workflows: Support for
automatic,manual, andworkflowapproval types provides adaptability to different organizational security requirements. - OAuth Integration: Deep integration with OAuth providers (Microsoft, Google, Okta) allows leveraging existing identity management systems for authentication and authorization, including group membership and device compliance checks.
- Time-Based Restrictions: Policies can enforce time-of-day and day-of-week restrictions, as well as overall validity periods, for certificate requests.
- Rate Limiting: Built-in rate-limiting capabilities prevent abuse and ensure fair resource utilization for certificate issuance.
- Customizable Certificate Templates: Policies can define default cryptographic parameters (key size, hash algorithm) and validity periods for certificates issued under them, ensuring consistency and adherence to standards.
- Comprehensive Audit Trail: All lifecycle events of CA access policies (creation, updates, deletions, status changes) are meticulously logged, providing a complete audit trail for compliance and security analysis.
- Policy Simulation: The integrated policy testing tool allows administrators to validate policy rules before deployment, reducing errors and ensuring desired behavior.
- Middleware Protection: The controller itself is protected by authentication and permission middleware, ensuring that only authorized personnel can manage CA access policies.
Vous n'avez pas envie de la manager ?
Découvrir notre offre PKI As A Service