Activities of "smansuri"

Sorry,

options.TokenValidationParameters.ValidIssuers = new[]  
{  
   configuration["AuthServer:Authority"] + "/",  
   configuration["AuthServer:ValidIssuers"] //the port may different  
};  

still getting the same error

you can try

options.TokenValidationParameters.ValidIssuers = new[] 
{ 
   configuration["AuthServer:Authority"], 
   configuration["AuthServer:ValidIssuers"] //the port may different 
}; 

Still getting the same error even after adding the above fix.

  • ABP Framework version: v8.0.X
  • UI Type: Angular / MVC
  • Database System: EF Core (MySQL)
  • Tiered (for MVC) or Auth Server Separated (for Angular): Auth Server Separated
  • Exception message and full stack trace: Issuer validation failed. Issuer: 'https://localhost:44322/'. Did not match: validationParameters.ValidIssuer: 'null' or validationParameters.ValidIssuers: 'https://{0}.localhost:44322/'.
  • Steps to reproduce the issue: migrate from abp version 7.3.2 to 8.0 and add multi tenancy changes as per url : https://abp.io/docs/latest/framework/architecture/multi-tenancy and try to login

after navigating from angular app to login page getting below error in logs :Issuer validation failed. Issuer: 'https://localhost:44322/'. Did not match: validationParameters.ValidIssuer: 'null' or validationParameters.ValidIssuers: 'https://{0}.localhost:44322/'.

after directly opening auth server url and try to log in getting error : The event OpenIddict.Validation.OpenIddictValidationEvents+ProcessAuthenticationContext was marked as rejected by OpenIddict.Validation.OpenIddictValidationHandlers+ValidateRequiredTokens.

please find the logs, module and appsettings files in below shared folder. https://drive.google.com/drive/folders/148gFlQJA1JnkC3k4Dd0aHV5WQLTIsF-o?usp=sharing

I think the way abp famework handles the connection open and close without using pooling is the problem. as we just implemented simple transaction and if 50 users try to register it is throwing the above error which not right.

so how does abp handles large number of connections in this case. it will crash the aplications

No this can happen due to not closing connection at abp.io framework side. Why abp is not using connection pool and why its creating so many connections.

while doin performace testing on register page if another user in the application ties to login getting below error.

[07:05:10 ERR] ---------- RemoteServiceErrorInfo ----------
{
  "code": null,
  "message": "An internal error occurred during your request!",
  "details": null,
  "data": {
    "ActivatorChain": "λ:Volo.Saas.EntityFrameworkCore.ISaasDbContext -> G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext -> λ:Microsoft.EntityFrameworkCore.DbContextOptions`1[[G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext, G1.health.SaasService.EntityFrameworkCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
  },
  "validationErrors": null
}

[07:05:10 ERR] An exception was thrown while activating λ:Volo.Saas.EntityFrameworkCore.ISaasDbContext -> G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext -> λ:Microsoft.EntityFrameworkCore.DbContextOptions`1[[G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext, G1.health.SaasService.EntityFrameworkCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].
Autofac.Core.DependencyResolutionException: An exception was thrown while activating λ:Volo.Saas.EntityFrameworkCore.ISaasDbContext -> G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext -> λ:Microsoft.EntityFrameworkCore.DbContextOptions`1[[G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext, G1.health.SaasService.EntityFrameworkCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].
 ---> MySqlConnector.MySqlException (0x80004005): Too many connections
   at MySqlConnector.Core.ServerSession.ConnectAsync(ConnectionSettings cs, MySqlConnection connection, Int32 startTickCount, ILoadBalancer loadBalancer, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ServerSession.cs:line 604
   at MySqlConnector.Core.ConnectionPool.ConnectSessionAsync(MySqlConnection connection, String logMessage, Int32 startTickCount, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 468
   at MySqlConnector.Core.ConnectionPool.ConnectSessionAsync(MySqlConnection connection, String logMessage, Int32 startTickCount, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 468
   at MySqlConnector.Core.ConnectionPool.GetSessionAsync(MySqlConnection connection, Int32 startTickCount, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 130
   at MySqlConnector.Core.ConnectionPool.GetSessionAsync(MySqlConnection connection, Int32 startTickCount, Activity activity, IOBehavior ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/Core/ConnectionPool.cs:line 130
   at MySqlConnector.MySqlConnection.CreateSessionAsync(ConnectionPool pool, Int32 startTickCount, Activity activity, Nullable`1 ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/MySqlConnection.cs:line 966
   at MySqlConnector.MySqlConnection.OpenAsync(Nullable`1 ioBehavior, CancellationToken cancellationToken) in /_/src/MySqlConnector/MySqlConnection.cs:line 457
   at MySqlConnector.MySqlConnection.Open() in /_/src/MySqlConnector/MySqlConnection.cs:line 382
   at Microsoft.EntityFrameworkCore.ServerVersion.AutoDetect(String connectionString)
   at Volo.Abp.EntityFrameworkCore.AbpDbContextConfigurationContextMySQLExtensions.UseMySQL(AbpDbContextConfigurationContext context, Action`1 mySQLOptionsAction)
   at G1.health.SaasService.EntityFrameworkCore.SaasServiceEntityFrameworkCoreModule.<>c.<ConfigureServices>b__1_2(AbpDbContextConfigurationContext`1 c) in /src/services/saas/src/G1.health.SaasService.EntityFrameworkCore/EntityFrameworkCore/SaasServiceEntityFrameworkCoreModule.cs:line 42
   at Volo.Abp.EntityFrameworkCore.DependencyInjection.DbContextOptionsFactory.Configure[TDbContext](AbpDbContextOptions options, AbpDbContextConfigurationContext`1 context)
   at Volo.Abp.EntityFrameworkCore.DependencyInjection.DbContextOptionsFactory.Create[TDbContext](IServiceProvider serviceProvider)
   at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable`1 parameters)
   at Autofac.Core.Activators.Delegate.DelegateActivator.&lt;ConfigurePipeline&gt;b__2_0(ResolveRequestContext ctxt, Action`1 next)
   at Autofac.Core.Resolving.Middleware.DisposalTrackingMiddleware.Execute(ResolveRequestContext context, Action`1 next)
   at Autofac.Core.Resolving.Middleware.ActivatorErrorHandlingMiddleware.Execute(ResolveRequestContext context, Action`1 next)
   --- End of inner exception stack trace ---
   at Autofac.Core.Resolving.Middleware.ActivatorErrorHandlingMiddleware.Execute(ResolveRequestContext context, Action`1 next)
   at Autofac.Core.Resolving.Middleware.SharingMiddleware.Execute(ResolveRequestContext context, Action`1 next)
   at Autofac.Core.Resolving.Middleware.CircularDependencyDetectorMiddleware.Execute(ResolveRequestContext context, Action`1 next)
   at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, ResolveRequest request)
   at Autofac.Core.Resolving.ResolveOperation.ExecuteOperation(ResolveRequest request)
   at Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable`1 parameters, Object& instance)
   at Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable`1 parameters)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)
   at Volo.Abp.Uow.EntityFrameworkCore.UnitOfWorkDbContextProvider`1.CreateDbContextAsync(IUnitOfWork unitOfWork)
   at Volo.Abp.Uow.EntityFrameworkCore.UnitOfWorkDbContextProvider`1.CreateDbContextAsync(IUnitOfWork unitOfWork, String connectionStringName, String connectionString)
   at Volo.Abp.Uow.EntityFrameworkCore.UnitOfWorkDbContextProvider`1.GetDbContextAsync()
   at Volo.Abp.Domain.Repositories.EntityFrameworkCore.EfCoreRepository`2.GetDbSetAsync()
   at Volo.Saas.EntityFrameworkCore.EfCoreTenantRepository.FindByNameAsync(String name, Boolean includeDetails, CancellationToken cancellationToken)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Volo.Saas.Tenants.TenantStore.GetCacheItemAsync(Nullable`1 id, String name)
   at Volo.Saas.Tenants.TenantStore.FindAsync(String name)
   at Pages.Abp.MultiTenancy.AbpTenantAppService.FindTenantByNameAsync(String name)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.GlobalFeatures.GlobalFeatureInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Auditing.AuditingInterceptor.ProceedByLoggingAsync(IAbpMethodInvocation invocation, AbpAuditingOptions options, IAuditingHelper auditingHelper, IAuditLogScope auditLogScope)
   at Volo.Abp.Auditing.AuditingInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Validation.ValidationInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
   at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Pages.Abp.MultiTenancy.AbpTenantController.FindTenantByNameAsync(String name)
   at lambda_method2221(Closure, Object)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.&lt;InvokeActionMethodAsync&gt;g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
[07:05:10 ERR] ---------- Exception Data ----------
ActivatorChain = λ:Volo.Saas.EntityFrameworkCore.ISaasDbContext -> G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext -> λ:Microsoft.EntityFrameworkCore.DbContextOptions`1[[G1.health.SaasService.EntityFrameworkCore.SaasServiceDbContext, G1.health.SaasService.EntityFrameworkCore, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]

we are looking to test angular app perfromane testing with micro service template. we are using jmeter for that. but we are facing few issues related to refresh token url connect/token and getting errors invalid token. if you have any blog or documentation for that or any other tool abp might have already used for your own product testing please suggest.

  • ABP Framework version: v7.3.2
  • UI Type: Angular / MVC
  • Database System: EF Core (]MySQL)
  • Tiered (for MVC) or Auth Server Separated (for Angular): Auth Server Separated
  • Exception message and full stack trace:
  • Steps to reproduce the issue:

it did not help. but now getting little different error : { "error": "invalid_grant", "error_description": "The specified authorization code is no longer valid.", "error_uri": "https://documentation.openiddict.com/errors/ID2016" } I have noticed on URL highlighted below. THe url is captured in dev tools upon clicking of login button. but the authserver is hosted on 44322 port where as the url is originating with default port thats without port where the angular app is hosted. Can you explain how and why? :

Showing 31 to 40 of 116 entries
Made with ❤️ on ABP v9.0.0-preview Updated on September 19, 2024, 10:13