Welcome Guest Search | Active Topics | Sign In | Register

NeedClientCertificate event does not fire Options
Ananda Kumar
Posted: Thursday, September 14, 2017 11:15:25 AM
Rank: Newbie
Groups: Member

Joined: 9/14/2017
Posts: 4
Dear Support,

After upgrading to the latest version of EO.Total 2017.2.75.0 (EO assembly version 17.2.43.0), the WebView has issues in raising the NeedClientCertificate when there is no client authentification certificates imported into the current user's personal certificate store. However, the same was working fine with version 17.0.40.0.

To give little background, we have a windows application where the EO.WebBrowserControl is used to render a web application. The web application requires a client certificate, which is passed on the associated webview's NeedClientCertificate event. The client certificate is not imported into the certificate store for business requirements. This was working fine with version 17.0.40.0. After upgrading the assemblies to 17.2.43.0, we noticed that the NeedClientCertificate is no more called. After spending few hours of research, we identified that the new version of EO does not fire up the event, if the certificate store (current user) does not contain any certificates (client authentication certificates) imported under Personal/Certificates folder. By importing any client authentication certificate under 'Personal' folder of the current user, the NeedClientCertificate event is called.

The behaviour is reproducible with the test project TabbedBrowser. Just make sure that the current user's certificate store does not contain any client authentication certificates imported under Personal/Certificates folder.

Do let me know, if there are workaround to resolve this issue or when to expect a fix. On our customer's system there is no guarantee that any client authentication certificates imported and we certainly do not want to import the client authentification certificate into the certificate store.

Best Regards,
Ananda Kumar
Ananda Kumar
Posted: Monday, September 18, 2017 1:46:40 AM
Rank: Newbie
Groups: Member

Joined: 9/14/2017
Posts: 4
Hello,

is anyone working on the support request?

Best Regards,
Ananda
eo_support
Posted: Monday, September 18, 2017 9:45:32 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
Hi,

Sorry about the delay. We have looked into this issue. We will be able to provide a test build to you this week to see if it addresses the issue for you. If the test build does not address the issue, we may need further information/test code/files from you.

Thanks!
Ananda Kumar
Posted: Thursday, September 21, 2017 4:12:19 AM
Rank: Newbie
Groups: Member

Joined: 9/14/2017
Posts: 4
Hi,

When can we expect the test build?

Best Regards,
Ananda
eo_support
Posted: Thursday, September 21, 2017 2:42:49 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
Hi,

We have the test build ready. Please see your private message for the download location.

Thanks!
Ananda Kumar
Posted: Thursday, September 28, 2017 1:55:01 AM
Rank: Newbie
Groups: Member

Joined: 9/14/2017
Posts: 4
Hi,

The test build has fixed the issue. Thank you!

when will the stable release build include this bug fix and available for download under product downloads?

Best Regards,
Ananda
eo_support
Posted: Saturday, September 30, 2017 5:52:34 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
Hi,

This is just to let you know that we have posted the official build that contains the fix. You can download the new build from our download page.

Thanks!
Trivium
Posted: Wednesday, May 6, 2020 10:49:40 AM
Rank: Member
Groups: Member

Joined: 8/5/2015
Posts: 12
Hi,

We have recently upgraded EO Webrowser from 17.2.92 to 19.2.91.0.

NeedClientCertificate event doesn't fire if we don't stop then engine between LoadUrl call. We need to pass the different client certificate on every load/request for the same URL.

Certificate is cached and LoadUrl passes the same certificate. We don't want to stop and start the engine multiple times.
Is there any way to fire the NeedClientCertificate without stopping the engine?

Thanks!
eo_support
Posted: Wednesday, May 6, 2020 12:54:14 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
Hi,

There is no way for you to use different client certificate without restarting the engine. The client certificate must be cached because event when requesting a single page could involve multiple requests (such as requesting images and JavaScript files used by the page). If the client certificate is not cached, then NeedClientCertificate event would be triggered once for each of these requests, which can cause the user to be prompted 10s of times just to load a single page. Obviously that is not a workable solution.

Thanks!
Trivium
Posted: Wednesday, May 6, 2020 1:51:01 PM
Rank: Member
Groups: Member

Joined: 8/5/2015
Posts: 12
OK.

EO.WebBrowser.Request object can be passed via WebView.LoadRequest() method. Can EO.WebBrowser.Request class be extended to add client certificate like .net HttpWebrequest class.Then we can add x509Certificate in the Request object and pass to LoadRequest() method ?

Thanks!



eo_support wrote:
Hi,

There is no way for you to use different client certificate without restarting the engine. The client certificate must be cached because event when requesting a single page could involve multiple requests (such as requesting images and JavaScript files used by the page). If the client certificate is not cached, then NeedClientCertificate event would be triggered once for each of these requests, which can cause the user to be prompted 10s of times just to load a single page. Obviously that is not a workable solution.

Thanks!
eo_support
Posted: Wednesday, May 6, 2020 2:12:56 PM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
No. Unfortunately this is not how client certificate works. The certificates are exchanged during SSL handshake stage. This occurs when the client is trying to establish a connection to the server. On the other hand Request object occurs over HTTP/HTTPs, that is a higher layer in the protocol stack.
Trivium
Posted: Thursday, May 7, 2020 2:44:50 AM
Rank: Member
Groups: Member

Joined: 8/5/2015
Posts: 12
We are facing Out of memory exception in Windows 7 system after we upgrade EO Webrowser from 17.2.92 to 19.2.91.0. Particularly, when we stop the EO engine to clear the certificate cache between LoadUrl call. If we remove the code to stop the EO engine then we don't get this out of memory exception. But Certificates are cached. Also WebView.Reload(true) doesn't help. That is why we don't want to restart the EO engine multiple times and also refresh the certificate cache.
Can you suggest any solution?
Is there any cut off EO Browser version for Windows 7 systems?

Thanks!

eo_support wrote:
Hi,

There is no way for you to use different client certificate without restarting the engine. The client certificate must be cached because event when requesting a single page could involve multiple requests (such as requesting images and JavaScript files used by the page). If the client certificate is not cached, then NeedClientCertificate event would be triggered once for each of these requests, which can cause the user to be prompted 10s of times just to load a single page. Obviously that is not a workable solution.

Thanks!
eo_support
Posted: Thursday, May 7, 2020 7:58:02 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
Hi,

You will have to find out the root of out of memory error and resolve that. The current build (2020.1.31.0) does support Windows 7.

Thanks!
BenjaminSimpson1989
Posted: Wednesday, August 12, 2020 5:57:00 PM
Rank: Advanced Member
Groups: Member

Joined: 1/12/2015
Posts: 81
I'm trying to change which certificate gets sent to the server, but the NeedClientCertificate event never gets fired no matter which HTTPS URL I call. I am running build 20.0.81 on a Windows 7 machine in .NET Framework 4.7.2.
eo_support
Posted: Thursday, August 13, 2020 9:34:09 AM
Rank: Administration
Groups: Administration

Joined: 5/27/2007
Posts: 24,071
BenjaminSimpson1989 wrote:
I'm trying to change which certificate gets sent to the server, but the NeedClientCertificate event never gets fired no matter which HTTPS URL I call. I am running build 20.0.81 on a Windows 7 machine in .NET Framework 4.7.2.


HTTPs and client certificates are two different things. HTTPs implies a server certificate. However NeedClientCertificate will only be fired if the server is also configured to require a client certificate.


You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.