F5BigSubscriberAttribute¶
Overview¶
The F5BigSubscriberAttribute Custom Resource (CR) declares a well-known subscriber session attribute and whether the system should import it from incoming control-plane messages and/or export it to outgoing messages. Subscriber attributes are the fields stored in the subscriber session (for example, imsi, ip-address, user-name) and are used by Policy Enforcement, reporting, and logging. RADIUS protocol profiles reference these attributes by name to map parsed AVP values into the subscriber session.
This document guides you through understanding, configuring and deploying a simple F5BigSubscriberAttribute CR.
Parameters¶
The following tables describe the F5BigSubscriberAttribute CR parameters.
metadata¶
| Parameter | Description |
|---|---|
name |
The unique name of the Subscriber Attribute. This value is referenced by protocol profiles (for example, in radiusMessages.attributeList.subscriberAttribute). |
namespace |
The Kubernetes namespace where the attribute is installed. |
spec¶
The table below describes the CR’s spec parameters:
| Parameter | Description |
|---|---|
import |
Specifies whether the subscriber attribute can be imported (parsed) from the incoming messages. The default value is true. |
export |
Specifies whether the subscriber attribute can be exported (inserted) to the outgoing messages. The default value is true. This option is available only when the attribute is used in a Gx protocol profile and not for a RADIUS protocol profile. |
wellKnownAttributeId |
Specifies an identifier of a well-known (built-in) subscriber attribute. The system provides a special handling for well-known subscriber attributes. For example, most of the well-known attributes are included into session reporting records by default. The allowed values are not-defined, called-station-id, ip-address, imeisv, user-name, user-location-information, imsi, rat-type, nas-ip-address, nas-ipv6-address, subscriber-id, calling-station-id. The default value is not-defined. |
CR Examples¶
For IMSI:
apiVersion: "k8s.f5net.com/v1"
kind: F5BigSubscriberAttribute
metadata:
name: "subscriber-attribute-imsi"
spec:
import: true
export: true
wellKnownAttributeId: "imsi"
For Subscriber IP address (Framed IP):
apiVersion: "k8s.f5net.com/v1"
kind: F5BigSubscriberAttribute
metadata:
name: "subscriber-attribute-framed-ip"
spec:
import: true
export: true
For Username (NAI):
apiVersion: "k8s.f5net.com/v1"
kind: F5BigSubscriberAttribute
metadata:
name: "subscriber-attribute-user-name"
spec:
import: true
export: true
wellKnownAttributeId: "user-name"
For Calling-Station-Id:
apiVersion: "k8s.f5net.com/v1"
kind: F5BigSubscriberAttribute
metadata:
name: "subscriber-attribute-calling-station-id"
spec:
import: true
export: true
wellKnownAttributeId: "calling-station-id"
For NAS IP address (originator):
apiVersion: "k8s.f5net.com/v1"
kind: F5BigSubscriberAttribute
metadata:
name: "subscriber-attribute-nas-ip"
spec:
import: true
export: true
wellKnownAttributeId: "nas-ip-address"
CR shortName¶
CR shortNames provide an easy way to view installed CRs, and their configuration parameters. The CR shortName can also be used to delete the CR instance. The F5BigSubscriberAttribute CR shortName is subscrattr.
View CR instance:
oc get subscrattr -n <namespace>
View CR configuration:
oc get subscrattr -n <namespace> -o yaml
Deployment¶
Use the following steps to deploy the example F5BigSubscriberAttribute CR.
Copy the F5BigSubscriberAttribute CRs into a YAML file:
apiVersion: apiextensions.k8s.io/v1 kind: "CustomResourceDefinition" metadata: name: <<name>>.k8s.f5net.com # def_webhook_conversion_annotation # alias_disable spec: group: k8s.f5net.com versions: - name: v1 served: true storage: true # en_status_subresource schema: openAPIV3Schema: type: object required: - spec properties: # def_status_object spec: type: object properties: import: description: > Specifies whether the subscriber attribute can be imported (parsed) from the incoming messages. The default value is true. type: boolean default: true enum: [true, false] export: description: > Specifies whether the subscriber attribute can be exported (inserted) to the outgoing messages. The default value is true. This option is available only when the attribute is used in a Gx protocol profile and not for a RADIUS protocol profile. type: boolean default: true enum: [true, false] wellKnownAttributeId: description: > Specifies an identifier of a well-known (built-in) subscriber attribute. The system provides a special handling for well-known subscriber attributes. For example, most of the well-known attributes are included into session reporting records by default. type: string default: "not-defined" enum: ["not-defined","called-station-id","ip-address","imeisv","user-name","user-location-information","imsi","rat-type","nas-ip-address","nas-ipv6-address","subscriber-id","calling-station-id"]
Install the CR:
oc apply -f cnf-subscrattr.yaml
Feedback¶
Provide feedback to improve this document by emailing cnfdocs@f5.com.