diff --git a/DigitalData.Core.Abstractions/Security/SecurityExtensions.cs b/DigitalData.Core.Abstractions/Security/SecurityExtensions.cs index f62f3fd..497a421 100644 --- a/DigitalData.Core.Abstractions/Security/SecurityExtensions.cs +++ b/DigitalData.Core.Abstractions/Security/SecurityExtensions.cs @@ -19,5 +19,11 @@ #pragma warning restore CS8601 // Possible null reference assignment. return context is not null; } + + public static TUniqueSecurityContext Match(this IEnumerable contextes, IUniqueSecurityContext lookupContext) where TUniqueSecurityContext : IUniqueSecurityContext + => contextes.Get(lookupContext.Issuer, lookupContext.Audience); + + public static bool TryMatch(this IEnumerable contextes, IUniqueSecurityContext lookupContext, out TUniqueSecurityContext context) where TUniqueSecurityContext : IUniqueSecurityContext + => contextes.TryGet(lookupContext.Issuer, lookupContext.Audience, out context); } } \ No newline at end of file