Skip to main content
Version: Spectra Detect 6.2.0

S3 Connector Secrets and ConfigMap Values

Secrets

Custom NameDefault NameTypeDescription
<input.customSecretName><Release.Name>-connector-s3-secret-<input.identifier>RequiredAuthentication secret used to connect to AWS S3 or any S3-compatible storage system.

Values

Kubernetes Settings

KeyTypeDefaultDescription
affinityobject{}Affinity for pod scheduling. Allows to constrain which nodes your pod can be scheduled on based on node labels or ensure pods are co-located (or isolated) from other pods.
fullNameOverridestring""Overrides connector-s3 chart full name.
imagePullSecretslist["rl-registry-key"]Set of stored credentials (authentication tokens) that allows Kubernetes node to "log in" to a private container registry to pull restricted images.
monitoring.enabledboolfalseEnable/disable monitoring with Prometheus.
monitoring.prometheusReleaseNamestring"kube-prometheus-stack"Prometheus release name.
nameOverridestring""Overrides connector-s3 chart name.
nodeSelectorobject{}Node labels for pod assignment. Pods will only be scheduled to nodes that match all labels defined here.
podAnnotationsobject-Pod annotations. Additional custom annotations for authentication proxy pods. Note: checksum annotation is automatically added in the deployment when Reloader is disabled.
serviceAccountobject-ServiceAccount configuration.
serviceAccount.createbooltrueSpecifies whether a ServiceAccount will be created. If set to false, pre-create ServiceAccount named "name".
serviceAccount.namestring""The name of the ServiceAccount to use. If not set, the name of the ServiceAccount will equal the name of the workload.
tolerationslist[]Tolerations for pod assignment. Allows pods to be scheduled onto "tainted" nodes that would otherwise repel them. Used for dedicated hardware (GPUs) or specialized node pools.
useReloaderstringnilWhether to enable Reloader annotations. When defined, this value takes precedence over global.useReloader.

Application Configuration

KeyTypeDefaultDescription
configurationobject-Connector S3 configuration values.
configuration.dbCleanupPollIntervalint7200Specifies time in seconds, in which the database cleanup will be run.
configuration.dbCleanupSampleThresholdInDaysint21Number of previous days that the data will be preserved.
configuration.diskHighPercentint0Disk High Percent
configuration.inputslist[]Configuration for S3 File Storage Input. S3 input.
configuration.maxFileSizeint0The maximum sample size in bytes that will be transmitted from the connector to the appliance for analysis. Setting it to 0 will disable the option.
configuration.maxUploadDelayTimeint10000Delay in milliseconds. In case the Worker cluster is under high load, this parameter is used to delay any new upload to the Worker cluster. The delay parameter will be multiplied by the internal factor determined by the load on the Worker cluster.
configuration.maxUploadRetriesint100Number of times the connector will attempt to upload the file to the processing appliance. Upon reaching the number of retries it will be discarded.
configuration.systemInfoobject-Configuration for S3 System Info. S3 System Info.
configuration.uploadTimeoutint10000Period (in milliseconds) between upload attempts of the sample being re-uploaded.
configuration.uploadTimeoutAlgorithmstring"exponential"The algorithm used for managing delays between re-uploading the samples into the processing appliance. In exponential, the delay is defined by multiplying the max upload timeout parameter by 2, until max value of 5 minutes. Linear backoff will always use the Max upload timeout value for the timeout period between re-uploads. Allowed values: exponential, linear.

Application Configuration - S3 File Storage Input

KeyTypeDefaultDescription
awsEnableArnboolfalseEnable/disable the usage of AWS IAM roles to access S3 buckets without sharing secret keys.
awsExternalRoleIdstring""The external ID of the role that will be assumed. This can be any string.
awsRoleArnstring""The role ARN created using the external role ID and an Amazon ID. In other words, the ARN which allows a Worker to obtain a temporary token, which then allows it to save to S3 buckets without a secret access key.
awsRoleSessionNamestring"ARNRoleSession"Name of the session visible in AWS logs. This can be any string.
awsS3AccessKeyIdstring""AWS S3 access key ID. Only used if 'createUserSecret' is set to 'true'. WARNING: Use this for convenience/testing only. Do not store sensitive credentials in configuration files that are committed to Git. Consider using a dedicated secret management solution (e.g., Sealed Secrets, External Secrets, or Vault) for production environments.
awsS3SecretAccessKeystring""AWS S3 secret access key. Only used if 'createUserSecret' is set to 'true'. WARNING: Use this for convenience/testing only. Do not store sensitive credentials in configuration files that are committed to Git. Consider using a dedicated secret management solution (e.g., Sealed Secrets, External Secrets, or Vault) for production environments.
bucketstring""Name of an existing S3 bucket which contains the samples to process.
createUserSecretboolfalseIf true, the chart creates a Kubernetes Secret using the awsS3AccessKeyId and awsS3SecretAccessKey parameters. WARNING: Use this for convenience/testing only.
customSecretNamestringnilName of the secret in which the S3 storage credentials can be found. If no value is set, default secret name will be used.
deleteSourceFileboolfalseSelecting the checkbox will allow the connector to delete source files on S3 storage after they have been processed. Required if 'requireAnalyze' or 'postActionsEnabled' is set to true.
endpointstring""Custom S3 endpoint URL. Leave empty if using standard AWS S3.
folderstring""The input folder inside the specified bucket which contains the samples to process. All other samples (except those classified as unknown) will be ignored.
identifierstring""Unique name of S3 connection. Must contain only lowercase alphanumeric characters or hyphen (-). Must start and end with an alphanumeric character. Identifier length must be between 3 and 49 characters.
knownBucketstring""Specify the bucket into which the connector will store files classified as 'Goodware'. If empty, the input bucket will be used.
knownDestinationstring"goodware"The folder into which the connector will store files classified as 'Goodware'. The folder is contained within the specified bucket field.
maliciousBucketstring""Specify the bucket into which the connector will store files classified as 'Malicious'. If empty, the input bucket will be used.
maliciousDestinationstring"malware"The folder into which the connector will store files classified as 'Malicious'. The folder is contained within the specified bucket field.
objectMetadataFilter.classificationlist[]Classification.
objectMetadataFilter.enabledboolfalseEnable/disable selection criteria using metadata.
objectMetadataFilter.threatNamelist[]Threat name.
pausedboolfalseTemporarily pause the continuous scanning of this Storage Input. This setting must be set to true to enable retro hunting.
postActionsEnabledboolfalseDisable/enable post actions for S3 connectors.
priorityint5A higher Priority makes it more likely that files from this bucket will be processed first. The supported range is from 1 (highest) to 5 (lowest). Values outside of those minimum and maximum values will be replaced by the minimum or maximum, respectively. Multiple buckets may share the same priority.
requireAnalyzeboolfalseDisable/enable the requirement for analysis of data processed by connector.
serverSideEncryptionCustomerAlgorithmstring""Customer provided encryption algorithm.
serverSideEncryptionCustomerKeystring""Customer provided encryption key.
suspiciousBucketstring""Specify the bucket into which the connector will store files classified as 'Suspicious'. If empty, the input bucket will be used.
suspiciousDestinationstring"suspicious"The folder into which the connector will store files classified as 'Suspicious'. The folder is contained within the specified bucket field.
unknownBucketstring""Specify the bucket into which the connector will store files classified as 'Unknown'. If empty, the input bucket will be used.
unknownDestinationstring"unknown"The folder into which the connector will store files classified as 'Unknown'. The folder is contained within the specified bucket field.
useAssignedCredentialsbooleanfalseUse AWS provided credentials. When enabled, application uses credentials assigned by AWS rather than authenticating with its own. This is used in combination with AWS Pod Identity and similar to avoid less safe long-term tokens.
verifySslCertificatebooltrueConnect securely to the custom S3 instance. Deselect this to accept untrusted certificates. Applicable only when using a custom S3 endpoint.
zonestring"us-east-1"AWS S3 region.

Application Configuration - System Info

KeyTypeDefaultDescription
configuration.systemInfo.diskHighPercentint0Dish high percent.
configuration.systemInfo.fetchChannelSizeint40Fetch channel size.
configuration.systemInfo.hostUUIDstring""Host UUID.
configuration.systemInfo.maxConnectionsint10Max number of connections.
configuration.systemInfo.maxSlowFetchesint12Max slow fetches.
configuration.systemInfo.numberOfRetriesint300Number of retries.
configuration.systemInfo.queueLoggingEnabledboolfalseEnables central logging to rabbitmq. IMPORTANT: For events to be processed, central logging must also be enabled on the SDM-portal. This requires SDM-portal to be deployed with the umbrella chart or explicitly referenced in the sdmPortal section. If no reference is found, this will be automatically disabled to prevent RabbitMQ overflow.
configuration.systemInfo.requestTimeoutint43200Timeout for requests.
configuration.systemInfo.slowFetchChannelSizeint100Slow fetch channel size.
configuration.systemInfo.slowFetchPauseint5Slow fetch pause.
configuration.systemInfo.typestring"tiscale"Type.
configuration.systemInfo.verifyCertboolfalseVerify SSL certificate.
configuration.systemInfo.waitTimeoutint1000Wait timeout.

Pod Settings

KeyTypeDefaultDescription
boltdb.claimNamestringnilPVC name. If empty, default pvc name will be used.
enabledboolfalseEnable or disable the S3 connector deployment.
imageobject-Configuration values of the connector s3 image.
image.imagePullPolicystring"Always"Image pull policy. Options: Always, IfNotPresent, Never.
image.tagstring"0.40.6-1"Image tag.
persistenceobject-Data storage configuration (BoltDB).
persistence.accessModeslist["ReadWriteOnce"]Specifies the access modes for the volume.
persistence.requestStoragestring"10Gi"The amount of storage to request.
persistence.storageClassNamestringnilName of the StorageClass to use.
resourcesobject-Resource requests and limits for the container.
resources.limitsobject-The maximum amount of resources the container is allowed to consume.
resources.limits.cpustringnilCPU limit. Throttling occurs if the container exceeds this value.
resources.limits.memorystring"6Gi"Memory limit. If exceeded, the container may be terminated with an OOMKilled error.
resources.requestsobject-The minimum amount of resources the container is guaranteed.
resources.requests.cpustring"4000m"CPU request.
resources.requests.memorystring"2Gi"Memory request.
sdmPortalobject-Reference to the SDM portal service for central logging. Required if SDM Portal is deployed.
sdmPortal.namespacestring""The namespace where SDM Portal is deployed. Defaults to the Connector's namespace if left empty.
sdmPortal.portstringnilThe port used to access the SDM Portal. Defaults to 8080 if not specified.
sdmPortal.releaseNamestring""The release name of the SDM Portal. Fill this out if systemInfo.queueLoggingEnabled is true and SDM is deployed without an umbrella chart.
sdmPortal.urlOverridestring""Full URL of the SDM Portal (e.g., http://sdm.example.com). If provided, releaseName and namespace are ignored. Use this if SDM is outside the cluster.
sharedStorageobject{"enabled":true,"mode":"moving"}Configuration for shared storage between connector and receiver/worker.
sharedStorage.enabledbooltrueEnables shared storage between connector and receiver/worker.
sharedStorage.modestring"moving"Defines if files are downloaded directly to the shared storage ('direct') or first to tmp and then moved ('moving'). Only applicable when sharedStorage is enabled.
tmpobject-Configuration values for generic ephemeral volume for the connectors' /data/connectors/connector-s3/tmp directory.
tmp.accessModeslist["ReadWriteOnce"]Specifies the access modes for the volume.
tmp.requestStoragestring"100Gi"Requested storage size for the ephemeral volume.
tmp.storageClassNamestringnilName of the StorageClass to use for the ephemeral volume. If not set, emptyDir is used instead of an ephemeral volume.