0

Please or Register to create posts and topics.

Can not get data from the server

Page 1 of 2Next

Hi,

I started my application on the IIS.

In the appsettings.json :

"ApplicationUrl": "https://test1.talk-ip.de",

When I open the page I can log in without any problems.

When I go to the User Management page I get the error message.

Failed to load resource: the server responded with a status of 500 ()

Can someone help me here?

 

 

There is a "Logs" folder in the startup project that'll contain specifics about the error.

Copy the relevant details that match the date and time of the error here (or send to support@ebenmonney.com).

Regards,
Eben Monney

Ingo has reacted to this post.
Ingo

Hi,

here are the logs:

2019-01-16T12:37:46.5014395+01:00 0HLJRKQIIHQUD:00000002 [ERR] Exception occurred while processing message. (d37e9c4d)
System.InvalidOperationException: IDX20803: Unable to obtain configuration from: '[PII is hidden]'. ---> System.IO.IOException: IDX20804: Unable to retrieve document from: '[PII is hidden]'. ---> System.Net.Http.HttpRequestException: No such host is known ---> System.Net.Sockets.SocketException: No such host is known
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
at System.Threading.Tasks.ValueTask`1.get_Result()
at System.Net.Http.HttpConnectionPool.CreateConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Threading.Tasks.ValueTask`1.get_Result()
at System.Net.Http.HttpConnectionPool.WaitForCreatedConnectionAsync(ValueTask`1 creationTask)
at System.Threading.Tasks.ValueTask`1.get_Result()
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel)
--- End of inner exception stack trace ---
at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel)
at Microsoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectConfigurationRetriever.GetAsync(String address, IDocumentRetriever retriever, CancellationToken cancel)
at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)
--- End of inner exception stack trace ---
at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
at IdentityServer4.AccessTokenValidation.IdentityServerAuthenticationHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
at Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(AuthorizationPolicy policy, HttpContext context)
at Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter.OnAuthorizationAsync(AuthorizationFilterContext context)
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()
at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()
at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at IdentityServer4.Hosting.IdentityServerMiddleware.Invoke(HttpContext context, IEndpointRouter router, IUserSession session, IEventService events)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at IdentityServer4.Hosting.BaseUrlMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.Invoke(HttpContext context)
2019-01-16T12:37:46.8441991+01:00 0HLJRKQIIHQUD:00000002 [ERR] An unhandled exception has occurred while executing the request. (48a46595)

 

regards Ingo

This issue is related to IdentityServer configuration. IdentityServer is attempting to retrieve configuration from a url that is unknown/unreachable.

Are you using the same flow as the default QuickApp implementation, and is identity server built into the application and not a separate service/app?
If the above is true make sure "https://test1.talk-ip.de" is the base address of your web application (i.e. you access the IIS version of your application using this URL) and the URL is accessible from your test environment. Ensure you're using the right ports and also pay attention to http vs https versions of the urls.

If the issue persist you can attach a stripped down version of your application with this behavior.
QuickApp PRO users also have an option of a remote desktop support.

Regards,
Eben Monney

Ingo has reacted to this post.
Ingo

We are using the default QuickApp implementation. I changed in appsettings.json following string:

"ApplicationUrl": "https://test1.talk-ip.de:443",

The site binding was done for http and https. In case http is called we do a automatic redirect to the https site.
We did now delete the http binding and also the url redirect. Unfortunately we still face the same issue. In my development environment everything is running as expected. Now I try to roll-out but face this issue. Unfortunately I am running out of ideas and have no idea how to move forward.
You wrote:
“QuickApp PRO users also have an option of a remote desktop support”
I even bought a license from you for QuickApp Ultimate., order number is #1438
You can download my application : see email.

We would highly appreciate if you can give us remote support in this issue.  Contact information see email.

 

Many thanks for your effort!

Can the DelayLoadMetadata be the cause of my problem?

https://stackoverflow.com/questions/37693516/unable-to-obtain-configuration-from-well-known-openid-configuration

If so, where do I set this option?

Regards

Ingo

The project you sent works well both in VS and IIS in our test environment.
So lets go through the following walk-through to determine if this is a result of a configuration in your environment.

  1. We need to enable viewing of PII logs so we can see more details about the error:
    Add the following line in ConfigureServices() to Startup.cs

        public void ConfigureServices(IServiceCollection services)
        {
                IdentityModelEventSource.ShowPII = true; //Add this line
                ....
    
    
  2. Run the application again to regenerate the error log this time with more details. See if the extra details is helpful in resolving your issue
  3. In your original error logs the primary issue is "No such host is known". This error indicates your configured base address is not reachable.
    - Cross check IIS IP and port binding to make sure they're all setup correctly and no firewall rules or conflicts that restrict access exists
    - Also make sure your https certificates are trusted by your system. If using self-signed certificates for testing copy them into your Trusted Root Certificate store, else they'll be rejected by the certificate validation procedure and authentication for urls will fail.
  4. Start the application and go to this url: "https://test1.talk-ip.de/.well-known/openid-configuration", you should see some json results
  5. If step 5 doesn't work try configuring IIS with a different binding (e.g. https://localhost:44312), then try the new discovery endpoint: e.g. https://localhost:44312/.well-known/openid-configuration. You should get json results

With regards to remote desktop support, I've sent you a mail on how to access that.

Regards,
Eben Monney

Ingo has reacted to this post.
Ingo

We have solved our problem. Thanks for your help.

 

Regards Ingo

Glad you got it working.

Eben Monney

Hello Ingo,

We have the same issue on production. Could you please let me know how you have solved your issue.

Thanks,

Venkat

Page 1 of 2Next