Describe the current behavior
search.SearchService does not expose properties.encryptionWithCmk on the spec. The underlying ARM resource Microsoft.Search/searchServices supports a service-level setting encryptionWithCmk.enforcement (values: Enabled / Disabled / Unspecified) that, when Enabled, enforces that every child object (indexes, indexers, data sources, skillsets, synonym maps) carries its own encryptionKey. Without ASO exposing this, operators have no declarative way to require CMK at the service boundary — the only path today is direct ARM PATCH or az search service update, which then drifts every reconcile.
Describe the improvement
Add an optional encryptionWithCmk field to SearchServiceSpec mirroring the ARM shape:
apiVersion: search.azure.com/v1api20231101
kind: SearchService
metadata:
name: my-search
spec:
encryptionWithCmk:
enforcement: Enabled
# ... existing fields ...
Optional and backward compatible — existing manifests without encryptionWithCmk keep behaving as today. The Go SDK (armsearch.Service.Properties.EncryptionWithCmk) already has full coverage, so the generator should pick it up cleanly.
Additional context
Describe the current behavior
search.SearchServicedoes not exposeproperties.encryptionWithCmkon the spec. The underlying ARM resourceMicrosoft.Search/searchServicessupports a service-level settingencryptionWithCmk.enforcement(values:Enabled/Disabled/Unspecified) that, whenEnabled, enforces that every child object (indexes, indexers, data sources, skillsets, synonym maps) carries its ownencryptionKey. Without ASO exposing this, operators have no declarative way to require CMK at the service boundary — the only path today is direct ARM PATCH oraz search service update, which then drifts every reconcile.Describe the improvement
Add an optional
encryptionWithCmkfield toSearchServiceSpecmirroring the ARM shape:Optional and backward compatible — existing manifests without
encryptionWithCmkkeep behaving as today. The Go SDK (armsearch.Service.Properties.EncryptionWithCmk) already has full coverage, so the generator should pick it up cleanly.Additional context