Skip to main content

Profile

Profiles define policy sets which should be applied to all entities in a project. Profiles are covered in the conceptual background. Profiles can optionally select which entities they are applied to, and can define parameters for the referenced rule types.

YAML Example

---
version: v1
type: profile
name: sample-profile
display_name: Sample Profile
alert: "off"
remediate: "off"
repository:
- type: github_branch_protection
def:
min_reviews: 1
- type: secret_scanning
def: {}
- type: secret_push_protection
def: {}

Fields

note

Note that the Minder CLI uses snake_case for field names, but the OpenAPI spec (shown here) uses camelCase for names like display_name, in_entity, etc.

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

id
string

id is the id of the profile. This is optional and is set by the system.

name
string

name is the name of the profile instance.

labels
Array of strings

labels are a set of system-provided attributes which can be used to filter profiles and status results. Labels cannot be set by the user, but are returned in ListProfiles.

Labels use DNS label constraints, with a possible namespace prefix separated by a colon (:). They are intended to allow filtering, but not to store arbitrary metadata. DNS labels are 1-63 character alphanumeric strings with internal hyphens. An RE2-style validation regex would be:

DNS_STR = "a-zA-Z0-9?" ($DNS_STR:)?$DNS_STR

Array of objects (ProfileRule)

These are the entities that one could set in the profile.

Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileSelector)
remediate
string (whether and how to remediate (on,off,dry_run) this is optional and defaults to "off")
alert
string (whether and how to alert (on,off,dry_run) this is optional and defaults to "on")
type
string

type is a placeholder for the object type. It should always be set to "profile".

version
string (version is the version of the profile type. In this case, it is "v1")
displayName
string

display_name is the display name of the profile.

;