Skip to main content
This Secure Configuration Guide explains how to securely manage the administrative accounts and security settings of the Ultra platform. It is written for the customer administrators, including federal agency tenants, who provision and manage an Ultra organization, and it supports Ultra’s pursuit of FedRAMP 20x Class B authorization (the SCG-CSO rule family). The platform has two components: Ultra Hub, the cloud control plane where organizations, teams, workspaces, identities, governance, and guardrails are managed; and the Ultra device, the enforcement point that proxies MCP tool calls, applies policy, and syncs telemetry to Hub. A device runs in one of two forms: self-hosted, an instance of Ultra you run on a developer machine, CI runner, or your own server; or Ultra-hosted, enforcement Ultra operates on your behalf. The two differ in guardrail fail behavior, which is stated in full below. Security configuration is performed in Ultra Hub, which is the focus of this guide.

Purpose & scope

This guide covers the secure configuration of Ultra Hub: the lifecycle of top-level administrative and privileged accounts, the security-relevant settings those accounts control, the platform’s secure defaults, and the programmatic interfaces for viewing, adjusting, exporting, and comparing security settings. It is a configuration reference rather than a replacement for the underlying feature documentation. Where a topic has a canonical home, this guide links to it: RBAC, Enterprise SSO, Directory sync, Deploy keys, Admin Log, Guardrails, Governance, and Identities.

How to obtain and use this guide

This guide is published publicly in the Ultra documentation and is referenced, with a direct link and short description, in Ultra’s FedRAMP Certification Package Overview (CPO). You can also request the current version from security@ultra.security. Use it as the authoritative reference when standing up a new Ultra organization, hardening an existing one, or conducting an authorization review. Applying this guide (customer responsibility). Customers implement it by mapping each recommended setting to their own tenant in Settings > Security, following the top-level administrative account lifecycle below, and then using the comparison utility to verify their configuration against Ultra’s recommended baseline. Ultra is responsible for the platform controls described here; the customer (agency) is responsible for applying the recommended settings, managing their own administrative accounts, and remediating deviations.

Account model & administrative roles

Ultra Hub enforces role-based access control (RBAC). Four roles apply to people, in decreasing order of privilege: Owner, Admin, Member, Viewer. A user’s role at the organization level cascades to all teams and workspaces. Beacon is a separate device identity rather than a rung on that ladder; it is described below the table.
Roles are scoped by where the membership is granted, and an organization-level role reaches everything. A membership recorded at the organization level resolves for every team and workspace in that organization, so an organization-level Member reaches every workspace, not only the ones they were individually added to. Grant team- or workspace-level memberships where you need a narrower blast radius.One escalation path is worth knowing. Assigning a device owner requires only workspace:manage_gateways, which a Member holds, and it applies to devices linked by a deploy key. A Member can therefore make themselves the owner of such a device and then reach unlink, archive, and delete through the owner path, despite not holding the delete permission directly. Treat Member as a privileged role on any workspace that carries deploy-key-linked devices.
Beacon is a device-only identity that devices use for sync operations (traces, heartbeat). Its permissions are a subset of Viewer’s, so it is not a lower rung of the human ladder in the sense of holding anything a person does not. It is a separate credential class for a different reason: it is minted for a device rather than assigned to a person, and it carries no dashboard access and cannot read organization data. Treat it as a machine credential rather than as a reduced user account. For FedRAMP purposes, the Owner role is the top-level administrative account that controls enterprise access to the entire offering, and the Admin role is the privileged account.

Securing top-level administrative accounts

Provisioning & secure access

Owner and Admin accounts authenticate through one of the following methods:
  • Passwordless web authentication: email plus a one-time verification code. No stored passwords to rotate. Sessions are held in secure cookies and expire, requiring re-authentication.
  • Enterprise SSO (single sign-on, SAML 2.0 or OIDC): delegate authentication to your identity provider (IdP), such as Okta, Entra ID, Google Workspace, JumpCloud, PingOne, OneLogin, AD FS, Auth0, or Rippling. Recommended for all administrative accounts so that IdP-side multi-factor authentication (MFA), conditional access, and session policy apply. See Enterprise SSO.
  • CLI authentication: ultra login uses the OAuth2 PKCE (Proof Key for Code Exchange) flow via the browser; tokens are stored in the local config and refreshed automatically.
  • Deploy keys: long-lived dk_ tokens for headless and CI devices only. These authenticate a device, not an administrator. See Deploy keys.
Brute-force protection. Ultra Hub enforces account lockout after repeated failed authentication attempts. SSO login flows carry CSRF (cross-site request forgery) state parameters and expire after 10 minutes. Self-registration into an existing organization is not permitted; access requires an invitation, SSO just-in-time (JIT) provisioning, or SCIM provisioning.
Require Enterprise SSO for all Owner and Admin accounts and enable Enforce SSO for your domain so administrators cannot fall back to email-code login. Ensure phishing-resistant MFA is enforced at your identity provider. Email one-time codes are not phishing-resistant on their own, which is why FedRAMP expects privileged accounts to authenticate through an IdP that enforces a phishing-resistant factor.

Configuring administrative accounts

Owners and Admins configure enterprise access from Settings > Security and the Settings > Members tab:
  • Roles (RBAC). Assign the least-privilege role. Only Owners may assign or remove Owner; Admins may assign up to Admin. The last Owner cannot be demoted or removed. See RBAC.
  • Enterprise SSO. Generate a setup link, complete the guided IdP wizard, Test Connection, then optionally Enforce SSO for matching domains.
  • Directory Sync (SCIM 2.0). Automate provisioning and deprovisioning and group-to-team mapping so account lifecycle follows your corporate directory. See Directory sync.
  • Just-in-Time (JIT) provisioning. Optionally auto-create Members on first SSO login; disable it if you require pre-provisioning via SCIM or invitation.

Operating administrative accounts

  • Admin Log (Owner and Admin only). Review the security event log for member provisioning and removal, SSO authentication (including SSO login failures), guardrail configuration changes, governance posture changes, and a subset of organization, workspace, and device events. Removing or disabling a security control is logged at warning severity. Coverage is narrower than the page’s event list implies; see the gaps below before relying on it as a sole record. See Admin Log.
  • Identities. Monitor every principal generating activity, its assurance tier (Authenticated, Device-attributed, Unattributed, or No activity), tool-call volume, guardrail blocks, and anomaly findings. Bring unattributed traffic under management or block it via Governance. See Identities.
  • Least privilege & separation. Keep the number of Owners minimal; use Admin for routine administration and Member or Viewer for everyone else.
Known gaps in administrative audit coverage. Two cases are not fully captured in the Admin Log today, and agencies conducting an authorization review should account for them:
  • Changing a member’s organization role does not currently emit an Admin Log event. Team-scoped role changes do.
  • Events driven by SCIM directory sync are recorded without actor, target, and IP address, because the SCIM webhook runs outside the request context that supplies them.
Both are tracked for remediation. Until they land, treat your identity provider’s own logs as the authoritative record for org role changes and SCIM-driven lifecycle events.

Decommissioning administrative accounts

Do not overlook decommissioning. Every administrative account and credential must have a clean removal path.
  • SCIM deprovisioning (preferred). Deleting a user in your IdP soft-deletes them in Ultra: the authentication identity is deactivated first (blocking login immediately), the account is marked inactive, and audit trails and memberships are preserved. Reactivation restores prior access if the user returns.
  • Manual removal. Owners and Admins can remove a member or change their role from the Settings > Members tab; changes take effect immediately. Deactivated users are blocked from SSO login even if their IdP session is still valid.
  • Manual removal is not terminal while JIT is enabled. If JIT provisioning is on for a domain, a manually removed user is re-created as a Member on their next SSO login. Remove the user at the IdP, or disable JIT, when the removal is meant to be permanent.
  • Owner protection. The last Owner of an organization cannot be demoted or removed, preventing accidental loss of administrative control. Transfer Owner to a successor before offboarding an Owner.
  • Deploy key revocation. Revoke deploy keys from Settings > Security. Devices using a revoked key lose Hub authentication on their next sync, which by default is within 60 seconds. Rotate keys periodically and scope them narrowly per workspace.
  • Device decommissioning. Unlink or archive devices that are retired; use Governance to block a decommissioned internal MCP connector organization-wide.
Revocation stops Hub authentication, not traffic. A device whose deploy key has been revoked continues proxying MCP calls and enforcing its already-resolved guardrails; what it loses is telemetry sync, heartbeat, and configuration pull. Revocation does not prevent the device from starting either: ultra start is exempt from the CLI’s Hub-auth gate, and the local check that does exist, on Ultra’s own management tools, reads the credential’s format rather than its validity. To stop traffic, decommission the device itself.

Security-relevant settings and their implications

The following settings are operable only by top-level administrative (Owner) and privileged (Admin) accounts. Recommended secure values are shown in the final column and match the machine-readable baseline, so a tenant configured from this table reaches exit 0 on the baseline’s automated checks, leaving the manual-review items for an administrator to confirm. A tenant that deliberately runs Google sign-in is the documented exception: the baseline records it as a deviation, so such a tenant exits 1 by design and should carry the approval alongside its report. One caveat: deploy-key names are not unique per organization, and the recommended per-workspace scoping makes repeated names likely (a ci key in each workspace). The comparison utility reports an export it cannot read key by key as NO DATA rather than guessing, so a tenant following this table may still exit 1 until its key names are made distinct.

Privileged (Admin) account settings

Beyond the Owner-exclusive controls (org deletion, Owner promotion, billing), privileged Admin accounts can operate the following security-relevant settings. Each should be exercised under least privilege:
  • Create, update, and delete teams and workspaces (environment isolation boundaries).
  • Manage devices: register, link, unlink, archive, delete.
  • Configure and scope guardrails and governance rules at organization, workspace, or device level. For guardrails, the broadest enabled scope wins, and disabling at a broader scope falls through to a more specific enabled row; rate-limit rules and governance rules accumulate across scopes instead. Governance posture resolves the other way, with the workspace setting overriding the organization setting.
  • Manage members and roles up to Admin, and manage SSO, SCIM, and deploy-key configuration.

Secure defaults

A newly provisioned Ultra organization starts from the following baseline:
  • Passwordless authentication by default: no stored passwords; account lockout on repeated failures.
  • No open self-registration: joining an existing org requires an invitation, SSO JIT, or SCIM.
  • SCIM webhooks require HMAC-SHA256 signatures with timestamp and replay protection; unsigned webhooks are rejected.
  • RBAC least privilege: new invited users default to the role specified in the invitation; the Admin Log is restricted to Owner and Admin.
Built-in guardrails are not active until you enable them. Ultra ships a catalog of built-in guardrails covering the most common MCP threats: Parameter Validation & Input Sanitization, Credential & Secret Protection, In-Line Authorization & Destructive Action Blocking, PII & Personal Data Protection, Tool & Server Isolation, Rate Limiting, and Circuit Breaker.The catalog marks most of these as recommended, and that recommendation carries a default mode (for example, Redact for PII & Personal Data Protection). A recommendation is not an activation: a built-in runs only once it has been explicitly enabled at organization, workspace, or device scope. Enabling the recommended set is a required hardening step after provisioning, not something the platform does on your behalf.
Deviations and review. The ability to weaken a control (for example, disabling a guardrail or lowering an enforcement mode) is restricted to Owner and Admin accounts and is recorded in the Admin Log at warning severity. Approved deviations from the recommended baseline should be documented by the administrator, and the baseline itself is reviewed and updated when Ultra’s recommended security defaults change.
Recommended hardening after provisioning: enable Enterprise SSO with Enforce SSO, enable the recommended built-in guardrails and tune their enforcement modes (adding custom guardrails where useful), and use Governance to restrict which MCP connectors, tools, and agents are reachable, setting sensitive workspaces to default_deny.

Guardrail fail behavior

Guardrails fail closed on the local device: if a request-phase evaluator errors, panics, or is missing, the request is blocked. Four limits are worth stating precisely, because an authorization review will test them:
  • Hosted devices skip stateful evaluators. The hosted (Postgres and OAuth) device has no shared counter store, so Rate Limiting and Circuit Breaker cannot be evaluated there. A guardrail of that type is skipped rather than failing closed.
  • Fail-closed applies to blocking modes. A response-phase evaluator error blocks only when the configured action is block. Guardrails in redact, monitor, or alert mode keep their allow-with-signal behavior. Three response-phase paths block regardless of the configured mode: a truncated response scan, a redact-mode decision whose redaction fails, and an unrecognized mode.
  • Response-phase panics are not recovered. The request-phase guarantee above does not extend to responses: a panic during response evaluation propagates rather than blocking.
  • A device with no local store enforces nothing. Guardrail and governance interception is installed only when the local SQLite store opens. If it cannot (for example an unwritable database file), the device proxies traffic with no guardrail and no governance enforcement, and signals this with a startup warning rather than by refusing to start. An authorization review testing fail-closed behavior should test this case explicitly.

Programmatic access, export & machine-readable guidance

API to view and adjust security settings

Ultra Hub exposes REST APIs that let agencies view and adjust access- and policy-related security settings, and integrate them into their own automation and authorization-monitoring workflows: The Ultra device’s local configuration (config.yaml) is intentionally not mutable via public API, so enforced device policy stays consistent regardless of the deployment environment. Authentication & authorization. Administrative API calls require an authenticated Hub principal. Three credentials are accepted: a session token, sent as X-Session-Token or the session cookie; an OAuth2 access token; or a CLI API token, the latter two sent as Authorization: Bearer. Any of the three carries the caller’s real memberships, so the same RBAC model as the UI applies. Deploy keys authenticate a device, not an administrator: they carry a workspace-scoped credential with no memberships, so they cannot call these endpoints. Permissions differ by endpoint, and reads are not uniformly restricted:
  • Role changes require org:manage_members.
  • Enterprise SSO endpoints require org:update, reads included.
  • SCIM and deploy-key writes require org:update, but GET /api/v1/organizations/{org}/scim and GET /api/v1/organizations/{org}/deploy-keys require only org:read. A Viewer can therefore read the deploy-key inventory (metadata only, never key material) and, from the SCIM endpoint, the active directory-sync setup-link URL rather than a mere status. Take this into account when assigning the Viewer role.
Example: change a member’s role. An Owner or Admin can update a member’s role with a single call:
This returns the updated membership with its new role. Note the audit gap described above: this call does not currently emit an Admin Log event. API best practices: rotate deploy keys and API credentials periodically, grant the least privilege required for each integration, and monitor the Admin Log for API-driven configuration changes.

Export of security settings

Ultra Hub supports one-click export in both CSV and JSON on its list and log surfaces, including Traffic, Audit, Connectors, Tools, Agents, Devices, Identities, Anomaly scans, the Admin Log, and Settings > Security. Both formats are available wherever export exists. Two exports matter for this guide:
  • Settings > Security exports the organization’s security posture as a normalized Category, Setting, Value table covering allowed domains, sign-in methods (magic links, Google, Enterprise SSO), identity provisioning, SCIM, and deploy-key metadata. Secret material (SSO connection secrets, setup-link URLs, deploy-key hashes) is deliberately excluded.
  • Identities exports one row per principal with a Role column, which is how Owner accounts are counted.
Guardrail and governance configuration are not exportable by customers today. Both are verified in the Hub UI, and the comparison utility below reports them for manual review rather than guessing. Export coverage for these surfaces is tracked separately.

Machine-readable Secure Configuration Guide

A machine-readable companion to this guide, listing the recommended secure default settings for top-level administrative and privileged accounts, is provided in JSON below. Each entry declares how it can be verified: For most entries verification.field is the exact Category / Setting key looked up in the export. Three kinds of entry are checked by dedicated logic instead, because no single exported row answers them, and for those the field string is descriptive only: For the first two, field is descriptive: editing it changes nothing but the printed source: line. A maxRole entry is different, and the distinction matters if you edit the baseline: its field is still the exact lookup key, read before the ranking happens, so renaming it turns a passing check into NO DATA. maxOwners and maxRole are the thresholds those checks compare against, and are part of the contract if you reimplement this baseline. The operableBy field records who can change a setting: owner, owner_admin, or system_default for platform behavior. verification.notApplicableWhen (optional). Some recommendations are moot for a given tenant. Enterprise SSO’s JIT setting cannot provision anyone if Enterprise SSO is not enabled, and Google’s JIT setting cannot if Google sign-in is not enabled. Where that is true, the entry names the field and value that makes it moot:
The condition applies only when the named field is itself observed to hold that value. A field that is absent, blank, or ambiguous in the export does not satisfy it, so a recommendation can never be switched off by data that is merely missing. If you reimplement this baseline in your own tooling, preserve that property: it is the difference between “we saw that this does not apply” and “we could not tell”. Copy the baseline directly from this page; it is also included in Ultra’s FedRAMP Certification Package.

Settings comparison

Ultra provides a comparison utility (ultra_scg_compare.py, Python 3, no external dependencies) that ingests a tenant’s exports and reports each recommended setting as matching, deviating, or requiring manual review.
1

Export your current settings

In Ultra Hub, open Settings > Security and use Export (CSV or JSON). Then open Identities and export it the same way, with no filters applied: the export honors whatever filters are active on the page, and a filtered roster undercounts Owner accounts. Supply both files unmodified: renaming a column or editing a value makes the affected recommendation unverifiable, and the utility reports that rather than guessing. Deploy-key expiries are read as Never or as the RFC 3339 timestamp the export emits.
2

Get the baseline and script

Copy the recommended baseline (Ultra-SCG-baseline.json) and the comparison script (ultra_scg_compare.py) from the collapsible blocks on this page. Both are also included in Ultra’s FedRAMP Certification Package.
3

Run the comparison

Add --json for a machine-readable report suitable for continuous-monitoring pipelines.
4

Review the output

Every automated check reports whether it observed a value, separately from whether that value matched. That split is what the four results mean:NO DATA is not a pass, which is why it is grouped with deviations in the exit code. N/A is neither, and does not affect it.Settings with no customer-reachable export are listed under manual review, and platform behaviors are listed for information only. Neither affects the exit code.Exit codes: 0 when every automated check matched, 1 when any deviated or could not be verified, and 2 when the baseline or an export was missing, unreadable, or not in the expected format. Remediate deviations in Settings > Security.
Sample output, from a tenant with Enforce SSO turned off and Google sign-in unused. It is a verbatim run of the script above, leading blank line included, against a Settings > Security and an Identities export in the shape Hub produces, so the values shown ('false', not 'No') are the ones you will see in your own run:
Reviewing deviations. Deviations are reviewed by the organization’s Owner or Admin, remediated in Settings > Security, and re-verified by re-running the comparison. Ultra recommends running the comparison after any administrative change and on whatever recurring cadence your continuous-monitoring program requires, and updating the recommended baseline when Ultra’s recommended security defaults change.

Versioning & release history

This guide and the recommended secure default settings it documents are versioned. It is reviewed at least annually and upon any significant security change. Prior versions of the guide and the machine-readable baseline are retained by Ultra and available on request.