Skip to content

Terms


title: “Terms” description: “Various terms will be used in the rest of the documentation.” lead: “Various terms will be used in the rest of the documentation.” date: 2020-10-06T08:48:57+00:00 lastmod: 2020-10-06T08:48:57+00:00 draft: false images: [] menu: docs: parent: “overview” weight: 102 toc: true

Below are a list of important terms that will be used as part of the system documentation. Some of these terms are used within other parts of Trimble such as Trimble Cloud Core or other industry adaptations such as Open Policy Agent.

Appliance

An appliance is a container image produced by us that includes the policy engine, abstractions to the engine, and monitoring of the appliance. This can run as a sidecar, on an instance, or independently. This should be run as close to parts of the application as possible.

Application

Consumer-defined boundary which during runtime will instantiate any number of appliances. This boundary defines what namespaces of packages the application is interested in using for making authorization decisions. An application should be defined in Trimble Cloud Console and consumer key and secret should be created. These client Credentials will be needed both for registration of application, registration of packages, and startup of appliance(s).

Bundle

A bundle is a collection of package policies that an application is interested in using. A bundle is used to deliver the packages to the appliance. This is specific to the internals of Open Policy Agent and is only used internally as a distribution mechanism from the Trimble Access Management Server to the OPA engine running in the appliance(s) themselves.

Module

A module is a single .rego file. A module contains a “package” declaration that defines the namespace for all the rules in the module. Multiple modules (.rego files) can have the same package declaration/namespace.

Namespace

A unique identifier for a package. The identifier is in a string format and should be unique to the company, business, and product that is defining these rules. Example: trimble.cloud.core.profiles

Package

A package is a rego policy along with metadata (such as namespace) about the package. Packages will include information such as caching policy of remote data needed to fulfil rule decisions. A package can include one or many rules.

Rego

Rego is a policy langauge that allows for processing rules. It has powerful support for evaluation, querying data, and testing of the rules themselves.

Rule

A rule is a single decision that is composed of assertions on data. A rule can evaluate to a yes / no answer or contain data as part of its decision.

Trimble Access Management Server

A centralized and scalable backbone to authorization. This serves as bundle management, distribution, and commanding of appliances.

Trimble Resource Name (TRN)

A Trimble Resource Name helps to identify an object or entity within the Trimble ecosystem. This is used to identify specific parts of access management such as:

  • Application

    Example: trn:tid:application:41b6126d-2e4e-458c-a6e3-b22e8004f1fa

  • Bundle

    Example: trn:tam:bundle:b42ea183-25ca-406f-8dc2-bf39b5c3c769

  • Job

    Example: trn:tam:job:0b8fd7b3-c32a-4b91-bdf5-79a3f652e1a6

  • Package

    Example: trn:tam:package:trimble.cloud.core.profiles

  • Rule

    Example: trn:tam:package:trimble.cloud.core.profiles/allowed_licenses