Browse Source

Remove AbpRedirectUriValidatorOptions

pull/7783/head
maliming 5 years ago
parent
commit
0c55547591
  1. 7
      modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpIdentityServerServiceCollectionExtensions.cs
  2. 14
      modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpRedirectUriValidatorOptions.cs
  3. 16
      modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpStrictRedirectUriValidator.cs
  4. 2
      modules/identityserver/test/Volo.Abp.IdentityServer.Domain.Tests/Volo/Abp/IdentityServer/AbpStrictRedirectUriValidator_Tests.cs

7
modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpIdentityServerServiceCollectionExtensions.cs

@ -6,13 +6,8 @@ namespace Volo.Abp.IdentityServer
{
public static class AbpIdentityServerServiceCollectionExtensions
{
public static void AddAbpStrictRedirectUriValidator(this IServiceCollection services, params string[] domainFormats)
public static void AddAbpStrictRedirectUriValidator(this IServiceCollection services)
{
services.Configure<AbpRedirectUriValidatorOptions>(options =>
{
options.DomainFormats.AddRange(domainFormats);
});
services.Replace(ServiceDescriptor.Transient<IRedirectUriValidator, AbpStrictRedirectUriValidator>());
}
}

14
modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpRedirectUriValidatorOptions.cs

@ -1,14 +0,0 @@
using System.Collections.Generic;
namespace Volo.Abp.IdentityServer
{
public class AbpRedirectUriValidatorOptions
{
public List<string> DomainFormats { get; }
public AbpRedirectUriValidatorOptions()
{
DomainFormats = new List<string>();
}
}
}

16
modules/identityserver/src/Volo.Abp.IdentityServer.Domain/Volo/Abp/IdentityServer/AbpStrictRedirectUriValidator.cs

@ -10,13 +10,6 @@ namespace Volo.Abp.IdentityServer
{
public class AbpStrictRedirectUriValidator : StrictRedirectUriValidator
{
protected AbpRedirectUriValidatorOptions Options { get; }
public AbpStrictRedirectUriValidator(IOptions<AbpRedirectUriValidatorOptions> options)
{
Options = options.Value;
}
public override async Task<bool> IsRedirectUriValidAsync(string requestedUri, Client client)
{
var isAllowed = await base.IsRedirectUriValidAsync(requestedUri, client);
@ -38,13 +31,10 @@ namespace Volo.Abp.IdentityServer
foreach (var url in uris)
{
if (Options.DomainFormats.Any(x => url.Contains(x)))
var extractResult = FormattedStringValueExtracter.Extract(requestedUri, url, ignoreCase: true);
if (extractResult.IsMatch)
{
var extractResult = FormattedStringValueExtracter.Extract(requestedUri, url, ignoreCase: true);
if (extractResult.IsMatch)
{
return Task.FromResult(true);
}
return Task.FromResult(true);
}
}

2
modules/identityserver/test/Volo.Abp.IdentityServer.Domain.Tests/Volo/Abp/IdentityServer/AbpStrictRedirectUriValidator_Tests.cs

@ -33,7 +33,7 @@ namespace Volo.Abp.IdentityServer
protected override void AfterAddApplication(IServiceCollection services)
{
services.AddAbpStrictRedirectUriValidator("{0}.api.abp.io:8080/signin-oidc", "{0}.ng.abp.io/index.html");
services.AddAbpStrictRedirectUriValidator();
}
[Fact]

Loading…
Cancel
Save