Forum / Devolutions Password Server - Bug Report

error in web access login with 2FA

  • Create an Issue
  • Cancel

I have a user that has 2FA configured. If that user logs in and enters his Google Authenticator (GA) code on the login screen (below the password) everything works fine. If the user doesn't enter a GA code he gets prompted to do so in a next screen (which is good). As soon as a valid code is entered the user doesn't get redirected to the home screen but instead to a page showing (Edge and Firefox):

{"Success":"1","RedirectUrl":"/DVLS/Home"}

For internet explorer I get a prompt asking my if I want to save 'LoginWithTwoFactorRequired59f71423.json' and if I do it downloads a file with the same content.

Apparently there is a bug here where instead of redirecting the user a json file is returned.

If I then manually change the URL to /DVLS/Home I'm properly logged in.

Clock4 yrs

Hi,

Open your web.config file in a text editor and found the section « <appSettings> ».

Add this 2 lines in this section and save your file :
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />

Reopen your site and let me know if all is ok after that.

Best regards,

Sébastien Crête

signaturesignature

Clock4 yrs

This works.

I small gotcha (nice to know for other users who might implement this workaround) is that if I edit the web.config the app pool recycles correctly but then gives the exception below. After an iisreset everything works fine.

Server Error in '/DVLS' Application.

Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[NullReferenceException: Object reference not set to an instance of an object.]
Devolutions.Server.Controllers.HomeController.Index() in c:\Dev\devolutions\Websites\Server\Website\Controllers\HomeController.cs:64
lambda_method(Closure , ControllerBase , Object[] ) +78
System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) +216
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) +38
System.Web.Mvc.Async.AsyncControllerActionInvoker.BeginInvokeSynchronousActionMethodb__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) +11
System.Web.Mvc.Async.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) +138
System.Web.Mvc.Async.AsyncInvocationWithFilters.InvokeActionMethodFilterAsynchronouslyRecursiveb__3d() +111
System.Web.Mvc.Async.c__DisplayClass46.InvokeActionMethodFilterAsynchronouslyRecursiveb__3f() +452
System.Web.Mvc.Async.c__DisplayClass33.BeginInvokeActionMethodWithFiltersb__32(IAsyncResult asyncResult) +15
System.Web.Mvc.Async.c__DisplayClass2b.BeginInvokeActionb__1c() +32
System.Web.Mvc.Async.c__DisplayClass21.BeginInvokeActionb__1e(IAsyncResult asyncResult) +231
System.Web.Mvc.Controller.BeginExecuteCoreb__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) +29
System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +111
System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) +53
System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +19
System.Web.Mvc.MvcHandler.BeginProcessRequestb__5(IAsyncResult asyncResult, ProcessRequestState innerState) +51
System.Web.Mvc.Async.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) +111
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +606
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +288

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34274

Clock4 yrs