In computer security, Mandatory Access Control (MAC) usually refers to systems in which all subjects and objects are assigned a security label. A security label is composed of a set of security attributes. Along with a system authorization policy, the security labels determine access. Rules within the system authorization policy determine whether the access will be granted based on the security attributes of the subject and object.
Historically, security labels used by Multi-Level Secure (MLS) systems are comprised of a sensitivity level (or classification) field and a compartment (or category) field, as defined in [
RFC 5570]. As MAC systems evolved, other MAC models gained popularity. For example, SELinux, a Flux Advanced Security Kernel (FLASK) implementation, has security labels represented as colon-separated ASCII strings composed of values for identity, role, and type. The security labels are often referred to as security contexts.
Traffic Selector (TS) payloads specify the selection criteria for packets that will be forwarded over the newly set up IPsec Security Association (SA) as enforced by the Security Policy Database (SPD) [
RFC 4301].
This document specifies a new TS Type, TS_SECLABEL, for IKEv2 that can be used to negotiate security labels as additional selectors for the SPD to further restrict the type of traffic that is allowed to be sent and received over the IPsec SA.
The key words "
MUST", "
MUST NOT", "
REQUIRED", "
SHALL", "
SHALL NOT", "
SHOULD", "
SHOULD NOT", "
RECOMMENDED", "
NOT RECOMMENDED", "
MAY", and "
OPTIONAL" in this document are to be interpreted as described in BCP 14 [
RFC 2119] [
RFC 8174] when, and only when, they appear in all capitals, as shown here.
The negotiation of Traffic Selectors is specified in
Section 2.9 of
RFC 7296, where it defines two TS Types (TS_IPV4_ADDR_RANGE and TS_IPV6_ADDR_RANGE). The TS payload format is specified in
Section 3.13 of
RFC 7296. However, the term "Traffic Selector" is used to denote the TS payloads and individual Traffic Selectors of that payload. Sometimes, the exact meaning can only be learned from context or if the item is written in plural ("Traffic Selectors" or "TSes"). This section clarifies these terms as follows:
A Traffic Selector (capitalized, no acronym) is one selector for traffic of a specific Traffic Selector Type (TS Type). For example, a Traffic Selector of TS Type TS_IPV4_ADDR_RANGE for UDP (protocol 17) traffic in the IP network 198.51.100.0/24 covering all ports is denoted as (17, 0, 198.51.100.0-198.51.100.255).
A TS payload is a set of one or more Traffic Selectors of the same or different TS Types. It typically contains one or more of the TS Type of TS_IPV4_ADDR_RANGE and/or TS_IPV6_ADDR_RANGE. For example, the above Traffic Selector by itself in a TS payload is denoted as TS((17, 0, 198.51.100.0-198.51.100.255))
The negotiation of Traffic Selectors is specified in
Section 2.9 of
RFC 7296 and states that the TSi/TSr payloads
MUST contain at least one TS Type. This document adds a new TS Type of TS_SECLABEL that is valid only with at least one other TS Type. That is, it cannot be the only TS Type present in a TSi or TSr payload. It
MUST be used along with an IP address selector type, such as TS_IPV4_ADDR_RANGE and/or TS_IPV6_ADDR_RANGE.