Custom Attributes: Overview
Summary: An introduction to custom attributes, a feature that allows your organization to add its own properties to groups, assets, and findings
The new custom attributes feature allows users to easily add additional properties to assets, findings, and groups. The feature will allow you to create up to 20 custom attributes to the Hosts, Host Findings, Applications, Application Findings, and Groups list views. You can define a custom attribute to be one of the following data types:
- String
- List of String
- Long Text
- Integer
- List of Integer
- Float
- List of Float
- Date
- URL
- List of URL
- Boolean
- List of Boolean
You can create custom attributes from the Client Settings page.
The platform deeply integrates custom attributes into the list views. You can filter and group your data by custom attributes and add them as columns to list views. As you can turn filters, columns, and Group By into views, exports, and custom widgets, you can also bring custom attributes into dashboards and reporting. You can also use filters based on custom attributes when defining automation rules.
You can choose to propagate (cascade) custom attributes down to lower-level models. By propagating custom attributes, you will make those custom attributes available within additional list views.
To propagate data for custom attributes, you configure this behavior when creating a custom attribute. You can propagate host attributes down to host findings and application attributes down to application findings. You can also propagate custom attributes on the Groups page down to assets and findings within the group.
Data Types
Each data type has specific requirements and limitations. For more information, see Custom Attribute Data Types.
Creating Custom Attributes
You must go to the Client Settings page to create new custom attributes. For more information, visit Creating a Custom Attribute.
Assigning Custom Attributes
To assign custom attributes to groups, assets, or findings, you will need additional privileges specific to that list view. For more information on assigning or modifying values, visit Editing Custom Attributes.
Adding Attributes to the List View
For attributes other than those of the Long Text type, you can add the custom attributes as columns to the list view. To do this, search for columns by the user-defined name.
All custom attributes columns are optional within the System Defaults view. You must add the custom attribute columns to your default view if you want to see them when you first log into the platform.
You can also make custom attribute columns part of the standard view for new users by configuring the Client Defaults for a page.
List type columns behave like other list columns within the platform such as Tags and Groups. You can click on +More to see additional items.
Viewing Detailed Information about Attributes
You can view custom attributes from the detail pane. The detail pane organizes custom attributes by list view. Custom attributes specific to the current list view come first. After these custom attributes, you will see propagated attributes.
By clicking on the icon highlighted in red, you can jump to the Custom Attributes section in the detail pane.
Filtering with Custom Attributes
You can filter on custom attributes of any data type. Note that if you filter on another data type besides URL, String, List of URL, or List of String, the platform will not provide suggestions after you enter a value into the search box.
Grouping by Custom Attributes
The platform automatically enables Group By for all custom attribute types except Long Text.
Group By on List Types
The platform breaks down elements of lists into individual Group By terms.
Example 1:
On the Applications page, you have a custom attribute of type List of String called “States”. The custom attribute contains a list of every state that has access to the application. Within your dataset, you have two applications, A1 and A2.
Values for A1: “New Mexico,Arizona,California,Colorado,Texas”
Values for A2: “Texas,New Mexico,Colorado,Kansas,Wyoming”
The first two columns of the Group By for States would look like this:
States |
Applications |
---|---|
Arizona |
1 |
California |
1 |
Colorado |
2 |
Kansas |
1 |
New Mexico |
2 |
Texas |
2 |
Wyoming |
1 |
Exports
When you export a custom attribute, the name of the exportable field contains both the user-defined name and the attribute ID.
Example 2:
The group custom attribute “Last Assessment Findings” (attribute ID 632_group_3) is propagated to both Applications and Application Findings. In the Application Findings export, you can add the attribute both to the asset and the findings export templates. The exportable field has the name “Latest Assessment Findings(632_group_3).”
Behavior of Propagated Custom Attributes
If you propagate an asset custom attribute to findings, you can add the custom attribute as a column at the finding level. In addition, you can also filter on that custom attribute, perform a Group By, export it, or view assigned values in the Finding Details.
Some limitations exist on propagated group custom attributes. Within list views other than Groups, you lack the ability to add a group custom attribute as a column. Additionally, you can only view group custom attributes in the Host Details or Application Details. Since assets can have membership in more than one group, the detail pane shows the custom attribute values for each individual group that the asset is a member of.
To make a group custom attribute show up within the Host or Application Details, you must explicitly propagate the group custom attribute to assets.
Merging Assets
When merging assets with custom attributes, the destination asset always takes precedence. The destination asset only inherits values for unset custom attributes from the source asset. If you choose to merge multiple source assets into the destination asset, the system will pick which source asset sets the value for the custom attribute at random.
Additional Considerations
- When you create a custom attribute, you can only change the name. Custom attributes have a fixed data type.
- Currently, you have no way of deleting custom attributes once you create them. This feature will become available in a future release.
- Use unique names for attributes if you plan to propagate them. The platform makes propagated attributes available as columns, exportable fields, filters, and Group By. If you use unique names for similar properties, you will have an easier time distinguishing between custom attributes.
Future Feature Additions:
- You will be able to upload custom attribute values through Generic Upload.
- You will be able to delete a custom attribute after managing potential dependencies (such as playbooks that use custom attribute filters).