public sealed class CustomConfig : IMessage<CustomConfig>, IEquatable<CustomConfig>, IDeepCloneable<CustomConfig>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud Security Command Center v1 API class CustomConfig.
Defines the properties in a custom module configuration for Security
Health Analytics. Use the custom module configuration to create custom
detectors that generate custom findings for resources that you specify.
Text that describes the vulnerability or misconfiguration that the custom
module detects. This explanation is returned with each finding instance to
help investigators understand the detected issue. The text must be enclosed
in quotation marks.
An explanation of the recommended steps that security teams can take to
resolve the detected issue. This explanation is returned with each finding
generated by this module in the nextSteps property of the finding JSON.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThe latest version of the \u003ccode\u003eCustomConfig\u003c/code\u003e class in the Google Cloud SecurityCenter V1 API is 3.24.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCustomConfig\u003c/code\u003e class defines properties for custom module configurations within Security Health Analytics, which allows the creation of custom detectors and findings for specified resources.\u003c/p\u003e\n"],["\u003cp\u003eThe class allows you to define a custom output, description, a Common Expression Language(CEL) predicate, recommendation, resource selector and the severity to be applied.\u003c/p\u003e\n"],["\u003cp\u003eThis page provides a comprehensive list of all available versions of \u003ccode\u003eCustomConfig\u003c/code\u003e, spanning from version 3.24.0 down to 2.2.0.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCustomConfig\u003c/code\u003e class implements several interfaces including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Google Cloud Security Command Center v1 API - Class CustomConfig (3.24.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.24.0 (latest)](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/latest/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.23.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.23.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.22.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.22.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.21.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.21.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.20.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.20.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.19.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.19.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.18.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.18.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.17.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.17.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.16.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.16.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.15.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.15.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.14.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.14.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.13.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.13.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.12.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.12.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.11.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.11.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.10.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.10.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.9.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.8.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.7.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.6.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.5.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.4.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.3.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.2.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.1.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/3.0.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.13.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.13.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.12.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.12.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.11.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.11.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.10.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.10.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.9.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.9.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.8.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.8.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.7.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.7.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.6.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.5.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.4.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.3.0/Google.Cloud.SecurityCenter.V1.CustomConfig)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/2.2.0/Google.Cloud.SecurityCenter.V1.CustomConfig) \n\n public sealed class CustomConfig : IMessage\u003cCustomConfig\u003e, IEquatable\u003cCustomConfig\u003e, IDeepCloneable\u003cCustomConfig\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Cloud Security Command Center v1 API class CustomConfig.\n\nDefines the properties in a custom module configuration for Security\nHealth Analytics. Use the custom module configuration to create custom\ndetectors that generate custom findings for resources that you specify. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e CustomConfig \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[CustomConfig](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/latest/Google.Cloud.SecurityCenter.V1.CustomConfig), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[CustomConfig](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/latest/Google.Cloud.SecurityCenter.V1.CustomConfig), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[CustomConfig](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/latest/Google.Cloud.SecurityCenter.V1.CustomConfig), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.SecurityCenter.V1](/dotnet/docs/reference/Google.Cloud.SecurityCenter.V1/latest/Google.Cloud.SecurityCenter.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.SecurityCenter.V1.dll\n\nConstructors\n------------\n\n### CustomConfig()\n\n public CustomConfig()\n\n### CustomConfig(CustomConfig)\n\n public CustomConfig(CustomConfig other)\n\nProperties\n----------\n\n### CustomOutput\n\n public CustomConfig.Types.CustomOutputSpec CustomOutput { get; set; }\n\nCustom output properties.\n\n### Description\n\n public string Description { get; set; }\n\nText that describes the vulnerability or misconfiguration that the custom\nmodule detects. This explanation is returned with each finding instance to\nhelp investigators understand the detected issue. The text must be enclosed\nin quotation marks.\n\n### Predicate\n\n public Expr Predicate { get; set; }\n\nThe CEL expression to evaluate to produce findings. When the expression\nevaluates to true against a resource, a finding is generated.\n\n### Recommendation\n\n public string Recommendation { get; set; }\n\nAn explanation of the recommended steps that security teams can take to\nresolve the detected issue. This explanation is returned with each finding\ngenerated by this module in the `nextSteps` property of the finding JSON.\n\n### ResourceSelector\n\n public CustomConfig.Types.ResourceSelector ResourceSelector { get; set; }\n\nThe resource types that the custom module operates on. Each custom module\ncan specify up to 5 resource types.\n\n### Severity\n\n public CustomConfig.Types.Severity Severity { get; set; }\n\nThe severity to assign to findings generated by the module."]]