> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alignr.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Licensing

> Licence presence and renewal-date evidence.

This category contains **2 automated control definitions** and **0 manual checks** across the sources named below. Similar controls from different standards are listed separately because names, thresholds or severity can differ.

Whether the seeded Alignr Baseline is available depends on how your workspace was provisioned. Library templates are copied as disabled drafts. See [Choose a baseline](/controls/baselines/overview) before enabling anything.

## Automated controls

Expand a control to see the exact population, expectation and defaults. A pass requires usable evidence for the selected population. A known contrary observation can prove failure; missing observations or an empty population must not become a pass.

<AccordionGroup>
  <Accordion title="Enabled accounts hold a licence">
    <Tabs sync={false}>
      <Tab title="Explanation">
        Each selected account should have a recorded licence.

        Part of **Alignr Baseline (seeded)**.

        **Applies to**

        Accounts observed as enabled.

        **What the result tells you**

        This checks that an observed licence value exists, not that the licence is paid, appropriate, actively used or required for every account type. Review exceptions for service and other special-purpose identities.
      </Tab>

      <Tab title="Definition">
        | Setting           | Value                    |
        | ----------------- | ------------------------ |
        | Standard          | Alignr Baseline (seeded) |
        | Severity          | Medium                   |
        | Declared autonomy | Document only            |

        **Population condition**

        **Account enabled** (`account_enabled`) equals `true`.

        **Expected evidence**

        * **Licence or entitlement** (`has_licence`) has a non-null observed value.

        **Required predicates:** `account_enabled`, `has_licence`.

        ```json theme={null}
        {
          "match": {
            "predicate": "account_enabled",
            "object": true
          },
          "expect": [
            {
              "fact": "has_licence",
              "op": "exists"
            }
          ],
          "severity": "medium",
          "title": "Enabled account holds no licence",
          "evidence": [
            "account_enabled",
            "has_licence"
          ]
        }
        ```
      </Tab>
    </Tabs>
  </Accordion>

  <Accordion title="Licence renewal dates are on file">
    <Tabs sync={false}>
      <Tab title="Explanation">
        Each selected licence should have a recorded renewal date.

        Part of **Alignr Baseline (seeded)**.

        **Applies to**

        Licences with a purchased-seat observation.

        **What the result tells you**

        This checks that a renewal value is present, not that the date is in the future or the commercial terms are suitable.
      </Tab>

      <Tab title="Definition">
        | Setting           | Value                    |
        | ----------------- | ------------------------ |
        | Standard          | Alignr Baseline (seeded) |
        | Severity          | Low                      |
        | Declared autonomy | Suggest only             |

        **Population condition**

        **Purchased seats** (`licence_seats_purchased`) has an observation.

        **Expected evidence**

        * **Next licence renewal** (`licence_renewal_date`) has a non-null observed value.

        **Required predicates:** `licence_renewal_date`, `licence_seats_purchased`.

        ```json theme={null}
        {
          "match": {
            "predicate": "licence_seats_purchased"
          },
          "expect": [
            {
              "fact": "licence_renewal_date",
              "op": "exists"
            }
          ],
          "severity": "low",
          "title": "Purchased licence has no renewal date on file",
          "evidence": [
            "licence_seats_purchased",
            "licence_renewal_date"
          ]
        }
        ```
      </Tab>
    </Tabs>
  </Accordion>
</AccordionGroup>

## Manual checks

No manual checks are bundled in these catalogue entries. Add a separate manual check where the expectation needs human judgement.

## Investigate a result

Confirm the client and the account, device or other item being assessed. Check the source, observation time and effective settings, then compare the recorded evidence with the expectation. Missing evidence needs investigation; a change to the environment requires a separate review.

## Next steps

[Create a custom control](/controls/create-custom) · [Parameters and client overrides](/controls/parameters) · [Record a manual check](/controls/manual-checks)
