Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions api/datadoghq/v2alpha1/datadogagent_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -885,6 +885,22 @@ type OrchestratorExplorerFeatureConfig struct {
// URL Default: "https://orchestrator.datadoghq.com".
// +optional
DDUrl *string `json:"ddUrl,omitempty"`

// NetworkCRDs enables RBAC for collecting Gateway API, service mesh,
// and ingress controller CRDs in the orchestrator explorer.
// Default: false
// +optional
NetworkCRDs *NetworkCRDsConfig `json:"networkCRDs,omitempty"`
}

// NetworkCRDsConfig contains the configuration for collecting Gateway API, service mesh,
// and ingress controller CRDs in the orchestrator explorer.
// +k8s:openapi-gen=true
type NetworkCRDsConfig struct {
// Enabled enables collection of network topology CRDs.
// Default: false
// +optional
Enabled *bool `json:"enabled,omitempty"`
}

// KubeStateMetricsCoreFeatureConfig contains the Kube State Metrics Core check feature configuration.
Expand Down
25 changes: 25 additions & 0 deletions api/datadoghq/v2alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

29 changes: 28 additions & 1 deletion api/datadoghq/v2alpha1/zz_generated.openapi.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 24 additions & 0 deletions config/crd/bases/v1/datadoghq.com_datadogagentinternals.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2107,6 +2107,18 @@ spec:
type: string
type: array
x-kubernetes-list-type: set
networkCRDs:
description: |-
NetworkCRDs enables RBAC for collecting Gateway API, service mesh,
and ingress controller CRDs in the orchestrator explorer.
Default: false
properties:
enabled:
description: |-
Enabled enables collection of network topology CRDs.
Default: false
type: boolean
type: object
scrubContainers:
description: |-
ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).
Expand Down Expand Up @@ -10539,6 +10551,18 @@ spec:
type: string
type: array
x-kubernetes-list-type: set
networkCRDs:
description: |-
NetworkCRDs enables RBAC for collecting Gateway API, service mesh,
and ingress controller CRDs in the orchestrator explorer.
Default: false
properties:
enabled:
description: |-
Enabled enables collection of network topology CRDs.
Default: false
type: boolean
type: object
scrubContainers:
description: |-
ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2174,6 +2174,17 @@
"type": "array",
"x-kubernetes-list-type": "set"
},
"networkCRDs": {
"additionalProperties": false,
"description": "NetworkCRDs enables RBAC for collecting Gateway API, service mesh,\nand ingress controller CRDs in the orchestrator explorer.\nDefault: false",
"properties": {
"enabled": {
"description": "Enabled enables collection of network topology CRDs.\nDefault: false",
"type": "boolean"
}
},
"type": "object"
},
"scrubContainers": {
"description": "ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).\nDefault: true",
"type": "boolean"
Expand Down Expand Up @@ -10343,6 +10354,17 @@
"type": "array",
"x-kubernetes-list-type": "set"
},
"networkCRDs": {
"additionalProperties": false,
"description": "NetworkCRDs enables RBAC for collecting Gateway API, service mesh,\nand ingress controller CRDs in the orchestrator explorer.\nDefault: false",
"properties": {
"enabled": {
"description": "Enabled enables collection of network topology CRDs.\nDefault: false",
"type": "boolean"
}
},
"type": "object"
},
"scrubContainers": {
"description": "ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).\nDefault: true",
"type": "boolean"
Expand Down
12 changes: 12 additions & 0 deletions config/crd/bases/v1/datadoghq.com_datadogagentprofiles.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2107,6 +2107,18 @@ spec:
type: string
type: array
x-kubernetes-list-type: set
networkCRDs:
description: |-
NetworkCRDs enables RBAC for collecting Gateway API, service mesh,
and ingress controller CRDs in the orchestrator explorer.
Default: false
properties:
enabled:
description: |-
Enabled enables collection of network topology CRDs.
Default: false
type: boolean
type: object
scrubContainers:
description: |-
ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2178,6 +2178,17 @@
"type": "array",
"x-kubernetes-list-type": "set"
},
"networkCRDs": {
"additionalProperties": false,
"description": "NetworkCRDs enables RBAC for collecting Gateway API, service mesh,\nand ingress controller CRDs in the orchestrator explorer.\nDefault: false",
"properties": {
"enabled": {
"description": "Enabled enables collection of network topology CRDs.\nDefault: false",
"type": "boolean"
}
},
"type": "object"
},
"scrubContainers": {
"description": "ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).\nDefault: true",
"type": "boolean"
Expand Down
24 changes: 24 additions & 0 deletions config/crd/bases/v1/datadoghq.com_datadogagents.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2111,6 +2111,18 @@ spec:
type: string
type: array
x-kubernetes-list-type: set
networkCRDs:
description: |-
NetworkCRDs enables RBAC for collecting Gateway API, service mesh,
and ingress controller CRDs in the orchestrator explorer.
Default: false
properties:
enabled:
description: |-
Enabled enables collection of network topology CRDs.
Default: false
type: boolean
type: object
scrubContainers:
description: |-
ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).
Expand Down Expand Up @@ -10619,6 +10631,18 @@ spec:
type: string
type: array
x-kubernetes-list-type: set
networkCRDs:
description: |-
NetworkCRDs enables RBAC for collecting Gateway API, service mesh,
and ingress controller CRDs in the orchestrator explorer.
Default: false
properties:
enabled:
description: |-
Enabled enables collection of network topology CRDs.
Default: false
type: boolean
type: object
scrubContainers:
description: |-
ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).
Expand Down
22 changes: 22 additions & 0 deletions config/crd/bases/v1/datadoghq.com_datadogagents_v2alpha1.json
Original file line number Diff line number Diff line change
Expand Up @@ -2174,6 +2174,17 @@
"type": "array",
"x-kubernetes-list-type": "set"
},
"networkCRDs": {
"additionalProperties": false,
"description": "NetworkCRDs enables RBAC for collecting Gateway API, service mesh,\nand ingress controller CRDs in the orchestrator explorer.\nDefault: false",
"properties": {
"enabled": {
"description": "Enabled enables collection of network topology CRDs.\nDefault: false",
"type": "boolean"
}
},
"type": "object"
},
"scrubContainers": {
"description": "ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).\nDefault: true",
"type": "boolean"
Expand Down Expand Up @@ -10436,6 +10447,17 @@
"type": "array",
"x-kubernetes-list-type": "set"
},
"networkCRDs": {
"additionalProperties": false,
"description": "NetworkCRDs enables RBAC for collecting Gateway API, service mesh,\nand ingress controller CRDs in the orchestrator explorer.\nDefault: false",
"properties": {
"enabled": {
"description": "Enabled enables collection of network topology CRDs.\nDefault: false",
"type": "boolean"
}
},
"type": "object"
},
"scrubContainers": {
"description": "ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ).\nDefault: true",
"type": "boolean"
Expand Down
1 change: 1 addition & 0 deletions docs/configuration.v2alpha1.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,7 @@ spec:
| features.orchestratorExplorer.ddUrl | Override the API endpoint for the Orchestrator Explorer. URL Default: "https://orchestrator.datadoghq.com". |
| features.orchestratorExplorer.enabled | Enables the Orchestrator Explorer. Default: true |
| features.orchestratorExplorer.extraTags | Additional tags to associate with the collected data in the form of `a b c`. This is a Cluster Agent option distinct from DD_TAGS that is used in the Orchestrator Explorer. |
| features.orchestratorExplorer.networkCRDs.enabled | Enables collection of network topology CRDs. Default: false |
| features.orchestratorExplorer.scrubContainers | ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ). Default: true |
| features.otelAgentGateway.conf.configData | ConfigData corresponds to the configuration file content. |
| features.otelAgentGateway.conf.configMap.items | Maps a ConfigMap data `key` to a file `path` mount. |
Expand Down
3 changes: 3 additions & 0 deletions docs/configuration_public.md
Original file line number Diff line number Diff line change
Expand Up @@ -321,6 +321,9 @@ spec:
`features.orchestratorExplorer.extraTags`
: Additional tags to associate with the collected data in the form of `a b c`. This is a Cluster Agent option distinct from DD_TAGS that is used in the Orchestrator Explorer.

`features.orchestratorExplorer.networkCRDs.enabled`
: Enables collection of network topology CRDs. Default: false

`features.orchestratorExplorer.scrubContainers`
: ScrubContainers enables scrubbing of sensitive container data (passwords, tokens, etc. ). Default: true

Expand Down
12 changes: 6 additions & 6 deletions internal/controller/datadogagent/feature/appsec/rbac.go
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@ func getRBACPolicyRules() []rbacv1.PolicyRule {
{
APIGroups: []string{rbac.GatewayAPIGroup},
Resources: []string{
"gateways",
rbac.GatewaysResource,
"gatewayclasses",
"httproutes",
rbac.HTTPRoutesResource,
},
Verbs: []string{
rbac.GetVerb,
Expand All @@ -77,7 +77,7 @@ func getRBACPolicyRules() []rbacv1.PolicyRule {
},
},
{
APIGroups: []string{"gateway.envoyproxy.io"},
APIGroups: []string{rbac.EnvoyGatewayAPIGroup},
Resources: []string{"envoyextensionpolicies", "envoypatchpolicies", "backend"},
Verbs: []string{
rbac.GetVerb,
Expand All @@ -87,7 +87,7 @@ func getRBACPolicyRules() []rbacv1.PolicyRule {
},
// Istio resources
{
APIGroups: []string{"networking.istio.io"},
APIGroups: []string{rbac.IstioNetworkingAPIGroup},
Resources: []string{"envoyfilters"},
Verbs: []string{
rbac.GetVerb,
Expand All @@ -96,8 +96,8 @@ func getRBACPolicyRules() []rbacv1.PolicyRule {
},
},
{
APIGroups: []string{"networking.istio.io"},
Resources: []string{"gateways"},
APIGroups: []string{rbac.IstioNetworkingAPIGroup},
Resources: []string{rbac.GatewaysResource},
Verbs: []string{
rbac.GetVerb,
rbac.ListVerb,
Expand Down
Loading
Loading