diff --git a/Lombiq.HelpfulLibraries.AspNetCore/Security/IContentSecurityPolicyProvider.cs b/Lombiq.HelpfulLibraries.AspNetCore/Security/IContentSecurityPolicyProvider.cs index 503eba69..5832c2da 100644 --- a/Lombiq.HelpfulLibraries.AspNetCore/Security/IContentSecurityPolicyProvider.cs +++ b/Lombiq.HelpfulLibraries.AspNetCore/Security/IContentSecurityPolicyProvider.cs @@ -20,6 +20,13 @@ public interface IContentSecurityPolicyProvider /// public ValueTask UpdateAsync(IDictionary securityPolicies, HttpContext context); + [Obsolete($"Use the method in the {nameof(ContentSecurityPolicyProvider)} static class instead.")] + public static string GetDirective(IDictionary securityPolicies, params string[] names) => + ContentSecurityPolicyProvider.GetDirective(securityPolicies, names.AsEnumerable()); +} + +public static class ContentSecurityPolicyProvider +{ /// /// Returns the first non-empty directive from the or or an empty /// string. diff --git a/Lombiq.HelpfulLibraries.OrchardCore/Security/ContentSecurityPolicyAttributeContentSecurityPolicyProvider.cs b/Lombiq.HelpfulLibraries.OrchardCore/Security/ContentSecurityPolicyAttributeContentSecurityPolicyProvider.cs index ef6aa8b1..2239147d 100644 --- a/Lombiq.HelpfulLibraries.OrchardCore/Security/ContentSecurityPolicyAttributeContentSecurityPolicyProvider.cs +++ b/Lombiq.HelpfulLibraries.OrchardCore/Security/ContentSecurityPolicyAttributeContentSecurityPolicyProvider.cs @@ -65,7 +65,7 @@ public ValueTask UpdateAsync(IDictionary securityPolicies, HttpC { foreach (var attribute in actionDescriptor.MethodInfo.GetCustomAttributes()) { - IContentSecurityPolicyProvider.MergeDirectiveValues( + ContentSecurityPolicyProvider.MergeDirectiveValues( securityPolicies, attribute.DirectiveNames, attribute.DirectiveValue); diff --git a/Lombiq.HelpfulLibraries.OrchardCore/Security/ResourceManagerContentSecurityPolicyProvider.cs b/Lombiq.HelpfulLibraries.OrchardCore/Security/ResourceManagerContentSecurityPolicyProvider.cs index 698ddc39..3735b730 100644 --- a/Lombiq.HelpfulLibraries.OrchardCore/Security/ResourceManagerContentSecurityPolicyProvider.cs +++ b/Lombiq.HelpfulLibraries.OrchardCore/Security/ResourceManagerContentSecurityPolicyProvider.cs @@ -31,7 +31,7 @@ public ValueTask UpdateAsync(IDictionary securityPolicies, HttpC if (resourceExists) { - IContentSecurityPolicyProvider.MergeDirectiveValues(securityPolicies, DirectiveNameChain, DirectiveValue); + ContentSecurityPolicyProvider.MergeDirectiveValues(securityPolicies, DirectiveNameChain, DirectiveValue); } return ThenUpdateAsync(securityPolicies, context, resourceExists);