Skip to main content

Overview

Polystack Orchestration introduces unique security considerations beyond standard service policies. Templates can create users, assign roles, and invoke webhooks on behalf of the submitting user — making trust delegation and template validation critical security controls. This page covers the stack domain model, trust-based authorization, policy configuration, and template injection prevention.
Administrator Access Required — This operation requires the admin role. Contact your Polystack administrator if you do not have sufficient permissions.

Stack Domain Users

Why a Separate Domain Is Needed

When a stack contains resources that require long-running credentials — such as WaitCondition signal URLs, auto-scaling webhooks, or software deployment agents — the Orchestration engine cannot use the submitting user’s token (which expires). Instead, it creates a short-lived stack domain user scoped to the stack’s project.

Domain User Lifecycle


Trust-Based Authorization

Polystack Orchestration uses Polystack Identity to delegate the submitting user’s permissions to the engine for resource provisioning.

How Trusts Work

  1. When a stack is submitted, the engine requests a trust from Polystack Identity.
  2. The trust grants the engine the submitting user’s roles within the stack’s project.
  3. The engine uses the trust to authenticate when calling compute, networking, and storage APIs on behalf of the stack.
  4. The trust is tied to the stack — deleting the stack revokes the trust.

Reviewing Active Trusts

List trusts for the current user
Show trust detail
Users who are removed from a project while their stacks are still running will have their trusts invalidated. The Orchestration engine will fail to provision new resources for those stacks until the user is re-added or the stacks are re-created by a valid project member.

Policy Configuration

Orchestration API access is governed by policies defined in policy.yaml. The default policy restricts stack management to project members and administration to users with the admin role.

Default Policy Summary

Overriding Policies

policy.yaml override example
Policies are applied via the deployment console configuration overrides in /etc/ironcore/orchestration/policy.yaml.

Template Injection Prevention

Orchestration templates are powerful — a malicious or misconfigured template can create users, assign roles, consume large quota, and trigger webhooks to external systems. Never execute untrusted templates from unknown sources.

Security Controls for Template Execution

Review Template Before Execution

Validate and inspect a template
The output lists every resource type the template will attempt to create. Verify that all resource types are expected before deploying.
For multi-tenant environments, configure allowed_resources in the deployment console to restrict the resource types available to non-admin users. This prevents project members from creating identity resources (users, roles) through templates.

Next Steps

Configuration

Configure the stack domain, quotas, and service settings

Architecture

Understand the trust delegation and engine processing flow

Admin Troubleshooting

Resolve stack domain and authorization failures

Polystack Identity

Manage domains, trusts, and role assignments in Polystack Identity