Skip to content

6.13.2.7 MoonitoringCapabilityEnum

6.13.2.7.1 Purpose

The catalog of permissions that Moonitoring roles grant to platform users.

6.13.2.7.2 Values

Value Risk Description
access.moonitoring_access.read read See the Moonitoring users and the roles they hold (see MoonitoringAccessControlMembership, MoonitoringUser).
access.moonitoring_access.manage admin Create and remove Moonitoring users, assign and revoke their roles.
access.moonitoring_roles.manage admin Create and edit Moonitoring roles: name, capabilities, priority (see MoonitoringRoleAccessControl).
access.organization_roles.manage admin Create and edit the global Organization roles (see OrganizationRoleAccessControl); a change reaches every Organization at once.
Owner and Sync Client are not changed through it.
releases.releases.read read See the whole release system (ReleaseProject to ReleaseEncryptionKey), including public keys and signed metadata; never the private keys, which stay in the KMS.
releases.installations.read read See installations and update events (see ReleaseInstallation, ReleaseUpdateEvent).
releases.release_catalog.manage write Create, edit and archive projects, applications (with their audience, 101.8), platforms and depots, and choose which depots compose an application (ReleaseProject to ReleaseApplicationDepot).
releases.channels.manage write Create and edit channels and their access rule: listed or not, approval, required capabilities and features, recipient.
Organizations, tester groups and their e-mails (see ReleaseChannel, ReleaseChannelAccess, ReleaseTesterGroup).
releases.builds.upload write Create a build and upload its chunks and manifests until it is ready (see ReleaseBuild); it reaches no client.
releases.builds.revoke write Mark a build revoked, with a reason; it can no longer be staged, approved or rolled back to.
releases.releases.stage write Create a Release of a ready build on a channel (see Release); it waits as staged, or becomes active at once on a channel that does not require approval.
releases.releases.approve write Make a staged release active, or resume a paused one.
releases.releases.pause write Stop offering an active release; nothing changes on clients that already updated.
releases.releases.rollback write Make current again a build that was already active on the same channel, without a second approval.
releases.release_keys.manage admin Register, rotate and revoke signing and encryption keys (see ReleaseSigningKey, ReleaseEncryptionKey); it cannot sign with them.
releases.release_storage.purge admin Run retention: delete builds, manifests and chunks that no retained release references; it cannot be undone.
farm.reference_data.manage write Maintain AnimalType, AnimalBreedType, DeathType, ObservationType, ObservationMethod, ObservationContext, BodySite and PeriodType (AnimalType, AnimalBreedType, DeathType, ObservationType, ObservationMethod, ObservationContext, BodySite, PeriodType), and the bull catalog: Animals without Ownership and their identifiers (see Animal, ExternalIdentifier).
farm.source_origins.manage write Maintain the source origins and channels that belong to no Organization, and their versions (see SourceVersion, SourceOrigin, SourceChannel).
access.organizations.read read See Organizations, their members and their delegations; no animal data.
farm.ingestion.read_all read See what every Organization's sources sent and what failed to process (see SourceProducerEntity, RawMetadata, IngestionSkip); no canonical animal data.
farm.sync_clients.manage_all admin Create sync clients and their enrolment codes, retire them and change their schedules in every Organization, for support (see SyncClient, SyncSchedule); seeing them needs farm.sync_clients.read_all.
farm.data_issues.read_all read See the DataIssues of every Organization, for support (see DataIssue).
farm.canonical_data.read_all read Read the canonical data of every Organization to train, score and evaluate models (Moonitoring may use the data of every farm; no per-farm consent is modelled). Every use is recorded as a ModelRun.
Meant for MoonitoringServiceAccounts; organization access rules (Ownership) do not apply to this capability.
farm.entitlements.manage write Grant and revoke what an Organization has (see Entitlement).
ai-model-platform.models.manage write Register, deploy and retire models and their versions in the model registry; a retired model refuses calls.
Seeing them needs ai-model-platform.models.read.
moochat.agents.manage write Create, pause and archive agents, bind and unbind their tools, set their default model profile (see AgentDefinition, AgentToolBinding).
moochat.agent_models.manage write Create, edit and retire model profiles: provider, model, region, data classes, tier, parameters (see AgentModelProfile).
access.audit.read read See who did what and when in the Console and the admin APIs (see PlatformAuditEvent).
ai-model-platform.datasets.manage write Create, edit, build, archive and delete datasets and their versions (see MlDataset, MlDatasetVersion).
ai-model-platform.datasets.read read List datasets and read their versions' files from notebooks and pipelines; meant for data scientists in ml-lab and the service accounts of ml-prod. Identified versions (MlDataset.anonymization) are readable only with farm.canonical_data.read_all.
ai-gateway.usage.read read See the ledger of model calls, never the prompts, and the state of the providers (see FeatureUsage, AgentModelProfile).
farm.parse_jobs.manage write Ask for a re-parse of a raw file, a run or a feed over a period, and retry failed jobs (see ParseJob); every call is a PlatformAuditEvent.
farm.reconciliation_rules.manage write Create rule set versions and reliability rankings and re-run resolution (see ReconciliationRuleSet, SourceReliability).
farm.erasure_requests.manage admin See every erasure request and execute it (see ErasureRequest); held by few.
grant.calls.manage write Curate funding calls: title, summary, eligibility, status and publication.
grant.sources.manage write Add and change the sources funding calls are discovered from, and launch discovery and extraction batches. The documents of farmers are seen with grant.documents.read_all, not with this capability.
access.organizations.approve write Approve a pending Organization created by its owner, or suspend and reactivate one (see Organization, Organization.status); every call is a PlatformAuditEvent.
access.nations.manage write Maintain the nations, which qualify telephone numbers, fiscal identifiers and national animal identifiers (see Nation); was part of farm.reference_data.manage.
farm.integration_gaps.read read See the integration gaps, their occurrences and their samples (see IntegrationGap); reading a sample is a PlatformAuditEvent.
farm.integration_gaps.manage write Assign a gap, change its status and link the adapter that resolves it (see SourceAdapter).
farm.source_adapters.manage write Register adapters and their version ranges when a client or parser release ships them, and deprecate or withdraw them.
farm.adapter_mappings.manage write Map detected source versions to adapters, globally, for an Organization or for one feed (see AdapterMapping); every change is a PlatformAuditEvent.
news.articles.write write Write and edit articles and their translations, upload images, preview, and submit an article for review (see Article).
news.articles.publish write Publish, schedule, unpublish an article and change a published slug (see Article); every call is a PlatformAuditEvent.
access.organizations.close admin Close an Organization by staff decision, reject a pending one, hold a closure and cancel one (see OrganizationClosure); every call is a PlatformAuditEvent.
status.incidents.read read See the components and probes of the status page, its incidents and its maintenances.
status.incidents.manage write Open and update incidents, post their updates and schedule maintenances; the public status page shows them.
status.components.manage write Change the components of the status page and their probes.
farm.sync_clients.read_all read See every sync client, its schedules and its runs, for support (see SyncClient, ReleaseInstallation, SyncSchedule); split from farm.sync_clients.manage_all.
ai-model-platform.models.read read See the registered models, their versions and scoring batches; split from ai-model-platform.models.manage.
grant.documents.read_all read See the documents every farmer uploaded for funding applications, for support; split from grant.sources.manage.

6.13.2.7.3 Relationships

Used by

6.13.2.7.4 Rules & constraints

  • Enum about the capabilities of system users, for the purpose of access control.
  • Same naming as OrganizationRoleCapabilityEnum: <system>.<resource>.<action>, prefixed by the system that owns the resource (access, releases, moochat, farm, ai-model-platform, ai-gateway, grant, news, status).
  • Signing release metadata is not a capability: the system does it when a release becomes active.
  • Every capability declares its risk as in OrganizationRoleCapabilityEnum: read, write, or admin for what changes staff access, Organization roles, signing keys, or removes data or Organizations for good. A MoonitoringServiceAccount never holds an admin capability (MoonitoringServiceAccount).