Access Model

Who can view, create, edit, and delete each element in Polaris

Roles

Polaris has three access levels:

Unauthenticated
Can browse read-only data: systems, components, technologies, teams, licenses, version constraints, violations, and approvals.
Authenticated (User)
Can create and manage systems, technologies, version constraints, and submit SBOMs. Can view audit logs, manage their own API tokens, and view their own profile.
Superuser
Full administrative access. Can manage teams, users, API tokens, license allow/deny lists, impersonation, and GitHub imports.

Access by Element

Operations available at each access level. A dash (—) means the operation does not apply.

ElementViewCreateEditDeleteNotes
SystemsPublicAuthenticatedOwner team*Owner team** Superusers or members of the system's owner team
RepositoriesPublicAuthenticatedAdded to systems; viewed as part of system detail
ComponentsPublicCreated only via SBOM ingestion, never directly
TechnologiesPublicAuthenticatedOwner team*Owner team** Superusers or members of the technology's steward team
TeamsPublicSuperuserSuperuserSuperuserFull team management is superuser-only
UsersSuperuserSuperuserSuperuserTechnical users only; OAuth users are created on sign-in
API TokensAuthenticatedAuthenticatedAuthenticatedUsers manage their own tokens from /profile. Superusers also manage tokens for technical users. Token value shown once on creation.
Version ConstraintsPublicAuthenticatedCreator*Creator** Superusers or the user who created the version constraint
LicensesPublicDiscovered via SBOM ingestion; not directly managed
License Allow/DenySuperuserSuperuserSuperuserSuperuserSuperusers manage the organization license whitelist
ViolationsAuthenticatedCompliance and version constraint violations; read-only for authenticated users
ApprovalsPublicAuthenticatedTeam members approve technologies for their team
SBOMsAuthenticatedSubmitted via API; creates/updates components and licenses
Audit LogsAuthenticatedAutomatically generated; read-only
GitHub ImportSuperuserCreates a system from a GitHub repo without cloning
ImpersonationSuperuserSuperuserSuperuserStart/stop impersonation of other users

How Elements Are Created

Not all elements are created directly through the UI.

ElementCreation Method
SystemsCreated via the UI form or GitHub import
RepositoriesAdded when creating or editing a system, or via GitHub import
ComponentsDiscovered automatically when an SBOM is submitted — never created directly
TechnologiesCreated via the UI form by authenticated users
TeamsCreated via the UI by superusers
Users (OAuth)Created automatically on first sign-in via GitHub OAuth
Users (Technical)Created via the UI by superusers for API access
API Tokens (own)Generated from the profile page (/profile) by any authenticated user
API Tokens (technical users)Generated via the Users admin page by superusers
Version ConstraintsCreated via the UI by authenticated users
LicensesDiscovered automatically from SBOM component metadata
ApprovalsCreated when a team member approves a technology for their team
Audit LogsGenerated automatically on every create, update, and delete operation

Superuser-Only Pages

The following pages and actions are only visible when the current user has the superuser role:

Users
User list and user detail pages, including technical user creation and API token management.
Impersonate User
View the application as another user to verify access controls.
License Allow/Deny
Manage the organization license whitelist and deny list.
Import from GitHub
Import a system from a GitHub repository on the Systems page.
Team management
Create, edit, and delete teams on the Teams page.
API Token Self-Service
Any authenticated user can generate and revoke their own API tokens from their profile page (/profile). Tokens are useful for scripting and CI pipeline integrations such as SBOM submission. Superusers additionally manage tokens for technical users via the Users admin page.
Impersonation
Superusers can impersonate other users to verify what they see. While impersonating, the UI respects the impersonated user's role — superuser-only actions and navigation items are hidden if the impersonated user is not a superuser.
API Token Self-Service
Authenticated users can generate and revoke their own API tokens from their profile page (/profile). Tokens are suitable for use in CI pipelines and scripts. A maximum of 10 active tokens is allowed per user.
Audit Trail
All create, update, and delete operations are recorded in the audit log with the user ID, operation type, affected entity, changed fields, and timestamp. The audit log is viewable by authenticated users at /audit.