diff --git a/src/Microsoft.FeatureManagement/ConfigurationFeatureDefinitionProvider.cs b/src/Microsoft.FeatureManagement/ConfigurationFeatureDefinitionProvider.cs index 276f4822..5b30f56e 100644 --- a/src/Microsoft.FeatureManagement/ConfigurationFeatureDefinitionProvider.cs +++ b/src/Microsoft.FeatureManagement/ConfigurationFeatureDefinitionProvider.cs @@ -56,6 +56,11 @@ public Task GetFeatureDefinitionAsync(string featureName) throw new ArgumentNullException(nameof(featureName)); } + if (featureName.Contains(ConfigurationPath.KeyDelimiter)) + { + throw new ArgumentException($"The value '{ConfigurationPath.KeyDelimiter}' is not allowed in the feature name.", nameof(featureName)); + } + if (Interlocked.Exchange(ref _stale, 0) != 0) { _definitions.Clear();