diff --git a/src/EntityFramework.Storage/Stores/ResourceStore.cs b/src/EntityFramework.Storage/Stores/ResourceStore.cs index a8a81ceb0..671b45a8a 100644 --- a/src/EntityFramework.Storage/Stores/ResourceStore.cs +++ b/src/EntityFramework.Storage/Stores/ResourceStore.cs @@ -62,7 +62,7 @@ public virtual async Task> FindApiResourcesByNameAsync( using var activity = Tracing.StoreActivitySource.StartActivity("ResourceStore.FindApiResourcesByName"); activity?.SetTag(Tracing.Properties.ApiResourceNames, apiResourceNames.ToSpaceSeparatedString()); - if (apiResourceNames == null) throw new ArgumentNullException(nameof(apiResourceNames)); + ArgumentNullException.ThrowIfNull(apiResourceNames); var query = from apiResource in Context.ApiResources diff --git a/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Crypto.cs b/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Crypto.cs index 7499d12df..84ffdc799 100644 --- a/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Crypto.cs +++ b/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Crypto.cs @@ -76,7 +76,7 @@ public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBu /// X509 certificate does not have a private key. public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, X509Certificate2 certificate, string signingAlgorithm = SecurityAlgorithms.RsaSha256) { - if (certificate == null) throw new ArgumentNullException(nameof(certificate)); + ArgumentNullException.ThrowIfNull(certificate); if (!certificate.HasPrivateKey) { @@ -261,7 +261,7 @@ public static IIdentityServerBuilder AddValidationKey( X509Certificate2 certificate, string signingAlgorithm = SecurityAlgorithms.RsaSha256) { - if (certificate == null) throw new ArgumentNullException(nameof(certificate)); + ArgumentNullException.ThrowIfNull(certificate); // add signing algorithm name to key ID to allow using the same key for two different algorithms (e.g. RS256 and PS56); var key = new X509SecurityKey(certificate); diff --git a/src/IdentityServer/Configuration/IdentityServerApplicationBuilderExtensions.cs b/src/IdentityServer/Configuration/IdentityServerApplicationBuilderExtensions.cs index 8ada54d8c..7040f8d5d 100644 --- a/src/IdentityServer/Configuration/IdentityServerApplicationBuilderExtensions.cs +++ b/src/IdentityServer/Configuration/IdentityServerApplicationBuilderExtensions.cs @@ -61,8 +61,8 @@ public static IApplicationBuilder UseIdentityServer(this IApplicationBuilder app internal static void Validate(this IApplicationBuilder app) { var loggerFactory = app.ApplicationServices.GetService(); - if (loggerFactory == null) throw new ArgumentNullException(nameof(loggerFactory)); - + ArgumentNullException.ThrowIfNull(loggerFactory); + var logger = loggerFactory.CreateLogger("Duende.IdentityServer.Startup"); logger.LogInformation("Starting Duende IdentityServer version {version} ({netversion})", typeof(IdentityServerMiddleware).Assembly.GetCustomAttribute()!.InformationalVersion, diff --git a/src/IdentityServer/Extensions/AuthenticationPropertiesExtensions.cs b/src/IdentityServer/Extensions/AuthenticationPropertiesExtensions.cs index 510012508..bdf4ca850 100644 --- a/src/IdentityServer/Extensions/AuthenticationPropertiesExtensions.cs +++ b/src/IdentityServer/Extensions/AuthenticationPropertiesExtensions.cs @@ -95,7 +95,7 @@ public static void SetClientList(this AuthenticationProperties properties, IEnum /// public static void AddClientId(this AuthenticationProperties properties, string clientId) { - if (clientId == null) throw new ArgumentNullException(nameof(clientId)); + ArgumentNullException.ThrowIfNull(clientId); var clients = properties.GetClientList(); if (!clients.Contains(clientId)) diff --git a/src/IdentityServer/Extensions/HttpContextExtensions.cs b/src/IdentityServer/Extensions/HttpContextExtensions.cs index e24d85607..ae104bc63 100644 --- a/src/IdentityServer/Extensions/HttpContextExtensions.cs +++ b/src/IdentityServer/Extensions/HttpContextExtensions.cs @@ -20,7 +20,7 @@ public static class HttpContextExtensions { internal static void SetSignOutCalled(this HttpContext context) { - if (context == null) throw new ArgumentNullException(nameof(context)); + ArgumentNullException.ThrowIfNull(context); context.Items[Constants.EnvironmentKeys.SignOutCalled] = "true"; } diff --git a/src/IdentityServer/Extensions/ProfileDataRequestContextExtensions.cs b/src/IdentityServer/Extensions/ProfileDataRequestContextExtensions.cs index 33a817f2a..9ce48c5e1 100644 --- a/src/IdentityServer/Extensions/ProfileDataRequestContextExtensions.cs +++ b/src/IdentityServer/Extensions/ProfileDataRequestContextExtensions.cs @@ -24,8 +24,8 @@ public static class ProfileDataRequestContextExtensions /// public static List FilterClaims(this ProfileDataRequestContext context, IEnumerable claims) { - if (context == null) throw new ArgumentNullException(nameof(context)); - if (claims == null) throw new ArgumentNullException(nameof(claims)); + ArgumentNullException.ThrowIfNull(context); + ArgumentNullException.ThrowIfNull(claims); return claims.Where(x => context.RequestedClaimTypes.Contains(x.Type)).ToList(); } diff --git a/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs b/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs index 5b07d033d..0c3c4f91e 100644 --- a/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs +++ b/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs @@ -126,7 +126,7 @@ public static void RemoveAcrValue(this ValidatedAuthorizeRequest request, string public static void AddAcrValue(this ValidatedAuthorizeRequest request, string value) { - if (String.IsNullOrWhiteSpace(value)) throw new ArgumentNullException(nameof(value)); + ArgumentNullException.ThrowIfNullOrWhiteSpace(value); request.AuthenticationContextReferenceClasses.Add(value); var acr_values = request.AuthenticationContextReferenceClasses.ToSpaceSeparatedString(); diff --git a/src/IdentityServer/Hosting/EndpointRouter.cs b/src/IdentityServer/Hosting/EndpointRouter.cs index 081843086..f2e2a390a 100644 --- a/src/IdentityServer/Hosting/EndpointRouter.cs +++ b/src/IdentityServer/Hosting/EndpointRouter.cs @@ -26,7 +26,7 @@ public EndpointRouter(IEnumerable endpoints, IdentityServerOptions opt public IEndpointHandler Find(HttpContext context) { - if (context == null) throw new ArgumentNullException(nameof(context)); + ArgumentNullException.ThrowIfNull(context); foreach(var endpoint in _endpoints) { diff --git a/src/IdentityServer/IdentityServerTools.cs b/src/IdentityServer/IdentityServerTools.cs index 04dd8a1e1..0be0e6284 100644 --- a/src/IdentityServer/IdentityServerTools.cs +++ b/src/IdentityServer/IdentityServerTools.cs @@ -131,9 +131,9 @@ public virtual Task IssueJwtAsync(int lifetime, string issuer, IEnumerab /// public virtual async Task IssueJwtAsync(int lifetime, string issuer, string tokenType, IEnumerable claims) { - if (String.IsNullOrWhiteSpace(issuer)) throw new ArgumentNullException(nameof(issuer)); - if (String.IsNullOrWhiteSpace(tokenType)) throw new ArgumentNullException(nameof(tokenType)); - if (claims == null) throw new ArgumentNullException(nameof(claims)); + ArgumentNullException.ThrowIfNullOrWhiteSpace(issuer); + ArgumentNullException.ThrowIfNullOrWhiteSpace(tokenType); + ArgumentNullException.ThrowIfNull(claims); var token = new Token(tokenType) { diff --git a/src/IdentityServer/Infrastructure/MessageCookie.cs b/src/IdentityServer/Infrastructure/MessageCookie.cs index b98eac8a5..aa437d73e 100644 --- a/src/IdentityServer/Infrastructure/MessageCookie.cs +++ b/src/IdentityServer/Infrastructure/MessageCookie.cs @@ -81,8 +81,7 @@ private IEnumerable GetCookieNames() public void Write(string id, Message message) { ClearOverflow(); - - if (message == null) throw new ArgumentNullException(nameof(message)); + ArgumentNullException.ThrowIfNull(message); var name = GetCookieFullName(id); var data = Protect(message); diff --git a/src/IdentityServer/Models/Contexts/IsActiveContext.cs b/src/IdentityServer/Models/Contexts/IsActiveContext.cs index f60515b73..087739446 100644 --- a/src/IdentityServer/Models/Contexts/IsActiveContext.cs +++ b/src/IdentityServer/Models/Contexts/IsActiveContext.cs @@ -20,8 +20,8 @@ public class IsActiveContext /// public IsActiveContext(ClaimsPrincipal subject, Client client, string caller) { - if (subject == null) throw new ArgumentNullException(nameof(subject)); - if (client == null) throw new ArgumentNullException(nameof(client)); + ArgumentNullException.ThrowIfNull(subject); + ArgumentNullException.ThrowIfNull(client); if (caller.IsMissing()) throw new ArgumentNullException(nameof(caller)); Subject = subject; diff --git a/src/IdentityServer/Models/Messages/AuthorizationRequest.cs b/src/IdentityServer/Models/Messages/AuthorizationRequest.cs index 5b6a54dc8..e1dd90868 100644 --- a/src/IdentityServer/Models/Messages/AuthorizationRequest.cs +++ b/src/IdentityServer/Models/Messages/AuthorizationRequest.cs @@ -128,10 +128,7 @@ public AuthorizationRequest() /// is null. public AuthorizationRequest(ValidatedAuthorizeRequest request) { - if (request is null) - { - throw new ArgumentNullException(nameof(request)); - } + ArgumentNullException.ThrowIfNull(request); Client = request.Client; RedirectUri = request.RedirectUri; diff --git a/src/IdentityServer/Models/TokenCreationRequest.cs b/src/IdentityServer/Models/TokenCreationRequest.cs index f4fb23604..448120506 100644 --- a/src/IdentityServer/Models/TokenCreationRequest.cs +++ b/src/IdentityServer/Models/TokenCreationRequest.cs @@ -92,7 +92,7 @@ public class TokenCreationRequest /// public void Validate() { - if (ValidatedResources == null) throw new ArgumentNullException(nameof(ValidatedResources)); - if (ValidatedRequest == null) throw new ArgumentNullException(nameof(ValidatedRequest)); + ArgumentNullException.ThrowIfNull(ValidatedResources); + ArgumentNullException.ThrowIfNull(ValidatedRequest); } } diff --git a/src/IdentityServer/ResponseHandling/Default/AuthorizeInteractionResponseGenerator.cs b/src/IdentityServer/ResponseHandling/Default/AuthorizeInteractionResponseGenerator.cs index de5596884..2038bd614 100644 --- a/src/IdentityServer/ResponseHandling/Default/AuthorizeInteractionResponseGenerator.cs +++ b/src/IdentityServer/ResponseHandling/Default/AuthorizeInteractionResponseGenerator.cs @@ -314,8 +314,8 @@ protected internal virtual async Task ProcessLoginAsync(Val protected internal virtual async Task ProcessConsentAsync(ValidatedAuthorizeRequest request, ConsentResponse consent = null) { using var activity = Tracing.BasicActivitySource.StartActivity("AuthorizeInteractionResponseGenerator.ProcessConsent"); - - if (request == null) throw new ArgumentNullException(nameof(request)); + + ArgumentNullException.ThrowIfNull(request); if (request.PromptModes.Any() && !request.PromptModes.Contains(OidcConstants.PromptModes.None) && diff --git a/src/IdentityServer/ResponseHandling/Default/BackchannelAuthenticationResponseGenerator.cs b/src/IdentityServer/ResponseHandling/Default/BackchannelAuthenticationResponseGenerator.cs index 75a2596e5..4068a384d 100644 --- a/src/IdentityServer/ResponseHandling/Default/BackchannelAuthenticationResponseGenerator.cs +++ b/src/IdentityServer/ResponseHandling/Default/BackchannelAuthenticationResponseGenerator.cs @@ -70,7 +70,7 @@ public virtual async Task ProcessAsync(Backch { using var activity = Tracing.BasicActivitySource.StartActivity("BackchannelAuthenticationResponseGenerator.Process"); - if (validationResult == null) throw new ArgumentNullException(nameof(validationResult)); + ArgumentNullException.ThrowIfNull(validationResult); if (validationResult.ValidatedRequest == null) throw new ArgumentNullException(nameof(validationResult.ValidatedRequest)); if (validationResult.ValidatedRequest.Client == null) throw new ArgumentNullException(nameof(validationResult.ValidatedRequest.Client)); diff --git a/src/IdentityServer/ResponseHandling/Default/DeviceAuthorizationResponseGenerator.cs b/src/IdentityServer/ResponseHandling/Default/DeviceAuthorizationResponseGenerator.cs index c8b103773..08742f757 100644 --- a/src/IdentityServer/ResponseHandling/Default/DeviceAuthorizationResponseGenerator.cs +++ b/src/IdentityServer/ResponseHandling/Default/DeviceAuthorizationResponseGenerator.cs @@ -72,8 +72,8 @@ public DeviceAuthorizationResponseGenerator(IdentityServerOptions options, IUser public virtual async Task ProcessAsync(DeviceAuthorizationRequestValidationResult validationResult, string baseUrl) { using var activity = Tracing.BasicActivitySource.StartActivity("DeviceAuthorizationResponseGenerator.Process"); - - if (validationResult == null) throw new ArgumentNullException(nameof(validationResult)); + + ArgumentNullException.ThrowIfNull(validationResult); if (validationResult.ValidatedRequest.Client == null) throw new ArgumentNullException(nameof(validationResult.ValidatedRequest.Client)); if (string.IsNullOrWhiteSpace(baseUrl)) throw new ArgumentException("Value cannot be null or whitespace.", nameof(baseUrl)); diff --git a/src/IdentityServer/Services/Default/DefaultBackchannelAuthenticationInteractionService.cs b/src/IdentityServer/Services/Default/DefaultBackchannelAuthenticationInteractionService.cs index 63aab2fea..2594626a5 100644 --- a/src/IdentityServer/Services/Default/DefaultBackchannelAuthenticationInteractionService.cs +++ b/src/IdentityServer/Services/Default/DefaultBackchannelAuthenticationInteractionService.cs @@ -123,8 +123,8 @@ public async Task> GetPendingLoginReque public async Task CompleteLoginRequestAsync(CompleteBackchannelLoginRequest completionRequest) { using var activity = Tracing.ServiceActivitySource.StartActivity("DefaultBackchannelAuthenticationInteractionService.CompleteLoginRequest"); - - if (completionRequest == null) throw new ArgumentNullException(nameof(completionRequest)); + + ArgumentNullException.ThrowIfNull(completionRequest); var request = await _requestStore.GetByInternalIdAsync(completionRequest.InternalId); if (request == null) diff --git a/src/IdentityServer/Services/Default/DefaultCache.cs b/src/IdentityServer/Services/Default/DefaultCache.cs index 22eb68f54..a092b17a9 100644 --- a/src/IdentityServer/Services/Default/DefaultCache.cs +++ b/src/IdentityServer/Services/Default/DefaultCache.cs @@ -100,8 +100,8 @@ public Task RemoveAsync(string key) public async Task GetOrAddAsync(string key, TimeSpan duration, Func> get) { using var activity = Tracing.CacheActivitySource.StartActivity("DefaultCache.GetOrAdd"); - - if (get == null) throw new ArgumentNullException(nameof(get)); + + ArgumentNullException.ThrowIfNull(get); if (key == null) return null; var item = await GetAsync(key); diff --git a/src/IdentityServer/Services/Default/DefaultConsentService.cs b/src/IdentityServer/Services/Default/DefaultConsentService.cs index 4dced8d14..e23e6f21f 100644 --- a/src/IdentityServer/Services/Default/DefaultConsentService.cs +++ b/src/IdentityServer/Services/Default/DefaultConsentService.cs @@ -66,9 +66,9 @@ public DefaultConsentService(IClock clock, IUserConsentStore userConsentStore, I public virtual async Task RequiresConsentAsync(ClaimsPrincipal subject, Client client, IEnumerable parsedScopes) { using var activity = Tracing.ServiceActivitySource.StartActivity("DefaultConsentService.RequiresConsent"); - - if (client == null) throw new ArgumentNullException(nameof(client)); - if (subject == null) throw new ArgumentNullException(nameof(subject)); + + ArgumentNullException.ThrowIfNull(client); + ArgumentNullException.ThrowIfNull(subject); if (!client.RequireConsent) { @@ -156,9 +156,9 @@ public virtual async Task RequiresConsentAsync(ClaimsPrincipal subject, Cl public virtual async Task UpdateConsentAsync(ClaimsPrincipal subject, Client client, IEnumerable parsedScopes) { using var activity = Tracing.ServiceActivitySource.StartActivity("DefaultConsentService.UpdateConsent"); - - if (client == null) throw new ArgumentNullException(nameof(client)); - if (subject == null) throw new ArgumentNullException(nameof(subject)); + + ArgumentNullException.ThrowIfNull(client); + ArgumentNullException.ThrowIfNull(subject); if (client.AllowRememberConsent) { diff --git a/src/IdentityServer/Services/Default/DefaultDeviceFlowInteractionService.cs b/src/IdentityServer/Services/Default/DefaultDeviceFlowInteractionService.cs index 8c998b769..4a31df596 100644 --- a/src/IdentityServer/Services/Default/DefaultDeviceFlowInteractionService.cs +++ b/src/IdentityServer/Services/Default/DefaultDeviceFlowInteractionService.cs @@ -56,8 +56,8 @@ public async Task GetAuthorizationContextAsync(s public async Task HandleRequestAsync(string userCode, ConsentResponse consent) { - if (userCode == null) throw new ArgumentNullException(nameof(userCode)); - if (consent == null) throw new ArgumentNullException(nameof(consent)); + ArgumentNullException.ThrowIfNull(userCode); + ArgumentNullException.ThrowIfNull(consent); var deviceAuth = await _devices.FindByUserCodeAsync(userCode); if (deviceAuth == null) return LogAndReturnError("Invalid user code", "Device authorization failure - user code is invalid"); diff --git a/src/IdentityServer/Services/Default/DefaultEventService.cs b/src/IdentityServer/Services/Default/DefaultEventService.cs index 691800f52..939240965 100644 --- a/src/IdentityServer/Services/Default/DefaultEventService.cs +++ b/src/IdentityServer/Services/Default/DefaultEventService.cs @@ -60,7 +60,7 @@ public DefaultEventService(IdentityServerOptions options, IHttpContextAccessor c /// evt public async Task RaiseAsync(Event evt) { - if (evt == null) throw new ArgumentNullException(nameof(evt)); + ArgumentNullException.ThrowIfNull(evt); if (CanRaiseEvent(evt)) { diff --git a/src/IdentityServer/Services/Default/DefaultEventSink.cs b/src/IdentityServer/Services/Default/DefaultEventSink.cs index 7e9a4af00..ff42fb68b 100644 --- a/src/IdentityServer/Services/Default/DefaultEventSink.cs +++ b/src/IdentityServer/Services/Default/DefaultEventSink.cs @@ -35,7 +35,7 @@ public DefaultEventSink(ILogger logger) /// evt public virtual Task PersistAsync(Event evt) { - if (evt == null) throw new ArgumentNullException(nameof(evt)); + ArgumentNullException.ThrowIfNull(evt); _logger.LogInformation("{@event}", evt); diff --git a/src/IdentityServer/Services/Default/DefaultPersistedGrantService.cs b/src/IdentityServer/Services/Default/DefaultPersistedGrantService.cs index 362181a06..ea053cd9d 100644 --- a/src/IdentityServer/Services/Default/DefaultPersistedGrantService.cs +++ b/src/IdentityServer/Services/Default/DefaultPersistedGrantService.cs @@ -42,7 +42,7 @@ public async Task> GetAllGrantsAsync(string subjectId) { using var activity = Tracing.ServiceActivitySource.StartActivity("DefaultPersistedGrantService.GetAllGrants"); - if (String.IsNullOrWhiteSpace(subjectId)) throw new ArgumentNullException(nameof(subjectId)); + ArgumentNullException.ThrowIfNullOrWhiteSpace(subjectId); var grants = (await _store.GetAllAsync(new PersistedGrantFilter { SubjectId = subjectId })) .Where(x => x.ConsumedTime == null) // filter consumed grants @@ -179,7 +179,7 @@ public Task RemoveAllGrantsAsync(string subjectId, string clientId = null, strin { using var activity = Tracing.ServiceActivitySource.StartActivity("DefaultPersistedGrantService.RemoveAllGrants"); - if (String.IsNullOrWhiteSpace(subjectId)) throw new ArgumentNullException(nameof(subjectId)); + ArgumentNullException.ThrowIfNullOrWhiteSpace(subjectId); return _store.RemoveAllAsync(new PersistedGrantFilter { diff --git a/src/IdentityServer/Services/Default/DefaultUserSession.cs b/src/IdentityServer/Services/Default/DefaultUserSession.cs index aa4986f30..83231296d 100644 --- a/src/IdentityServer/Services/Default/DefaultUserSession.cs +++ b/src/IdentityServer/Services/Default/DefaultUserSession.cs @@ -166,8 +166,8 @@ protected virtual async Task AuthenticateAsync() /// public virtual async Task CreateSessionIdAsync(ClaimsPrincipal principal, AuthenticationProperties properties) { - if (principal == null) throw new ArgumentNullException(nameof(principal)); - if (properties == null) throw new ArgumentNullException(nameof(properties)); + ArgumentNullException.ThrowIfNull(principal); + ArgumentNullException.ThrowIfNull(properties); var currentSubjectId = (await GetUserAsync())?.GetSubjectId(); var newSubjectId = principal.GetSubjectId(); @@ -305,7 +305,7 @@ public virtual void IssueSessionIdCookie(string sid) /// clientId public virtual async Task AddClientIdAsync(string clientId) { - if (clientId == null) throw new ArgumentNullException(nameof(clientId)); + ArgumentNullException.ThrowIfNull(clientId); await AuthenticateAsync(); if (Properties != null) diff --git a/src/IdentityServer/Services/Default/DistributedBackchannelAuthenticationThrottlingService.cs b/src/IdentityServer/Services/Default/DistributedBackchannelAuthenticationThrottlingService.cs index c2c7620ca..a9533b172 100644 --- a/src/IdentityServer/Services/Default/DistributedBackchannelAuthenticationThrottlingService.cs +++ b/src/IdentityServer/Services/Default/DistributedBackchannelAuthenticationThrottlingService.cs @@ -43,10 +43,7 @@ public async Task ShouldSlowDown(string requestId, BackChannelAuthenticati { using var activity = Tracing.ServiceActivitySource.StartActivity("DistributedBackchannelAuthenticationThrottlingService.ShouldSlowDown"); - if (requestId == null) - { - throw new ArgumentNullException(nameof(requestId)); - } + ArgumentNullException.ThrowIfNull(requestId); var key = KeyPrefix + requestId; var options = new DistributedCacheEntryOptions { AbsoluteExpiration = _clock.UtcNow.AddSeconds(details.Lifetime) }; diff --git a/src/IdentityServer/Services/Default/DistributedDeviceFlowThrottlingService.cs b/src/IdentityServer/Services/Default/DistributedDeviceFlowThrottlingService.cs index 888a022f7..2a4b4407c 100644 --- a/src/IdentityServer/Services/Default/DistributedDeviceFlowThrottlingService.cs +++ b/src/IdentityServer/Services/Default/DistributedDeviceFlowThrottlingService.cs @@ -53,9 +53,9 @@ public DistributedDeviceFlowThrottlingService( public async Task ShouldSlowDown(string deviceCode, DeviceCode details) { using var activity = Tracing.ServiceActivitySource.StartActivity("DistributedDeviceFlowThrottlingService.ShouldSlowDown"); - - if (deviceCode == null) throw new ArgumentNullException(nameof(deviceCode)); - + + ArgumentNullException.ThrowIfNull(deviceCode); + var key = KeyPrefix + deviceCode; var options = new DistributedCacheEntryOptions {AbsoluteExpiration = _clock.UtcNow.AddSeconds(details.Lifetime)}; diff --git a/src/IdentityServer/Stores/InMemory/InMemoryResourcesStore.cs b/src/IdentityServer/Stores/InMemory/InMemoryResourcesStore.cs index 26bea07ae..b699b263d 100644 --- a/src/IdentityServer/Stores/InMemory/InMemoryResourcesStore.cs +++ b/src/IdentityServer/Stores/InMemory/InMemoryResourcesStore.cs @@ -60,10 +60,9 @@ public Task GetAllResourcesAsync() /// public Task> FindApiResourcesByNameAsync(IEnumerable apiResourceNames) { + ArgumentNullException.ThrowIfNull(apiResourceNames); using var activity = Tracing.StoreActivitySource.StartActivity("InMemoryResourceStore.FindApiResourcesByName"); activity?.SetTag(Tracing.Properties.ApiResourceNames, apiResourceNames.ToSpaceSeparatedString()); - - if (apiResourceNames == null) throw new ArgumentNullException(nameof(apiResourceNames)); var query = from a in _apiResources where apiResourceNames.Contains(a.Name) @@ -74,10 +73,9 @@ where apiResourceNames.Contains(a.Name) /// public Task> FindIdentityResourcesByScopeNameAsync(IEnumerable scopeNames) { + ArgumentNullException.ThrowIfNull(scopeNames); using var activity = Tracing.StoreActivitySource.StartActivity("InMemoryResourceStore.FindIdentityResourcesByScopeName"); activity?.SetTag(Tracing.Properties.ScopeNames, scopeNames.ToSpaceSeparatedString()); - - if (scopeNames == null) throw new ArgumentNullException(nameof(scopeNames)); var identity = from i in _identityResources where scopeNames.Contains(i.Name) @@ -89,10 +87,9 @@ where scopeNames.Contains(i.Name) /// public Task> FindApiResourcesByScopeNameAsync(IEnumerable scopeNames) { + ArgumentNullException.ThrowIfNull(scopeNames); using var activity = Tracing.StoreActivitySource.StartActivity("InMemoryResourceStore.FindApiResourcesByScopeName"); activity?.SetTag(Tracing.Properties.ScopeNames, scopeNames.ToSpaceSeparatedString()); - - if (scopeNames == null) throw new ArgumentNullException(nameof(scopeNames)); var query = from a in _apiResources where a.Scopes.Any(x => scopeNames.Contains(x)) @@ -104,10 +101,9 @@ where a.Scopes.Any(x => scopeNames.Contains(x)) /// public Task> FindApiScopesByNameAsync(IEnumerable scopeNames) { + ArgumentNullException.ThrowIfNull(scopeNames); using var activity = Tracing.StoreActivitySource.StartActivity("InMemoryResourceStore.FindApiScopesByName"); activity?.SetTag(Tracing.Properties.ScopeNames, scopeNames.ToSpaceSeparatedString()); - - if (scopeNames == null) throw new ArgumentNullException(nameof(scopeNames)); var query = from x in _apiScopes diff --git a/src/IdentityServer/Validation/Default/DefaultResourceValidator.cs b/src/IdentityServer/Validation/Default/DefaultResourceValidator.cs index 5ce2b605c..ce3ed1571 100644 --- a/src/IdentityServer/Validation/Default/DefaultResourceValidator.cs +++ b/src/IdentityServer/Validation/Default/DefaultResourceValidator.cs @@ -37,11 +37,10 @@ public DefaultResourceValidator(IResourceStore store, IScopeParser scopeParser, /// public virtual async Task ValidateRequestedResourcesAsync(ResourceValidationRequest request) { + ArgumentNullException.ThrowIfNull(request); using var activity = Tracing.ValidationActivitySource.StartActivity("DefaultResourceValidator.ValidateRequestedResources"); activity?.SetTag(Tracing.Properties.Scope, request.Scopes.ToSpaceSeparatedString()); activity?.SetTag(Tracing.Properties.Resource, request.ResourceIndicators.ToSpaceSeparatedString()); - - if (request == null) throw new ArgumentNullException(nameof(request)); var result = new ResourceValidationResult(); diff --git a/src/IdentityServer/Validation/Default/DefaultScopeParser.cs b/src/IdentityServer/Validation/Default/DefaultScopeParser.cs index c761fecb1..697989cdc 100644 --- a/src/IdentityServer/Validation/Default/DefaultScopeParser.cs +++ b/src/IdentityServer/Validation/Default/DefaultScopeParser.cs @@ -122,14 +122,8 @@ internal ParseScopeContext(string rawScopeValue) /// public void SetParsedValues(string parsedName, string parsedParameter) { - if (String.IsNullOrWhiteSpace(parsedName)) - { - throw new ArgumentNullException(nameof(parsedName)); - } - if (String.IsNullOrWhiteSpace(parsedParameter)) - { - throw new ArgumentNullException(nameof(parsedParameter)); - } + ArgumentNullException.ThrowIfNullOrWhiteSpace(parsedName); + ArgumentNullException.ThrowIfNullOrWhiteSpace(parsedParameter); ParsedName = parsedName; ParsedParameter = parsedParameter; diff --git a/src/IdentityServer/Validation/Default/DeviceAuthorizationRequestValidator.cs b/src/IdentityServer/Validation/Default/DeviceAuthorizationRequestValidator.cs index 74f6cb74d..ec36fb4e2 100644 --- a/src/IdentityServer/Validation/Default/DeviceAuthorizationRequestValidator.cs +++ b/src/IdentityServer/Validation/Default/DeviceAuthorizationRequestValidator.cs @@ -87,7 +87,7 @@ private DeviceAuthorizationRequestValidationResult ValidateClient(ValidatedDevic ////////////////////////////////////////////////////////// // set client & secret ////////////////////////////////////////////////////////// - if (clientValidationResult == null) throw new ArgumentNullException(nameof(clientValidationResult)); + ArgumentNullException.ThrowIfNull(clientValidationResult); request.SetClient(clientValidationResult.Client, clientValidationResult.Secret); ////////////////////////////////////////////////////////// diff --git a/src/IdentityServer/Validation/Default/JwtRequestValidator.cs b/src/IdentityServer/Validation/Default/JwtRequestValidator.cs index 5ed7a3f9d..d9c7d9268 100644 --- a/src/IdentityServer/Validation/Default/JwtRequestValidator.cs +++ b/src/IdentityServer/Validation/Default/JwtRequestValidator.cs @@ -90,7 +90,7 @@ public virtual async Task ValidateAsync(JwtRequestVa { using var activity = Tracing.BasicActivitySource.StartActivity("JwtRequestValidator.Validate"); - if (context == null) throw new ArgumentNullException(nameof(context)); + ArgumentNullException.ThrowIfNull(context); if (context.Client == null) throw new ArgumentNullException(nameof(context.Client)); if (String.IsNullOrWhiteSpace(context.JwtTokenString)) throw new ArgumentNullException(nameof(context.JwtTokenString)); diff --git a/src/IdentityServer/Validation/Default/TokenRequestValidator.cs b/src/IdentityServer/Validation/Default/TokenRequestValidator.cs index 428246915..4a8a516e1 100644 --- a/src/IdentityServer/Validation/Default/TokenRequestValidator.cs +++ b/src/IdentityServer/Validation/Default/TokenRequestValidator.cs @@ -99,7 +99,7 @@ public async Task ValidateRequestAsync(TokenReques _logger.LogDebug("Start token request validation"); - if (context == null) throw new ArgumentNullException(nameof(context)); + ArgumentNullException.ThrowIfNull(context); var parameters = context.RequestParameters; var clientValidationResult = context.ClientValidationResult; diff --git a/src/IdentityServer/Validation/Models/ParsedScopeValidationError.cs b/src/IdentityServer/Validation/Models/ParsedScopeValidationError.cs index 533230e59..3dc2b2c5e 100644 --- a/src/IdentityServer/Validation/Models/ParsedScopeValidationError.cs +++ b/src/IdentityServer/Validation/Models/ParsedScopeValidationError.cs @@ -18,15 +18,8 @@ public class ParsedScopeValidationError /// public ParsedScopeValidationError(string rawValue, string error) { - if (String.IsNullOrWhiteSpace(rawValue)) - { - throw new ArgumentNullException(nameof(rawValue)); - } - - if (String.IsNullOrWhiteSpace(error)) - { - throw new ArgumentNullException(nameof(error)); - } + ArgumentNullException.ThrowIfNullOrWhiteSpace(rawValue); + ArgumentNullException.ThrowIfNullOrWhiteSpace(error); RawValue = rawValue; Error = error; diff --git a/src/IdentityServer/Validation/Models/ParsedScopeValue.cs b/src/IdentityServer/Validation/Models/ParsedScopeValue.cs index 53472d6f8..4896f9c13 100644 --- a/src/IdentityServer/Validation/Models/ParsedScopeValue.cs +++ b/src/IdentityServer/Validation/Models/ParsedScopeValue.cs @@ -30,15 +30,8 @@ public ParsedScopeValue(string rawValue) /// public ParsedScopeValue(string rawValue, string parsedName, string? parsedParameter) { - if (String.IsNullOrWhiteSpace(rawValue)) - { - throw new ArgumentNullException(nameof(rawValue)); - } - - if (String.IsNullOrWhiteSpace(parsedName)) - { - throw new ArgumentNullException(nameof(parsedName)); - } + ArgumentNullException.ThrowIfNullOrWhiteSpace(rawValue); + ArgumentNullException.ThrowIfNullOrWhiteSpace(parsedName); RawValue = rawValue; ParsedName = parsedName; diff --git a/src/Storage/Extensions/PersistedGrantFilterExtensions.cs b/src/Storage/Extensions/PersistedGrantFilterExtensions.cs index d4191bf4f..5dd1bf8dc 100644 --- a/src/Storage/Extensions/PersistedGrantFilterExtensions.cs +++ b/src/Storage/Extensions/PersistedGrantFilterExtensions.cs @@ -18,7 +18,7 @@ public static class PersistedGrantFilterExtensions /// public static void Validate(this PersistedGrantFilter filter) { - if (filter == null) throw new ArgumentNullException(nameof(filter)); + ArgumentNullException.ThrowIfNull(filter); if (String.IsNullOrWhiteSpace(filter.ClientId) && filter.ClientIds == null && diff --git a/test/IdentityServer.UnitTests/Extensions/IResourceStoreExtensionsTests.cs b/test/IdentityServer.UnitTests/Extensions/IResourceStoreExtensionsTests.cs index 8d4019c47..f2de56e6e 100644 --- a/test/IdentityServer.UnitTests/Extensions/IResourceStoreExtensionsTests.cs +++ b/test/IdentityServer.UnitTests/Extensions/IResourceStoreExtensionsTests.cs @@ -159,7 +159,7 @@ where names.Contains(a.Name) public Task> FindApiResourcesByScopeNameAsync(IEnumerable names) { - if (names == null) throw new ArgumentNullException(nameof(names)); + ArgumentNullException.ThrowIfNull(names); var api = from a in ApiResources where a.Scopes.Any(x => names.Contains(x)) @@ -170,7 +170,7 @@ where a.Scopes.Any(x => names.Contains(x)) public Task> FindIdentityResourcesByScopeNameAsync(IEnumerable names) { - if (names == null) throw new ArgumentNullException(nameof(names)); + ArgumentNullException.ThrowIfNull(names); var identity = from i in IdentityResources where names.Contains(i.Name)