From 12628e2d4ce72937cd2721062baad9c5eb0fc157 Mon Sep 17 00:00:00 2001 From: Jeremy LaCivita Date: Thu, 13 Jun 2024 08:50:38 -0400 Subject: [PATCH] chore: Adding Capabilities Specification (#273) * chore(capabilities): Adding missing specs * fix: Cleanup of Capabilities requirements * Remove dangling requirements or replaced them with "This concept is out of scope for this document" --- .../general/capabilities/image1.png | Bin 0 -> 14067 bytes .../general/capabilities/image2.png | Bin 0 -> 15714 bytes .../general/capabilities/image4.png | Bin 0 -> 22598 bytes .../capabilities/user-grants/image1.png | Bin 0 -> 16914 bytes .../capabilities/user-grants/image2.png | Bin 0 -> 23485 bytes .../capabilities/user-grants/image3.png | Bin 0 -> 29394 bytes .../capabilities/user-grants/image4.png | Bin 0 -> 18794 bytes .../capabilities/user-grants/image5.png | Bin 0 -> 25027 bytes .../capabilities/user-grants/image6.png | Bin 0 -> 32865 bytes .../capabilities/user-grants/image7.png | Bin 0 -> 45710 bytes .../general/capabilities/capabilities.md | 660 ++++++++++++++++++ .../general/capabilities/user-grants.md | 593 ++++++++++++++++ 12 files changed, 1253 insertions(+) create mode 100644 requirements/images/specifications/general/capabilities/image1.png create mode 100644 requirements/images/specifications/general/capabilities/image2.png create mode 100644 requirements/images/specifications/general/capabilities/image4.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image1.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image2.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image3.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image4.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image5.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image6.png create mode 100644 requirements/images/specifications/general/capabilities/user-grants/image7.png create mode 100644 requirements/specifications/general/capabilities/capabilities.md create mode 100644 requirements/specifications/general/capabilities/user-grants.md diff --git a/requirements/images/specifications/general/capabilities/image1.png b/requirements/images/specifications/general/capabilities/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..049fc70bfc801a22ca4f9f290982cfaa7af30e49 GIT binary patch literal 14067 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 literal 0 HcmV?d00001 diff --git a/requirements/images/specifications/general/capabilities/image2.png b/requirements/images/specifications/general/capabilities/image2.png new file mode 100644 index 0000000000000000000000000000000000000000..7c0c10f7c9b0eeca22d2fc67a1f42f2ab1d1102a GIT binary patch literal 15714 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 literal 0 HcmV?d00001 diff --git a/requirements/images/specifications/general/capabilities/image4.png b/requirements/images/specifications/general/capabilities/image4.png new file mode 100644 index 0000000000000000000000000000000000000000..641c268472ba949afca8d0a585f0dd8bbd3632d6 GIT binary patch literal 22598 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 t)yP7{yrGO;fVFW{XPBA7Xg^5fM;>j z>zi*5#{@K}j3ph_6QiZSCq2e>)OoQw_%VRicNF+_T*oFRxAPAI&Z50$)9WzH_R36T2&=Xlmlndjp=& zA~8z$et_EOEL#W%shFS$W|6b5jhaoIa1Wv($pu=0_{<3Ah)?FPxmjbQwOpI?_#%p+ zVtmaVlhWU>pfuH|A47leOiV%KUB27r zlQ4Mu|N9U4EK}Yb+GWt@@^3yomY;FQopG1Fa6T5^p+4}Rf{~$-(Y^zQ`wUIaA27E# uaM0r5fjx$X7KVmj7OznMr$R9Ha)592|6L)oq+e-8TPKg7wXHhp8UG(p_rHSx literal 0 HcmV?d00001 diff --git a/requirements/images/specifications/general/capabilities/user-grants/image3.png b/requirements/images/specifications/general/capabilities/user-grants/image3.png new file mode 100644 index 0000000000000000000000000000000000000000..96d73b0ab490f6e8ea76136d11c964cd25493021 GIT binary patch literal 29394 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

+&C%v+v_F=#xuCtivh8T&v?8lsg$Nh{&+?sN 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 BU5fw! literal 0 HcmV?d00001 diff --git a/requirements/images/specifications/general/capabilities/user-grants/image5.png b/requirements/images/specifications/general/capabilities/user-grants/image5.png new file mode 100644 index 0000000000000000000000000000000000000000..26c583d2d3d7b8f2bec9c3dd9dfeafeb76af3c00 GIT binary patch literal 25027 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 literal 0 HcmV?d00001 diff --git a/requirements/images/specifications/general/capabilities/user-grants/image6.png b/requirements/images/specifications/general/capabilities/user-grants/image6.png new file mode 100644 index 0000000000000000000000000000000000000000..4761e5ea43f86552bea08db32369004b4e99a139 GIT binary patch literal 32865 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 Orx$chbjr1^-2N|1(hz(A literal 0 HcmV?d00001 diff --git a/requirements/specifications/general/capabilities/capabilities.md b/requirements/specifications/general/capabilities/capabilities.md new file mode 100644 index 000000000..30430ec06 --- /dev/null +++ b/requirements/specifications/general/capabilities/capabilities.md @@ -0,0 +1,660 @@ +# Capabilities + +Document Status: Candidate Specification + +See [Firebolt Requirements Governance](../../../governance.md) for more info. + +| Contributor | Organization | +| -------------- | -------------- | +| Andrew Bennett | Sky | +| Tim Dibben | Sky | +| Jeremy LaCivita | Comcast | +| Kevin Pearson | Comcast | +| Peter Yu | Comcast | + +## 1. Overview + +This document introduces Firebolt Capabilities, which enable discovery +of supported features, negotiation of App permissions, and end-user +grants for Apps to access sensitive features. + +Apps can detect if Capabilities are supported and available. If so, Apps +can **Use**, **Provide**, or **Manage** capabilities that they are given +access to. + +The most common case is for an App to `use` a Capability, the platform +to `provide` it, and the Distributor\'s Settings App to `manage` it: + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/image1.png) + +However, Apps may also provide Capabilities back to the platform: + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/image2.png) + +## 2. Table of Contents +- [1. Overview](#1-overview) +- [2. Table of Contents](#2-table-of-contents) +- [3. Introduction to Capabilities](#3-introduction-to-capabilities) + - [3.1. Capabilities](#31-capabilities) + - [3.2. Availability](#32-availability) + - [3.3. Permissions](#33-permissions) + - [3.4. Roles](#34-roles) + - [3.5. User Grants](#35-user-grants) +- [4. How Capabilities Work](#4-how-capabilities-work) + - [4.1. Supported Capabilities](#41-supported-capabilities) + - [4.2. Available Capabilities](#42-available-capabilities) + - [4.3. Permitted Capabilities](#43-permitted-capabilities) + - [4.4. User Granted Capabilities](#44-user-granted-capabilities) + - [4.5. Invoking Capabilities](#45-invoking-capabilities) +- [5. Configuring Device Capabilities](#5-configuring-device-capabilities) + - [5.1. Device Supported Capabilities](#51-device-supported-capabilities) + - [5.2. Device Grant Policy Overrides](#52-device-grant-policy-overrides) +- [6. Capability Schemas](#6-capability-schemas) + - [6.1. Firebolt Specification Manifest](#61-firebolt-specification-manifest) + - [6.2. Firebolt Device Manifest](#62-firebolt-device-manifest) +- [7. Capability to Feature Mapping](#7-capability-to-feature-mapping) + - [7.1. App installation](#71-app-installation) + - [7.2. Firebolt APIs](#72-firebolt-apis) + - [7.3. Extension APIs](#73-extension-apis) + - [7.4. Hidden Permissions](#74-hidden-permissions) +- [8. Firebolt Capability Catalog](#8-firebolt-capability-catalog) +- [9. APIs](#9-apis) + - [9.1. Core SDK APIs](#91-core-sdk-apis) + - [9.2. Manage SDK APIs](#92-manage-sdk-apis) + +## 3. Introduction to Capabilities + +This section is non-normative and defines the key concepts behind the +Firebolt Capabilities system. Each portion of this section provides a +background and conversational definitions of the terms used in the rest +of this document, and through all Firebolt Requirements Specifications. + +### 3.1. Capabilities + +A Capability is a discrete unit of functionality that a Firebolt device +might be able to perform. It is granular enough to enable appropriate +access controls across all Firebolt Apps, but useful enough to be a +meaningful functional unit that an App might care about. Bluetooth is a +good example of a Capability. + +The Firebolt Specification determines the range of possible +Capabilities. + +Firebolt platforms advertise which Capabilities are supported. The set +of capabilities supported by a device is an immutable set and will never +change at runtime. Supporting Wi-Fi and having an active Wi-Fi +connection are two different things. + +Firebolt platforms determine if an App is allowed to invoke the +different aspects of a Capability (see [Roles](#roles), below). + +Firebolt Apps list which Capabilities are required and optional for the +App to be installed. + +Firebolt Apps inspect which Capabilities are supported and active. + +Firebolt Distributors sign off on some, or all, of the App's listed +required and optional Capabilities. + +### 3.2. Availability + +A Capability may rely on intermittently available resources, for example +a network capability requires an Ethernet or Wi-Fi network connection. + +A supported capability is only considered available if those resources +could be used by the App right now (without taking into account any needed permissions or [User Grants](#user-grants)). For example, the needed +resources are not disabled, not tied up by the platform, and not experiencing +any intermittent network, hardware, or signal issues. + +A supported capability is always supported, but it may not always be +*available*. + +Availability of a capability is a global status, not a per-app status. + +If a Capability is available, then it is considered available globally. +Capabilities can not be available to one app, while simultaneously being +unavailable to another app. This is handled by permissions, or by +capability-specific error management, e.g. returning an error to an app that +attempts to use the video pipeline while in the Inactive Lifecycle state. + +### 3.3. Permissions + +A Permission is what allows an App to attempt to invoke an aspect of a +Capability. Permissions to a Capability are assigned to an App with a +[Role](#roles), by a Firebolt Distributor. + +Firebolt documents and APIs will use the term "Permission" +interchangeably with phrases like: + +- An App's Assigned Role for a Capability + +- App + Capability + Role + +- Etc. + +The Firebolt Specification determines which Capabilities require +Permissions. + +The Firebolt Specification determines which Permission requirements may +be overridden by Distributors. + +An App is considered to have Permission to a Capability if it is: + +- Listed with a Role in the App's manifest and signed by the App + provider + +- Listed and signed again by the Distributor on the App's behalf + +- Listed and signed by the App Publisher when running in self-signed developer + mode + +An App can invoke a Capability if: + +- It has permission, which includes a Role, for that capability + +- The capability is supported by the current device + +- The App is invoking aspects of the capability that it has the + appropriate Role for + +- The capability is [Available](#availability) at time of invocation + +See [Permitted Capabilities](#permitted-capabilities) for more info. + +### 3.4. Roles + +Every Firebolt Capability has exactly three roles: + +- Use + +- Manage + +- Provide + +While these roles will be defined on a case-by-case basis for each +capability, they should generally follow the guidelines set here. + +The `Use` role is for providing basic access so that an App can leverage +the standard use cases of the Capability. The `Use` role will not enable +an App to perform management tasks such as turning the Capability on and +off for the entire device. The `Use` role will not enable an App to +perform administrative tasks such as renaming HDMI inputs, etc. + +The `Manage` role is for providing access to a Capability's management +and administrative features. This role may be used to allow an App to +build a Settings UI for the Capability, for example. The `Manage` role +is not for creating tiers of permissions within a Capability, but for +separating out administrative APIs, for example turning a feature on and +off. + +Most Capabilities are provided by the platform, denoted by making the +`Provide` role `private` for that Capability. However, there are use +cases where Apps may provide Capabilities. The `Provide` role allows for +declaring that an App *implements* the Capability and can be registered +with the platform for fulfilling the Capability's features. This could +be used for functionality that needs to be customized from Distributor +to Distributor. The `Provide` role may also be used to allow Apps to +contribute to aggregated functionality, for example a federated search +feature. By providing a capability, an App is signing up to implement +any `Use` or `Manage` APIs required by that capability. + +Each role must be explicitly assigned. An App *never* inherits the +operations from one role by virtue of being granted another. Roles may +have overlapping functionality. + +A [Permission](#permissions) is the combination of a Capability w/ a +Role and determines which specific operations are permitted. + +### 3.5. User Grants + +A User Grant allows some Permissions to depend on the User of the +Firebolt Device to explicitly grant access for one or all Apps to use a +specific Capability. This an additional layer of access control on top +of Permissions. + +The Firebolt Specification determines which Permissions require User +Grants by default. + +It is not possible to require a User Grant for a Capability that is open +to all Apps. + +Distributors may override any User Grant details that are defined by the +Firebolt Specification if that User Grant Policy is set to +`overridable: true`. + +Consumers want to know that their Smart TV platform treats +security as a first-class design principal. As such, table-stakes User +Grant policies, e.g. App access to Bluetooth, may be denoted as +overridable: false in the Firebolt Specification, to remove any +possibility of a security flaw. + +An App is considered to have a User Grant to a Capability if it: + +- Has Permission to the Capability + +- The User Grant is for the same Role as the Permission above + +- The Capability is **securely** approved by the device user + +If an App invokes a Capability but does not have an active User Grant, +then the platform will block invocation, prompt the user for a grant, +and then continue with the original invocation, e.g. the App does not +have to call the originating API again (assuming the user did give their +approval). + +See [User Granted Capabilities](#user-granted-capabilities) for more +info. + +## 4. How Capabilities Work + +A given Capability may or may not be supported or available. +Additionally, a given Role may or may not be permitted or granted for a +given Capability. + +While support and availability of a Capability is static and global, the +permission and grant status may differ from App to App. + +Determining the status of a Role and Capability is fundamental to +both the Platform and the Apps that run on it. + +### 4.1. Supported Capabilities + +Once an App has been launched, it may need to check if a certain +capability is supported to present the appropriate user experience. For +example, an App may want to put Dolby Atmos badges next to its content, +but only if the platform supports Dolby Atmos. + +The Firebolt Specification determines which capabilities **MUST** be +supported by all Firebolt Devices, by listing those Capabilities in the +[Firebolt Specification Schema](#61-firebolt-specification-schema) as `level: "must"` in the Capabilities +array. + +For a capability to be supported, it **MUST** have *one* or *both* of +the following: + +> A supported capability **MUST** have the necessary hardware and +> software to invoke all required aspects of all Roles of the +> capability. +> +> **OR** +> +> A supported capability **MUST** have the necessary hardware and +> software to support a *certified*, after-market peripheral that +> provides the capability. Note that this includes peripherals that have +> not yet been connected to or installed on the device. + +However, a Firebolt device **MUST NOT** be considered to support a +capability if the capability is disabled by the static distributor +configuration. + +The platform **MUST** return accurate responses based on these +requirements to all [APIs](#apis) outlined below. + +### 4.2. Available Capabilities + +Once an App has been launched, it may need to check if a certain +capability is available, to start the appropriate user experience. For +example, an App that uses an external camera may need to check if the +user has set up their camera before proceeding to the main user +experience. + +A Capability is available if **all** the following are true: + +> An available Capability **MUST** be supported. +> +> An available Capability **MUST** have a provider, either an App, an +> Extension SDK, or the OS itself. +> +> The provider of the Capability **MUST** consider it to be available +> +> An available Capability **MUST NOT** be currently disabled by any +> user, account, or device setting. +> +> An available Capability **MUST** be considered available by at least +> one provider of the capability. This is specified by the requirements +> for each feature. + +An available Capability **MAY** be tied to a User Grant, regardless of +whether the user has granted it yet. Secure user grants gate permission, +not availability. + +The platform **MUST** return accurate responses based on these +requirements to all [APIs](#apis) outlined below. + +### 4.3. Permitted Capabilities + +Capabilities may be permitted to *all* Apps by the [Firebolt +Specification Schema](../../firebolt-specification.json), or to individual Apps by the Distributor-signed +App Manifest. + +An App may need to know if a Capability is permitted to it once it has +been launched. For example, it may need to check if a certain capability +is permitted, to enable the correct features for the current +distributor. For example, an App that has just been installed might not +show a Returns true for capability/role combinations that do not r +Sign-up option when running on a distributor that has not allowed it to +`use` the `commerce:subscribe` capability, and only allow existing users +to sign in. + +Determining if a Capability is permitted requires knowing which **Role** +is being leveraged. + +Permitted capabilities **MUST** be denoted as `public` in the Specification Schema](#61-firebolt-specification-schema). + +Additionally, **one** of the following **MUST** be true as well: + +> The Role **MUST** have `negotiable` set to `false` +> +> **OR** +> +> The Role **MUST** be approved for the capability by the distributor in +> the App Manifest + +A permitted Capability **MAY** be tied to a User Grant, regardless of +whether the user has granted it yet. + +The platform **MUST** return accurate responses based on these +requirements to all [APIs](#apis) outlined below. + +### 4.4. User Granted Capabilities + +Some Capabilities may require a User Grant. It is the App's choice +whether it requests these grants at launch or allows the platform to +interrupt the App's experience when User Grant-gated Capabilities are +invoked. + +Determining if a Capability has been granted by the user requires +knowing which Role is being used. + +For a Capability to be considered granted, it **MUST** be supported. + +Additionally, a Capability + Role is granted to an App if **one** of the +following is true: + +> A granted capability **MUST** have the Role securely granted to the +> App by the user and that grant must not be expired. +> +> **OR** +> +> A granted capability **MUST** have the Role permanently granted to the +> App by the App Manifest, e.g., if the user implicitly granted these by +> virtue of an end user license agreement. + +Firebolt platforms **MUST** support acquiring a user grant *at the +moment the Capability is invoked*, without requiring any reinvocation of +the Capability. + +See [User Grants](./user-grants.md), for more info. + +The platform **MUST** return accurate responses based on these +requirements to all [APIs](#apis) outlined below. + +### 4.5. Invoking Capabilities + +When invoking a Capability, there are several factors that determine +whether the calling App will be allowed. The primary factor is which +Role is being leveraged by the invocation. + +A given Capability & Role can be public or not, and it can be negotiable +or not. + +If a Role for a Capability is public and non-negotiable, then all Apps +are allowed to invoke it, without any explicit permission from the +platform distributor. This is subject to support, availability, and any +required User Grants. + +If a Role for a Capability is public and negotiable, then Apps **MUST** +be permitted by each distributor to use it on that distributor\'s +devices. + +If a Role for a Capability is private, then it **MUST NOT** be permitted +or granted to any Apps. + +A Role for a Capability **MUST NOT** be flagged as negotiable if it is +private. + +If a Capability is gated by a User Grant requirement, then any +invocation **MUST** check the grant status for the Role in question, and +potentially re-acquire a User Grant for the App to invoke it. + +The following flow diagrams show the order of operations for determining +if a Firebolt API, that depends on one or more capabilities, may be +invoked. The checks in this diagram **MUST** be executed in this order +to ensure that error codes are consistent and User Grant prompts are not +displayed to end users in situations where the API call will still not +be allowed for other reasons. + +![](../../../images/specifications/general/capabilities/image4.png) + +Note that determining user grants may involve presenting a UX to the end +user. During this time, a necessary capability may become unavailable. +Due to this, necessary Capabilities MUST be reevaluated for availability +after determining user grant status. For a more detailed flow diagram +for evaluating User Grants, see [User Grants](./user-grants.md). + +## 5. Configuring Device Capabilities + +The Firebolt Specification describes all the possible, non-Extension +capabilities that a particular version of Firebolt allows. Individual +Firebolt devices, however, may not support every Capability and may want +to override certain aspects of those Capabilities. + +Every Firebolt-compliant device **MUST** include an official, versioned +Firebolt JSON configuration that conforms to the Specification Schema](#61-firebolt-specification-schema), so that the implementation +knows how to configure each capability, and which aspects are +overridable. + +Additionally, every Firebolt-compliant device **MUST** have a versioned + +Firebolt Device JSON configuration that conforms to the Firebolt Device +Schema, so that the implementation knows how each capability has been +overridden by the Distributor for this device. + +See [Firebolt Device Schema](#firebolt-device-schema) for more info. + +### 5.1. Device Supported Capabilities + +Firebolt-compliant devices **MUST** list all the Capabilities they +support in the Device Capabilities configuration file\'s `supported` +array. + +The `supported` array **MUST** contain a `CapabilityConfig` for every +Firebolt Capability supported by this device. + +The `supported` array **MUST** contain an entry for every Capability +from the Specification Schema](#61-firebolt-specification-schema) that has a level of `must`. + +The `supported` array **MAY** contain entries for any `should` or +`could` Capabilities. + +The supported array **MUST NOT** contain any entries for Capabilities +not found in the Firebolt Specification Schema. + +### 5.2. Device Grant Policy Overrides + +Firebolt-compliant devices **MAY** override any `GrantPolicies` that +have `overridable` set to `true`. + +This can be used to permanently disable a User Grant + +Firebolt-compliant devices **MUST NOT** override any `GrantPolicies` +that have `overridable` set to `false`. + +`GrantOverrides` are included in the `grantOverrides` array of the +`CapabilityConfig` for the Capability in question. + +If both the Firebolt Specification Schema and the Device Schema have +different, valid overrides for the same capability + appId, then the +device config **MUST** be used by that device. + +## 6. Capability Schemas + +This section describes how Capabilities are represented in the static +Firebolt configuration for a device. + +### 6.1. Firebolt Specification Manifest + +Each version of Firebolt **MUST** have a single Firebolt Specification +Manifest that is the source-of-truth for and contains all possible +capabilities provided, used, or managed by Apps or Firebolt platforms. + ++The Firebolt Specification Manifest **MUST** list all capabilities defined by that version of Firebolt. + +The Firebolt Specification Manifest **MUST** specify whether each capability `must`, `should`, or `could` be implemented by Firebolt devices. + +The Firebolt Specification Manifest **MUST** specify whether each role, i.e. `use`, `manage`, and `provide`, is a `public` permission that apps may call. + +See [Invoking Capabilities](#46-invoking-capabilities), for more info on public and negotiable capabilities. + +The Firebolt Specification Manifest **MUST** include the entire Firebolt OpenRPC specification for all APIs in the 'apis` block. + +The Firebolt Specification Manifest **MUST** specify which major versions of the Firebolt RPC APIs are required for backwards compatibility. + +The [Firebolt Version Manifest JSON-Schema](https://github.com/rdkcentral/firebolt-configuration/blob/main/src/schemas/version-manifest/version-manifest.json) defines the JSON semantics for this file. + +The latest version of the firebolt-specification.json **MUST** be available at this URL: + +``` +http://rdkcentral.github.io/firebolt/requirements/latest/specifications/firebolt-specification.json +``` + +The version of the firebolt-specification.json associated with this document **SHOULD** be available at [../../firebolt-specification.json](../../firebolt-specification.json). + +### 6.2. Firebolt Device Manifest + +Each Firebolt device will have a static configuration for overriding +which capabilities are supported, as well as any negotiable Capability +overrides. + +The Device Manifest **MUST** specify which capabilities the device supports. + +The Device Manfiest **MUST** include every capability from the Firebolt Specification Manifest that has a `level` of `must` in its supported list. + +The Device Manifest **MUST** specify which capabilities have distributor define Grant Policy Overrides. + +The Device Manfiest **MUST NOT** have any Grant Policies that override Grant Policies from the Firebolt Specification Manifest that have `overridable` set to `false`. + +The [Firebolt Device Manifest JSON-Schema](https://github.com/rdkcentral/firebolt-configuration/blob/main/src/schemas/device-manifest/device-manifest.json) defines the JSON semantics for this file. + +## 7. Capability to Feature Mapping + +Capabilities denote functionality, and functionality can manifest in several ways. + +### 7.1. App installation + +Some Apps may not be useful, and may even prove counter to their goals, +if installed on a device without certain capabilities. For example, a +Dolby Vision demonstration App that requires it only be installed on +devices that support Dolby Vision, to avoid playing back lower quality +content that users might mistake for Dolby Vision content. + +If an App includes a capability in one of its App Manifest's `required` +Capability lists: + +- `app.capabilities.used.required` + +- `app.capabilities.managed.required` + +- `app.capabilities.provided.required` + +Then that App **MUST NOT** be installable on Firebolt devices that do +not support that capability. + +Apps that have an unsupported capability inside one of its `optional` +lists **SHOULD NOT** be prevented from installation, unless there is +some other reason outside the scope of this document. + +### 7.2. Firebolt APIs + +Some Firebolt APIs may require the use of one or more Capabilities. +These methods **MUST** have all required Capabilities listed in the method's OpenRPC schema. + +Capabilities are listed in one of three OpenRPC extensions attached to +the `'capabilities' `tag on the method: `x-uses`, `x-manages`, +`x-provides`. + +If a method lists more than one Capability for a role, then it may +specify that those capabilities are either all required, any combination +of them is required, or one and only one is required. The platform **MUST parse any `x-uses-operator` values which will have values of either `allOf`, `anyOf`, or `oneOf`. This value defaults to `allOf` if not specified. An example of +this is an API to find and pair remotes, regardless of which connection +protocol is needed. This API requires `anyOf` `bluetooth:scan`, +`rf4ce:scan`, `wifi:scan`. If one or more of these capabilities is +available (and permitted) then the API will execute using the available +and permitted protocols. The same pattern applies to `x-manages-operator`. The `x-provides` extension only supports a single capability, so this pattern does not extend to providers. + +If a method *requires* a capability, and that capability requires a user +grant that the App does not have, then the platform **MUST** block and +initiate a User Grant flow. Once granted, the platform **MUST** return +the expected value without the App having to reinvoke the API. If not +granted after the User Grant flow, the platform **MUST** return an +error. + +Capabilities that enhance an API, but are not fundamentally required, +for example a `play` API optionally uses the `'hdr:dolbyvision'` +capability, **MUST NOT** be listed in the OpenRPC schema. These are considered *optional* capabilities of the method implementation. + +If a method leverages an *optional* Capability that is unavailable or +unpermitted, it **MUST** leave out or defer the optional functionality. + +If a method leverages an *optional* Capability that requires a user +grant the App does not have, it **MUST** leave out the optional +functionality, and it **MUST NOT** request a user grant. + +### 7.3. Extension APIs + +Extension SDKs implement their methods in the cloud but rely on +Firebolt's Permissions and Capabilities model. + +Requirements for Extension SDKS are outside of the scope of this document. + +### 7.4. Hidden Permissions + +A hidden permission arises when an API requires permission to one +Capability which in turn requires another Capability gated by a +different permission. This is not supported by Firebolt, and all +permission dependencies should be validated to avoid this. + +Firebolt Capabilities **MUST NOT** have hidden permissions. + +For example: + +- API `Module.methodOne()` requires permission to `use` the + `'contrived:capability1'` Capability + +- API `Module.methodTwo()` requires permission to `use` the + `'contrived:capability2'` Capability + +- `methodOne`'s implementation calls `methodTwo` + +There is now a hidden permission: `methodOne` requires both +`capability1` and `capabilty2`. + +Note that it's fine for a method to leverage an ungated, but also +unavailable Capability, such as a DIAL API failing because the network +capability is unavailable. + +## 8. Firebolt Capability Catalog + +Firebolt Capabilities are enumeraged in the [Firebolt Specification Manifest](../../firebolt-specification.json). + +## 9. APIs +All of the APIs below have full OpenRPC schemas in the [Firebolt OpenRPC JSON document](../../../specifications/firebolt-open-rpc.json). + +### 9.1. Core SDK APIs + +Several APIs are exposed by the Firebolt Core SDK as part of the +`Capabilities` module. This module is intended for App +developers to have one place to check for all aspects of "can I do +this." Including supported, available, permitted, and granted +Capabilities. It also provides bulk operations for figuring out which +needed Capabilities are unavailable, in order to wait for them, and +which ones are ungranted, in order to request them. + +### 9.2. Manage SDK APIs + +Several APIs are exposed by the Firebolt Manage SDK as part of the +`UserGrants` module. This module is intended for +Management UIs that show a list of grants per App or Capability, and +allow users to revoke them. diff --git a/requirements/specifications/general/capabilities/user-grants.md b/requirements/specifications/general/capabilities/user-grants.md new file mode 100644 index 000000000..f87342a5c --- /dev/null +++ b/requirements/specifications/general/capabilities/user-grants.md @@ -0,0 +1,593 @@ +# User Grants + +Document status: Candidate Specification + +See [Firebolt Requirements Governance](../../../governance.md) for more info. + +| Contributor | Organization | +| -------------- | -------------- | +| Andrew Bennet | Sky | +| Tim Dibben | Sky | +| Jeremy LaCivita | Comcast | +| Kevin Pearson | Comcast | +| Peter Yu | Comcast | + +## 1. Overview + +This document describes the requirements for Firebolt User Grants. User +Grants enable end-user control over which Apps have access to +potentially sensitive Firebolt Capabilities. For example, a user might +want to explicitly approve of any App attempting to purchase new content +by entering an account-holder PIN on the RCU. + +User Grants are also common when two apps need to share data, for +example, Firebolt has a `Discovery.watched` method that allows apps to +inform Firebolt that a user has finished watching some content. This +method allows an app to **provide** the watch history capability and the +aggregated experience to **use** it. See Firebolt +[Capabilities](./capabilities.md) requirements for more info on the `use` and `provide` roles of a +capability. + +This sort of data exchange involves several parties: minimally the user, +the publisher of the OTT app, and the distributor of the Firebolt +device. Additionally, this exchange could also involve privacy laws of +the user\'s home geo-political state, local I.T. best practices around +PII, or even a particular product\'s public position on their privacy +offering to the market. Because of the importance and complexity of +personal data, Firebolt allows each distributor to configure which +Firebolt capabilities require User Grants and what policies should be +applied to acquiring those grants. + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/user-grants/image1.png) + +Distributors can configure what kind of user grant is required for a +particular capability, e.g. a simple acknowledgement of an \"OK\" +button, an account-owner PIN entry, an account-owner three-factor +authentication challenge, etc. + +Distributors can also configure whether certain user grants are opt-in +or opt-out, and whether explicit prompting of the user is required. + +## 2. Table of Contents +- [1. Overview](#1-overview) +- [2. Table of Contents](#2-table-of-contents) +- [3. Introduction to User Grants](#3-introduction-to-user-grants) + - [3.1. Active Grant](#31-active-grant) + - [3.2. Denied Grant](#32-denied-grant) + - [3.3. Unset Grant](#33-unset-grant) + - [3.4. Granting Capability](#34-granting-capability) + - [3.5. Grant Policy](#35-grant-policy) + - [3.6. Privacy Setting](#36-privacy-setting) +- [4. User Grant Requirements](#4-user-grant-requirements) + - [4.1. Granting Capability](#41-granting-capability) + - [4.1.1. Acknowledgement](#411-acknowledgement) + - [4.1.2. Pin Challenge](#412-pin-challenge) + - [4.2. Grant Policy](#42-grant-policy) + - [4.2.1. Grant Requirements](#421-grant-requirements) + - [4.2.2. Grant Lifespan](#422-grant-lifespan) + - [4.2.3. Grant Privacy Setting](#423-grant-privacy-setting) + - [4.3. Distributor Overrides](#43-distributor-overrides) + - [4.4. Application Overrides](#44-application-overrides) +- [5. Grant Execution](#5-grant-execution) + - [5.1. Capability Check](#51-capability-check) + - [5.2. Grant Policy Resolution](#52-grant-policy-resolution) + - [5.3. Active Grant Check](#53-active-grant-check) + - [5.4. Grant Prompt and Resolution](#54-grant-prompt-and-resolution) +- [6. Schemas](#6-schemas) + - [6.1. Grant Policy](#61-grant-policy) + - [6.2. GrantRequirements](#62-grantrequirements) + - [6.3. GrantStep](#63-grantstep) + - [6.4. GrantKey](#64-grantkey) + - [6.4.1. GrantScope](#641-grantscope) + - [6.4.2. GrantLifespan](#642-grantlifespan) + - [6.4.3. PrivacySetting](#643-privacysetting) +- [7. APIs](#7-apis) + - [7.1. Manage SDK APIs](#71-manage-sdk-apis) + - [7.1.1. GrantInfo Object](#711-grantinfo-object) + - [7.1.2. App Method](#712-app-method) + - [7.1.3. Device Method](#713-device-method) + - [7.1.4. Capability Method](#714-capability-method) + - [7.1.5. Grant Method](#715-grant-method) + - [7.1.6. Deny Method](#716-deny-method) + - [7.1.7. Clear Method](#717-clear-method) + + +## 3. Introduction to User Grants + +This section defines the key concepts behind the Firebolt User Grant +system. User Grants build on top of [Firebolt +Capabilities](./capabilities.md). +Since Capabilities are fundamental to user grants, it is recommended to +read the Capabilities requirements first before reading this document. + +Each portion of this section provides a background and conversational +definitions of the terms used in the rest of this document, and through +other Firebolt Requirements Specifications. + +As described in the Overview, a User Grant allows an end user to +explicitly allow (or not allow) an app to use certain Firebolt +Capabilities. Firebolt Distributors need flexibility in configuring +which Capabilities require what types of user interaction, PIN vs +password, etc. + +The following concepts inform how the Firebolt User Grant APIs and +architecture are designed. + +### 3.1. Active Grant + +An **Active Grant** is a User Grant that has already been granted by the +user for a Capability to a specific app (if the Grant Policy is per-app) +or all apps. Active Grants do not need to be granted again (until they +expire) and may be revoked or expire. + +### 3.2. Denied Grant + +A **Denied Grant** is a User Grant that has already been explicitly +*denied* by the user for a Capability to a specific app (if the Grant +Policy is per-app) or all apps. Denied Grants do not need to be denied +again (until they expire) and may be revoked or expire. This serves to +allow the Grant Policy lifetime to be applied to explicit denials as +well. + +### 3.3. Unset Grant + +An **Unset Grant** is a User Grant that has no persisted state. This +could be because the user has never granted or denied it, or because it +was previously granted/denied, but has since expired. Additionally, the +user or platform may clear out an active or denied grant, which results +in this state. + +### 3.4. Granting Capability + +User grants typically require some sort of user experience. Firebolt +delegates display of these user experiences to (typically) first-party +apps, which must provide them as **Granting Capabilities**. Therefore, +it\'s quite possible that using a capability such as watch history +initiates a User Grant request which itself requires another capability, +e.g. the \"acknowledge\" capability, to fulfill the original API. + +In the following diagram, an OTT App is calling an API that would share +watch history data with the 1st party aggregated experience on the +device. This capability is configured with a [Grant +Policy](#grant-policy) (see below) that specifies use of an +Acknowledgement Challenge Capability. the \"Watch History\" capability +is what is being accessed, and the \"Acknowledgement Challenge\" +capability is how this device is configured to grant access to that +capability. Said another way, the Acknowledgement Challenge is the +*Granting Capability*. + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/user-grants/image2.png) + +Note that the granting capability UI is provided by another app. The +Provider APIs for each granting capability type are out of scope for +this document. + +A granting capability is generally agnostic to the original capability +that it is helping to grant and can be reused by several capabilities +via a Grant Policy. + +### 3.5. Grant Policy + +A **Grant Policy** ties a set of user grant-related configuration values +to a capability. This allows a Firebolt distributor, or the Firebolt +specification itself, to define the business policy of a particular user +grant. + +Grant Policies specify details like how long the grant lasts and what is +the scope of the grant, e.g. a single app, or all apps. + +### 3.6. Privacy Setting + +A **Privacy Setting** is a link between a Grant Policy and any Firebolt API that is tagged with the Property pattern and returns a +`boolean`. This allows User Grant state to be linked to Privacy Settings +on the device or account. + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/user-grants/image3.png) + +How Firebolt devices persist Privacy Settings is outside the scope of +this document. + +## 4. User Grant Requirements + +### 4.1. Granting Capability + +A granting capability **MUST** have the category portion of its +capability key set to `usergrant`. For example: + +`xrn:firebolt:capability:usergrant:acknowledge` + +In order for a granting capability to be available, it **MUST** be +provided by some app that is currently loaded. + +Each granting capability **MUST** have a schema, in the Firebolt +Specification Schema, to validate that any configuration associated with +it is valid. + +#### 4.1.1. Acknowledgement + +The Acknowledgement capability enables a user to acknowledge a user +grant by simply clicking a button. + +This capability has the following key: + +`xrn:firebolt:capability:usergrant:acknowledgechallenge` + +The configuration for this capability is always `null`, i.e., there is +no configuration. + +For more info on how an app can provide the acknowledge capability, see +Acknowledge Provider. **TODO**: add link. + +#### 4.1.2. Pin Challenge + +The Pin Challenge capability enables a user to confirm that they are the +account owner, or a delegate of, by responding to a numeric PIN +challenge. + +This capability has the following key: + +`xrn:firebolt:capability:usergrant:pinchallenge` + +For more info on how an app can provide the acknowledge capability, see +Pin Challenge Provider. **TODO**: add link. + +### 4.2. Grant Policy + +If a Capability is configured with a `GrantPolicy` then the User Grants +specified by the Grant Policy **MUST** be evaluated before a GrantPolicy +llowing access to that Capability. + +A Grant Policy **MUST** have a `scope` for the grant, which determines +whether the user will be granting the capability to the current app or +to all apps. + +A Grant Policy **MUST** have an `overridable` flag that determines if it +may be overridden downstream. For Grant Policies in the Firebolt Version +Manifest, the Device Manifest may override if `overridable` is `true`. +For Grant Policies in the Device Manifest, individual [App +Manifests](https://github.com/rdkcentral/firebolt-configuration/src/schemas/app-manifest/app/app.json) may override the grant if `overridable` is `true`. + +#### 4.2.1. Grant Requirements + +A Grant Policy **MUST** have at least one `GrantRequirements` object, +which itself has a list of zero or more [Granting +Capabilities](#granting-capability) and their configurations. If all the +granting capabilities are supported and available, then they all +**MUST** be invoked. This allows for multiple security checks, e.g. +allow watch history data to be collected if the user has opted into +usage data collection **and** they confirm via an acknowledgement +challenge UI. If one or more of the granting capabilities is not +supported or available, then the entire Grant Requirements block is not +valid for acquiring a user grant. + +A Grant Policy **MAY** have more than one `GrantRequirements` object, +which are ranked in order of preference. This allows for low-friction +but high-security methods to be preferred, e.g. allow in-app purchases +with a passive facial recognition scan, with higher-friction fallbacks +to ensure security on devices with less capabilities, e.g. allow in-app +purchases if the account owner performs a multi-factor authentication +flow. This list of `GrantRequirements` objects is stored in the Grant +Policy\'s `options` field. + +If a Grant Policy has more than one `GrantRequirements` option, then the +highest priority list with all its required capabilities supported and +available **MUST** be used. Note that the app which initiated the +original capability check **does not** need to have permission (or a +grant) to any of the granting capabilities that might be invoked. The +app is not using them, the Firebolt device is using them. + +#### 4.2.2. Grant Lifespan + +A Grant Policy **MUST** have a `lifespan`, which determines how long a +grant is valid for. + +> If the lifespan is set to `once`, then any grant resulting from this +> policy **MUST** be active for a single API transaction. +> +> If the lifespan is set to `forever`, then any grant resulting from +> this policy **MUST** be active until explicitly revoked. +> +> If the lifespan is set to `appActive`, then any grant resulting from +> this policy **MUST** be active until the app goes into one of the +> `inactive`, `suspended`, or `unloading` states. +> +> If the lifespan is set to `powerActive`, then any grant resulting from +> this policy **MUST** be active until the device power goes into any +> state other than `active`. +> +> If the lifespan is set to `seconds`, then any grant resulting from +> this policy **MUST** be active until `lifespanTtl` seconds have passed +> since the grant was issued. + +If a Grant Policy has the `lifespan` set to `seconds`, then the +`lifespanTtl` **MUST** be set to a non-zero, positive number of seconds. + +#### 4.2.3. Grant Privacy Setting + +A Grant Policy **MAY** have a `PrivacySetting` object, which +associates any Firebolt `boolean` property API with this Grant Policy. +The Privacy Setting points to the RPC name of the property\'s getter +method. + +The associated property API **MUST** have an `x-allow-value` extension +on the \"property\" tag set to true or false. + +If a Grant Policy has a Privacy Setting, then the `PrivacySetting` +**MUST** be evaluated **before** any `GrantRequirements`. + +> The Privacy Setting **MUST** have an `autoApplyPolicy` which **MUST** +> be one of the following values: +> +> `always` - Silently grant if the getter for the `property` returns the +> property\'s `x-allow-value`. Silently deny if the getter for the +> `property` returns `!x-allow-value`. +> +> `allowed` - Silently grant if the getter for the `property` returns +> the property\'s `x-allow-value`. +> +> `disallowed` - Silently deny if the getter for the `property` returns +> the property\'s `!x-allow-value`. +> +> `never` - Do not silently grant or deny based on this Grant Policy. +> +> If the Privacy Setting has `revokeGrantsOnDisallow` set to `true`, +> then **all active** user grants that resulted from this Grant Policy +> **MUST** be revoked if and when the property value specified by +> `property` ever changes to `!x-allow-value`. This enables +> distributors to decide whether changes to a Privacy Setting affects +> only new User Grants or existing, active User Grants as well. +> +> If the Privacy Setting has `updateProperty` set to `true`, then a +> successful user grant from this Grant Policy **MUST** also result in +> updating the property value specified by `property` to +> `x-allow-value`. +> +> If the Privacy Setting has `updateProperty` set to `true`, then a +> rejected **or expiring** user grant from this Grant Policy **MUST** +> also result in updating the property value specified by `property` to +> `!x-allow-value`. This is considered a \"disallow\" and +> **MUST** initiate evaluation of the `revokeGrantsOnDisallow` value. +> +> If the Grant Policy `scope` is set to `app` then the property +> specified by `property` **MUST** have a single context +> parameter of type `string` and the requesting appId **MUST** be passed +> to all get/set/subscribe calls fulfilling this section of requirements. + +### 4.3. Distributor Overrides + +Capability Grant Policies in the Firebolt Version Manifest are designed +to be overridden by Distributors to allow for different privacy use +cases across businesses and geographic regions. These overrides go in +the Device Manifest under the `grantPolicies` section of the +`capabilities` section. + +Distributor overrides **MUST** be for Grant Policies that are +`overridable`. + +See the [Firebolt Configuration Schemas +repository](https://github.com/rdkcentral/firebolt-configuration/) for +more information on the Firebolt Version Manifest and Device Manifest. + +### 4.4. Application Overrides + +Firebolt supports creating active grants via the App manifest, which +allows distributors and App publishers to decide that a particular app +will already be granted some capability. This is typically used for +first-party apps that come pre-installed but could be used for other +purposes. + +If an app has a role/capability listed in its App Manifest, then it is +considered to have an active grant for that capability if the manifest +has a valid signature. + +App Manifests overrides **MUST** be for Grant Policies that are +`overridable` and scoped to `app`. + +See the [Firebolt Configuration Schemas +repository](https://github.com/rdkcentral/firebolt-configuration/) for +more information on Firebolt App Manifests. + +## 5. Grant Execution + +When a Firebolt API is called the platform **MUST** first collate all +the device User Grant configurations that apply to every capability that +the API uses. This list **MUST** then be filtered to remove any User +Grants that have already been granted for the current capability for +this app and role. + +### 5.1. Capability Check + +First, all capabilities necessary to fulfill the API are collected. + +![](../../../images/specifications/general/capabilities/user-grants/image4.png) + +### 5.2. Grant Policy Resolution + +Next, each capability is checked to see if there is a Firebolt, +Distributor, or App Grant Policy that applies, and that none of them are +invalid, e.g. an override that is now allowed. + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/user-grants/image5.png) + +### 5.3. Active Grant Check + +Then, each Grant Policy is evaluated to see if there is already an +active grant, or if it is linked to a Privacy Setting configured to skip +user-prompts. + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/user-grants/image6.png) + +### 5.4. Grant Prompt and Resolution + +Finally, each needed Granting Capability is invoked to present a UX to +the end user, and any linked Privacy Settings are updated as +appropriate. If all succeeds, then the API is invoked. + +![Diagram Description automatically +generated](../../../images/specifications/general/capabilities/user-grants/image7.png) + +## 6. Schemas + +The following schemas give an overview of the schemas outlined by this +document. See the [Firebolt Configuration Schemas +repository](https://github.com/rdkcentral/firebolt-configuration/) for +the latest versions of these schemas. + +### 6.1. Grant Policy + +Grant Policies have the following properties. + +| Property | Type | Description | +|-------------|-----------------------|-------------------------------------| +| `options` | `GrantRequirements[]` | An array of GrantRequirements, any one of which could be used to Grant a requested capability/role to an App. The first one that is completely supported by the current device should be used. | +| `scope` | `string` | Whether the resulting user grant applies to all Apps or just the requesting App. | +| `lifespan` | `string` | How long the resulting user grant (or deny) will last. | +| `lifespanTtl` | `integer` | If lifespan is `'seconds'` this represents the number of seconds. | +| `privacySetting` | `PrivacySetting` | Links this Grant Policy to a privacy setting. | +| `overridable` | `boolean` | Whether a distributor may override this GrantPolicy with their own. | + +### 6.2. GrantRequirements + +A list of `GrantSteps` objects describing which capabilities and any +optional configuration needed to fulfill this grant policy. These +capabilities must be from the capability category `usergrant` which +denotes special capabilities that perform user grants, e.g. an +acknowledge challenge capability. + +| Property | Type | Description | +|-------------|-----------------|-------------------------------------------| +| `steps` | `GrantStep[]` | An array of GrantSteps, all of which need to be verified to fulfill this GrantPolicy. | + +### 6.3. GrantStep + +| Property | Type | Description | +|-------------|----------------|-------------------------------------------| +| `capability` | `string` | The Granting Capability to use for this step in the grant flow. | +| `configuration ` | `object` | The configuration for the Granting Capability, which is specific to each type. | + +### 6.4. GrantKey + +A CapabilityKey with the \ set to `usergrant`: + +`/\^xrn:firebolt:capability:usergrant:\[a-zA-Z0-9\\-\]{1,32}\$/` + +#### 6.4.1. GrantScope + +A `string` enumeration. + +| Value | Description | +|----------------|--------------------------------------------------------| +| `device` | The resulting user grant will apply to all Apps on the device. | +| `app` | The resulting user grant will apply to the requesting App only. | + +#### 6.4.2. GrantLifespan + +A `string` enumeration. + +The resulting user grant will only be valid: + +| Value | Description | +|----------------|--------------------------------------------------------| +| `once` | for a single usage, e.g. one API call. | +| `forever` | until the end of time. | +| `appActive` | until the app enters a non-Active Lifecycle state: inactive, suspended | +| `powerActive` | until the device leaves the Active power state. | +| `seconds` | until \ seconds have passed. | + +#### 6.4.3. PrivacySetting + +| Value | | Description | +|--------------------|----------|------------------------------------------| +| `property` | string | The fully qualified RPC method name of the associated property setter, e.g. `Privacy.limitAdTracking` | +| `autoApplyPolicy` | string | Set the auto grant policy to `always`, `allowed`, `disallowed`, `never` | +| `revokeGrantsOnDisallow` | boolean | Any grants made from this policy will be revoked if/when the property is ever set to the deny value | +| `updateProperty` | boolean | Whether to update the property value to match the grant. | + +## 7. APIs + +APIs for User Grants are covered in the [Capabilities Requirements +document](./capabilities.md). + +### 7.1. Manage SDK APIs + +These APIs are intended for trusted apps to expose a UI for end-users to +manage the grants given to the device and various apps. Permission for +these APIs should only be given to a trusted settings app performing +this function. + +#### 7.1.1. GrantInfo Object + +Object describing a persisted active or denied Grant. + +```typescript +type GrantInfo = { + appId: string, + state: "active" | "denied", + capability: string, + role: "use" | "manage" | "provide" + lifespan: "once" | "forever" | "appActive" | " powerActive" | "seconds" + expires: integer +} +``` + +#### 7.1.2. App Method + +Returns all active and denied user grants for the given App, **NOT** +including those granted to all apps via the device. + +```typescript +UserGrants.app(appId: string): GrantInfo[] +``` + +#### 7.1.3. Device Method + +Returns all active and denied user grants for the Device. + +```typescript +UserGrants.device(): GrantInfo[] +``` + +#### 7.1.4. Capability Method + +Returns all active and denied user grants for the given Capability. + +```typescript +UserGrants.capability(capability: string): GrantInfo [] +``` + +#### 7.1.5. Grant Method + +Grants a given Capability, to a specific app if appropriate. Calling +this results in a persisted Active Grant that lasts for the duration of +the Grant Policy lifespan. + + +```typescript +UserGrants.grant(role: string, capability: string, appId?:string): void +``` + +#### 7.1.6. Deny Method + +Denies a given Capability, to a specific app if appropriate. Calling +this results in a persisted Denied Grant that lasts for the duration of +the Grant Policy lifespan. + +```typescript +UserGrants.deny(role: string, capability: string, appId?: string):void +``` + +#### 7.1.7. Clear Method + +Clears any persisted active or denied grant for a Capability, for a +specific app if appropriate. This results in an Unset Grant. This method +may take a wildcard value of `'*'` for role, capability, or appId, in +order to clear grant state in bulk. + +```typescript +UserGrants.clear(role: string, capability: string, appId?:string): void +```